M0nk3y's Blog

MacOS 下配置PHP代码审计环境,PHP调试学习

Word count: 382Reading time: 1 min
2020/09/11 Share

[toc]

环境搭建

环境配置参考文章:https://www.sqlsec.com/2020/07/macphp.html#toc-heading-2

所需App:

MAMP PRO ,我是在Google 里找的Cracked Version

PHPStorm / Vscode

MAMP 中的 php.ini 设置

在切换php版本时需添加如下内容,免得debug 环境出错。

1
2
3
4
5
6
7
xdebug.remote_enable=1
xdebug.remote_host=localhost
xdebug.remote_port=9000
xdebug.remote_autostart=1
xdebug.profiler_enable=0
xdebug.profiler_output_dir="/Applications/MAMP/tmp"
xdebug.idekey="my_key"

出现下图的情况,说明Debug 配置正常。

image-20200911203438853


推荐将整个代码审计的路径设置成Project, 比如: xxx/www/xxx

然后MAMP 和 PhpStorm 的设置要一致。

image-20200911204652392

单个文件调试

测试Debug 是否成功:在第四行,变量字符串拼接的地方,下个断点进行调试。结果如图。

image-20200911205830698

整个文件夹(网站目录)调试

image-20200911210726371

关键是选择下面的Server 即可。

image-20200911210857642

PHPMyadmin 需要php 5.5+ , cms 安装时,数据库在phpmyadmin 中创建即可。

这里以国光师傅文章的cms,后台语言设置GetShell,来测试。

https://www.sqlsec.com/2020/01/sinsiu.html#toc-heading-36

在 149 行下断点调试

可直接在$lang_text 中修改值即可进行调试。

Burp Suite 抓包的请求包:

image-20200911220557034

文件监控

image-20200911213334993

MySQL 监控

image-20200911214143396

需要修改config.ini 中的数据库为之前cms 创建的数据库

1
2
3
4
5
6
7
[dbconf]
host=localhost
port=8889
user=root
password=root
db_name=test
charset=utf8

image-20200911214903921

使用DataGrip 连接MySQL 时的监控日志

image-20200911215237610

DataGrip 连接数据库

image-20200911215449398

image-20200911215526972

image-20200911215342544

VsCode 配置

image-20200911234023142

VScode 单步调试。

image-20200911233946444

终于会调试了~

下一步就是去完整代码审计一下这个CMS~

Author:m0nk3y

原文链接:https://hack-for.fun/4fd81e40.html

发表日期:September 11th 2020, 8:34:13 pm

更新日期:September 11th 2020, 11:56:23 pm

版权声明:原创文章转载时请注明出处

CATALOG
  1. 1. 环境搭建
  2. 2. 单个文件调试
  3. 3. 整个文件夹(网站目录)调试
  4. 4. 文件监控
  5. 5. MySQL 监控
    1. 5.1. DataGrip 连接数据库
  6. 6. VsCode 配置