XDebug的配置和使用

Xdebug是一个开放源代码的PHP程序调试工具
可以用来跟踪,调试和分析PHP程序的运行状况
功能强大的神器,对审计有非常大的帮助

日志:
xdebug.trace_output_dir
目录追踪输出目录

xdebug.trace_output_name

日志文件名,xdebug提供了一系列的标识符,生成相应格式的文件名,具体请参考官网

xdebug.trace_options

记录添加到文件中方式:1=追加(如果存在该文件).0(default)=覆盖(如果存在该文件)

显示数据:

xdebug.collect_params

非零值=控制function的参数显示选项
0=不显示
1=参数类型,值(例如:array(9))
2=同上1,只是在CLI模式下略有区别
3=所有变量内容
4=所有变量内容和变量名(例如:array(0=>9))

xdebug.collect_return

1=显示function返回值.Default 0不显示

xdebug.collect_vars

1=显示当前作用域使用了哪些变量,显示变量名,该选项不会记录变量的值
xdebug.collect_assignments
1=添加一行显示变量赋值(若为1,形如$a=1;这类Assignment Expression会在trace文件里显示)

格式:

xdebug.trace_format

日志追踪输出目录
0=人可读 从左到右每列分别表示:时间点,内存,内存差(需要设置xdebug.show_mem_delta=1),等级,函数名,函数参数(需要设置xdebug.collect_params=1,只要是非零),当前代码行所在文件名,行号。
1=机器可读[1] 需要借助第三方app,例如:xdebug trace file parser 或者 xdebug trace viewer
2=html格式 即table,用browser打开,显示table

行为:
追踪方式有2种,一种是自动追踪,所有PHP脚本运行时,都会产生trace文件;另一种是触发方式追踪。

xdebug.auto_trace

1=打开自动追踪

xdebug.trace_enable_trigger 

注:该特性只在2.2版本才能设置

1=使用XDEBUG_TRACE GET/POST 触发追踪,或者通过设置cookie XDEBUG_TRACE,为了避免每次请求时,都会生成相应trace追踪文件,你需要把auto_trace设置为0

其他配置选项请自行研究

XDebug的配置和使用_第1张图片

审计方法:


XDebug的配置和使用_第2张图片
XDebug的配置和使用_第3张图片

你可能感兴趣的:(PHP审计)