在 PHP 安全测试中最单调乏味的任务之一就是检查不安全的 PHP 配置项。作为一名 PHP 安全海报的继承者,我们创建了一个脚本用来帮助系统管理员如同安全专家一样尽可能快速且全面地评估 php.ini 和相关主题的状态。在下文中,该脚本被称作“PHP 安全配置项检查器”,或者 pcc。
php phpconfigcheck.php
。然后,添加参数 -a
以便更好的查看隐藏结果, -h
以 HTML 格式输出, -j
以 JSON 格式输出.PCC_OUTPUT_TYPE=text
或者 PCC_OUTPUT_TYPE=json
改变这个行为。
一些测试用例默认是被隐藏的,特别是skipped、ok和 unknown/untested这些。要显示全部结果,可以用 phpconfigcheck.php?showall=1
,但这并不适用于 JSON 输出,它默认返回全部结果。
在 WEB 模式下控制输出格式用 phpconfigcheck.php?format=...
, format
的值可以是 text
, html
或者 json
中的一个,例如: phpconfigcheck.php?format=text
。 format
参数优先于 PCC_OUTPUT_TYPE。
大多数情况下,最好是自己来关注与安全性相关的问题比如PHP的配置。脚本已实现下列保障措施:
touch phpconfigcheck.php
或者将脚本文件再次复制到你的服务器(例如通过SCP)来重新进行mtime检查。可以通过设置环境量: PCC_DISABLE_MTIME=1
,比如在apache的.htaccess
文件中设置SetEnv PCC_DISABLE_MTIME 1
来禁用mtime检查。PCC_ALLOW_IP
中添加IP地址或者通配符表达式的方式来访问脚本,比如在.htaccess
文件中设置SetEnv PCC_ALLOW_IP 10.0.0.*
。你还可以选择通过SSH端口转发访问您的web服务器, 比如 ssh -D
或者 ssh -L
。可以通过github下载第一个完整的开发版: https://github.com/sektioneins/pcc
如果有好的建议或者遇到bug请给我们提issue:
HTML输出的列表是根据问题严重性排序的,通过颜色代码的形式列出了所有建议。列表顶部的状态行会显示问题的数量。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。