🌟 ❤️
作者:yueji0j1anke
首发于公号:剑客古月的安全屋
字数:3516
阅读时间: 35min
声明:请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,文章作者不为此承担任何责任。合法渗透,本文章内容纯属虚构,如遇巧合,纯属意外
目录
-
介绍
-
漏洞审计
-
总结
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了
做了源代码混淆,尝试找到key进行逆向
审计了一下,并没有明显的漏洞,cookie认证授权动态加密随机分配,密码被des加密进入数据库进行验证。
此时每一个php文件都基本加密,我懒得统一解密,直接路由上去一个个审计功能点。
1.sql注入点
寻找的搜索点会被转义,sqlmap专门用了转义脚本也未能发现注入点
东摸一下,西摸一下
发现在点击报告类型时会出现一个参数专门统计时间戳,且该时间戳可以被任意修改,sqlmap跑了一下,嘎嘎出洞
找到对应路由进行逆向,发现对应sql语句
并没有存在过滤,在同目录下进行相同逆向操作
发现另外sql注入两处
2.文件上传
白盒审计路由找了半天没找到文件上传点,直接逆向了几个大目录,全局搜索
找了半天,终于在uploadxx.php下找到了对应功能点
可以进行客户导入,抓包修改
成功上传回显路径,拼接路径进行访问
同理,在相关函数搜索下,找到了其他几个文件上传路由点。
0x04 总结
此次审计大概2h,比起常规的tp框架,这次的审计框架相对简单的多,框架大概自己做了自增删,本来还想审查框架漏洞,但基本上都做了加密混淆,遂放弃。