freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

代码审计-php篇之某CRM系统多处sql注入
2024-05-08 17:15:47

声明:请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,文章作者不为此承担任何责任。合法渗透,本文章内容纯属虚构,如遇巧合,纯属意外

0x01 大体介绍

经历了.net审计,最近开始找php站进行练手,php审计点要多一些,大差不差,都是围绕关键词来展开。


0x02 工具配备

我这里本地环境准备的是sexy,phpstorm以及phpstudy

checklist如下

sql注入->    select   mysqli  mysqluery   insert

文件上传->   $_FILES type="file" upload

xss   ->   print echo sprintf var_dump

文件包含 ->   require include 等四个函数

代码执行 -> eval assert call_user_func preg_replace

命令执行 -> system exec shell_exec popen proc_open

变量覆盖 —> parse_str() extract() $$

反序列化 -> serialize() construct destruct

ssrf   ->   file_get_contents

文件删除 ->   unlink

变量寻找   ->   $_GET $_POST $_FILES $_REQUEST


0x03 审计过程

php系统首先需要看看路由情况

庆幸的是,这里有readme,可以直接了解大概、

大致路由就是 xxx(controller层)/controller(子层)/函数


老规矩,审计登录接口练练手感

结果一来就给我gg了

1715159609_663b42396f738a445999d.png!small?1715159610903

做了源代码混淆,尝试找到key进行逆向

1715159616_663b42408663b06f7900c.png!small?1715159618417

审计了一下,并没有明显的漏洞,cookie认证授权动态加密随机分配,密码被des加密进入数据库进行验证。

此时每一个php文件都基本加密,我懒得统一解密,直接路由上去一个个审计功能点。

1.sql注入点

寻找的搜索点会被转义,sqlmap专门用了转义脚本也未能发现注入点

1715159622_663b4246e2dccba71110d.png!small?1715159624080

东摸一下,西摸一下

1715159649_663b42610e87a282fa0f0.png!small?1715159650276

发现在点击报告类型时会出现一个参数专门统计时间戳,且该时间戳可以被任意修改,sqlmap跑了一下,嘎嘎出洞

1715159628_663b424c67978d52684bc.png!small

找到对应路由进行逆向,发现对应sql语句

1715159638_663b42564e4cddebb72bc.png!small?1715159640118

并没有存在过滤,在同目录下进行相同逆向操作

发现另外sql注入两处


2.文件上传

白盒审计路由找了半天没找到文件上传点,直接逆向了几个大目录,全局搜索

1715159658_663b426a06731f570bd13.png!small?1715159659167

找了半天,终于在uploadxx.php下找到了对应功能点

1715159670_663b427612cd5ebdd337e.png!small?1715159671277

可以进行客户导入,抓包修改

1715159676_663b427c322581c40ec1d.png!small?1715159677428

成功上传回显路径,拼接路径进行访问

1715159682_663b428247350cda5ed1f.png!small?1715159684509

同理,在相关函数搜索下,找到了其他几个文件上传路由点。


0x04 总结

此次审计大概2h,比起常规的tp框架,这次的审计框架相对简单的多,框架大概自己做了自增删,本来还想审查框架漏洞,但基本上都做了加密混淆,遂放弃。

作者:yueji0j1anke

# web安全 # 代码审计
免责声明
1.一般免责声明:本文所提供的技术信息仅供参考,不构成任何专业建议。读者应根据自身情况谨慎使用且应遵守《中华人民共和国网络安全法》,作者及发布平台不对因使用本文信息而导致的任何直接或间接责任或损失负责。
2. 适用性声明:文中技术内容可能不适用于所有情况或系统,在实际应用前请充分测试和评估。若因使用不当造成的任何问题,相关方不承担责任。
3. 更新声明:技术发展迅速,文章内容可能存在滞后性。读者需自行判断信息的时效性,因依据过时内容产生的后果,作者及发布平台不承担责任。
本文为 独立观点,未经授权禁止转载。
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf 客服小蜜蜂(微信:freebee1024)
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者
文章目录