代码执行
脚本语言:php、python、java等
产生:web源码、thinkphp、eyoucms、wordpress
中间件平台:apache、tomcat、redis
其他环境:php-cgi、jenkins-CI、java RMI
检测
白盒
代码审计
黑盒
漏洞扫描工具、公开漏洞、手工看参数值和功能点:如?echo 123如果返回123则是php脚本
防御
敏感函数禁用、变量过滤或固定、WAF产品
命令执行
产生
1.web源码:Nexus、Webmin、ElasticSerach
2.中间件平台:Weblogic、Apache
3.其他环境:Postgresql、Samba、Supervisord
system函数:执行外部程序并输出资料
漏洞产生情况
1.现实应用(实例)
根据网站不同功能的命令;前端验证则抓包,修改参数;管道符执行多条命令,分号执行多条命令
cat<xx.php的<是输入重定向、tac目的是反向连接文件代码分析;得到的代码在线执行,得到传递的参数名,注入
反引号和exec_shell相同可以执行系统命令;echo `$_request[a]` echo输出的反引号里的内容会被当作命令执行,强行执行(反引号的作用)
公开漏洞:vulhub
不同层面漏洞:工具跑、poc验证 、xp利用
2.网站代码
漏洞形成条件:传参修改变量值、可控变量、漏洞函数
没有可控变量就没有漏洞,可控变量是漏洞的成因
漏洞成因 (将字符串转化为代码执行的函数)
php:eval,assert,call_user_func,call_user_func_array,array_map
python:exec
java:OGNL,SpEL等
命令执行函数:system,exec,shell_exec,passthru,pcntl_exec,反引号
标签:命令,php,exec,漏洞,代码执行,RCE,执行 From: https://www.cnblogs.com/BWTY/p/17245014.html