基本介绍
在应用需要调用一些外部程序去处理内容的情况下就会用到一些执行系统命令的函数,例如:PHP中的system、exec、shell_exec等,当用户可以控制命令执行函数中的参数时将可注入恶意系统命令到正常命令中即可造成命令执行攻击,测试中如果没有对参数(例如:cmd=、command、excute=等)进行过滤就可以直接造成命令执行漏洞或配合绕过及命令连接符(&、|、||、;)为命令连接符使用,用户通过浏览器 提交执行命令由于服务器端没有针对执行函数做过滤,导致没有指定绝对路径的情况下就执行命令)等进行命令执行漏洞测试
测试过程
攻击者发现疑似存在命令执行的漏洞链接,添加命令执行payload确认漏洞,如下图所示:
漏洞示例
首页-个人中心-系统设置-断网配置
{"name":"test.scanv","ip":"x.x.x.x","port":"1000","type":"huawei","connectMethod":"telnet","userna