RCE代码执行和命令执行
代码执行
脚本语言: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,反引号
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术