#案列演示
打开墨者靶场,黑盒#命令注入执行分析
这个功能点有这么个功能,进行类似的像我们电脑上ping命令,这相当于就满足了命令,明显可能出现命令执行漏洞,可控变量和漏洞函数都存在。第一要去分析是什么操作系统,
通过查看数据包分析出来了是linux操作系统,然后如果输入字符串的话网站会提示格式正确,所以网站还有一个检测输入的是不是ip地址,
这时候我们可以使用Linux执行多条的命令的符号 | 用这个符号连接起来ip再去操作
这次的提示有一个组织测页面更多对话框,这就是个前端验证,就可以右键源代码去分析,
解决方法:1.浏览器设置禁用本地js 2.将网站源代码复制,将验证的js代码删除3.抓包工具修改数据包(在数据包内修改执行语句,就不会被前端检测)
这是个js代码,这个检测不是服务端的检测,onsubmit鼠标事件之后,就会返回f-check-i开始检测ip,我们把它禁用掉就会了,这个可以抓包,我们打开burp,然后输入一个正常ip127.0.0.1,抓住数据包之后ip后面加上|ls,这个命令是查看所在文件夹目录
就出现了,然后我们直接读取文件里面的内容,就能知道要提交什么,
|cat<文件名字,语句是这样的,有时候空格不行可以换成%20试试,可能网站有检测就换换别的,刚刚老师用ls 文件名和ls%20文件名,就没有显示出来。
#墨者靶场,白盒代码及命令执行,
打开靶场
在网上随便找一个php在线运行,然后运行一下这个代码,运行一下看看,把eval去掉,去掉相应的括号。然后echo输出一下,把它运行看一下,
变量request,是接受获取POST或GET方式提交的数据、COOKIE信息,同时可以在代码里看出来传参数值是a。然后直接
然后在进行一个key的读取就能获取到完成靶场的东西了。
这里就有一个问题,为什么用的ls,tac这种Linux的系统命令,是因为echo在Linux的里面的用法,echo `字符串` 字符串是系统命令的的话就会执行,实列如下图。
#墨者靶场,黑盒rce漏洞检测——公开漏洞
打开测试靶场
那个webmin是啥啊,网上搜一下,网上说是linux的系统管理工具,那直接网上搜一下漏洞,看看有没有西瓜吃,
有, 漏洞复现里面就用post数据发送给数据包就行
然后在回到靶场解密,随便输入个账户密码登陆抓住数据包之后,
根据网站的提示的数据包,更改一下地址然后修改下面的数据之后,直接发送,就会显示出来所在文件夹目录
然后选择只需要找到答案就行,根据靶场的目标上写着在网站的根目录,所以就是把ls换成ls/就可以
然后利用cat读取,因为是根目录,所以语句是cat /key.txt,然后就可以看到了