XDebug+Sublime Text编辑器简单搭建PHP代码审计环境

本文主要介绍使用文本编辑器Sublime Text2Sublime Text3也可以)和XDebug的配置,从而方便对代码的阅读审计。
是最近代码审计学习中学到的,顺便mark一下。还是有点懒,具体的插件安装看一下链接吧,此处不再赘述,只提关键地方。

0x01:Sublime Text2

下载:

点击下载 Sublime Text2

注册激活:

----- BEGIN LICENSE -----  
Andrew Weber  
Single User License  
EA7E-855605  
813A03DD 5E4AD9E6 6C0EEB94 BC99798F  
942194A6 02396E98 E62C9979 4BB979FE  
91424C9D A45400BF F6747D88 2FB88078  
90F5CC94 1CDC92DC 8457107A F151657B  
1D22E383 A997F016 42397640 33F41CFC  
E1D0AE85 A0BBD039 0E9C8D55 E1B89D5D  
5CDB7036 E56DE1C0 EFCC0840 650CD3A6  
B98FC99C 8FAC73EE D2B95564 DF450523  
------ END LICENSE ------

中文汉化:

下载文件解压后放进安装目录Sublime Text 2\Packages下面即可。

运行软件,依次点击菜单Preferneces -> Browse Packages,你当前打开的目录是Packages文件夹,在其中有个Default文件夹,打开,然后把下载下来的中文包中的Default文件夹中的那 9 个文件复制到你刚才打开的 Default 文件夹中,覆盖原来的同名文件。

安装 Package Control:

只有安装了包控制器(package control)才能安装各种神队友的插件。首先按Ctrl+~呼出命令控制器。

然后将下面的命令复制到命令栏中后按回车。看到成功的提示重启就能看到Package Control了。

命令如下:

import urllib2,os; 
pf='Package Control.sublime-package'; ipp=sublime.installed_packages_path(); 
os.makedirs(ipp) if not os.path.exists(ipp) else None;
urllib2.install_opener(urllib2.build_opener(urllib2.ProxyHandler())); 
open(os.path.join(ipp,pf),'wb').write(urllib2.urlopen('http://sublime.wbond.net/'+pf.replace('','%20')).read()); 
print('Please restart Sublime Text to finish installation')

安装插件 ConvertToUTF8 解决中文乱码:

Ctrl+Shift+P打开命令行模式,执行Install Package,然后搜索安装ConvertToUTF8插件即可。

安装 CTags 插件:

参见文章:Windows 平台(Win8 可用)安装 CTags 完整步骤

通过右键Navigate to Definition实现定位函数的位置:

1

实现 PHP 编译功能(版本 2 和 3 都适合):

参见文章:

使用 Sublime Text 3 打造 PHP 开发 IDE 教程

2

0x02:XDebug 配置:

Xdebug是一个开放源代码的 PHP 程序调试器(即一个Debug工具)可以用来跟踪,调试和分析PHP程序的运行状况。

参见文章:安装配置 Xdebug 模块详解

推荐使用PHPStudy,里面已附带XDebug文件,只需在php.ini文件中找到相应的注释去掉即可。

配置实例

以下是自己的一次配置:

[XDebug]
xdebug.profiler_output_dir="E:\web\phpstudy\tmp\xdebug"

xdebug.trace_output_dir="E:\web\phpstudy\tmp\xdebug"

xdebug.auto_trace = 1

xdebug.trace_format = 0

xdebug.trace_options = 0

xdebug.collect_params = 4

xdebug.collect_return = 1

xdebug.collect_vars = 1

xdebug.collect_assignments = 1

xdebug.profiler_append = 0

xdebug.profiler_enable = 1

xdebug.profiler_enable_trigger = 0

xdebug.profiler_output_name = "cache.out.%t-%s"

xdebug.remote_enable = 1

xdebug.remote_handler = "dbgp"

xdebug.remote_host = "127.0.0.1"

zend_extension="E:\web\phpstudy\php\php-5.4.45\ext\php_xdebug.dll"

配置完成后,通过访问页面来追踪执行的函数和查看出相关操作:

3

再配合Firefox BurpSuite等常用工具,开始自己的代码审计之旅~

2 条评论

发表评论

*