美文网首页LaravelPHP / Laravel / 全栈PHP开发者大本营
[PHP 安全] pcc —— PHP 安全配置检测工具

[PHP 安全] pcc —— PHP 安全配置检测工具

作者: summerbluet | 来源:发表于2019-04-18 16:36 被阅读5次
image

文章转自:https://learnku.com/php/t/27016

背景

在 PHP 安全测试中最单调乏味的任务之一就是检查不安全的 PHP 配置项。作为一名 PHP 安全海报的继承者,我们创建了一个脚本用来帮助系统管理员如同安全专家一样尽可能快速且全面地评估 php.ini 和相关主题的状态。在下文中,该脚本被称作“PHP 安全配置项检查器”,或者 pcc

https://github.com/sektioneins/pcc

概念

  • 一个便于分发的单文件
  • 有对每个安全相关的 ini 条目的简单测试
  • 包含一些其他测试 - 但不太复杂
  • 兼容 PHP >= 5.4, 或者 >= 5.0
  • 没有复杂/过度设计的代码,例如没有类/接口,测试框架,类库等等。它应该第一眼看上去是显而易见的-甚至对于新手-这个工具怎么使用能用来做什么。
  • 没有(或者少量的)依赖

使用 / 安装

  • CLI:简单调用 php phpconfigcheck.php。然后,添加参数 -a 以便更好的查看隐藏结果, -h 以 HTML 格式输出, -j 以 JSON 格式输出.

  • WEB: 复制这个脚本文件到你的服务器上的任意一个可访问目录,比如 root 目录。参见下面的“防护措施”。

    在非 CLI 模式下默认输出 HTML 格式。可以通过修改设置环境变量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=textformat 参数优先于 PCC_OUTPUT_TYPE。

保障措施

大多数情况下,最好是自己来关注与安全性相关的问题比如PHP的配置。脚本已实现下列保障措施:

  • mtime检查:脚本在非CLI环境中只能工作两天。可以通过touch phpconfigcheck.php或者将脚本文件再次复制到你的服务器(例如通过SCP)来重新进行mtime检查。可以通过设置环境量: PCC_DISABLE_MTIME=1,比如在apache的.htaccess文件中设置SetEnv PCC_DISABLE_MTIME 1来禁用mtime检查。

  • 来源IP检查:默认情况下,只有localhost (127.0.0.1 和 ::1)才能访问这个脚本。其他主机可以通过在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输出的列表是根据问题严重性排序的,通过颜色代码的形式列出了所有建议。列表顶部的状态行会显示问题的数量。

PHP

注意

这个工具只能用来支持你搭建一个安全的PHP环境,做不了其他事。你的设置、软件或任何相关的配置可能仍然是脆弱的,即使该工具的输出表明情况并非如此。

文章转自:https://learnku.com/php/t/27016

更多文章:https://learnku.com/laravel/c/translations

相关文章

  • [PHP 安全] pcc —— PHP 安全配置检测工具

    文章转自:https://learnku.com/php/t/27016 背景 在 PHP 安全测试中最单调乏味的...

  • php.ini配置文件

    文章来自于:php.ini配置文件 开启php安全模式 php安全模式是个非常重要的php内嵌的安全机制,能够控制...

  • 简单的php优化

    PHP优化: A. php. ini安全配置,禁掉危险的函数 disable_functions(exec, sy...

  • php中防止sql注入的方法

    一、在服务器端配置 安全,PHP代码编写是一方面,PHP的配置更是非常关键。 我们php手手工安装的,php的默认...

  • PHP.INI安全配置

    参考PHP.INI安全配置 在网站上线之前记得在php.ini文件中设置关闭错误提示在php.ini文件的disp...

  • PHP 资源列表

    Awesome PHP 一个PHP资源列表,内容包括:库、框架、模板、安全、代码分析、日志、第三方库、配置工具、W...

  • php开发环境安装和使用

    wamp自定义环境安装 apache+php+mysql+ 下载php核心包 NTS是非线程安全,TS是线程安全,...

  • 推荐Github上优秀的编程文档

    awesome-php-cn PHP 资源大全中文版,库、框架、模板、安全、代码分析、日志、第三方库、配置工具、W...

  • 从0到1学习网络安全 【目录】

    简介 1.什么是网络安全2.学习网络安全应该具备哪些专业 PHP 基础篇 1.【PHP基础-简介】2.【PHP基础...

  • PHP安全

    一、SQL注入攻击攻击者把SQL命令插入到Web表单的输入域或页面请求的字符串,欺骗服务器执行恶意的SQL命令。1...

网友评论

    本文标题:[PHP 安全] pcc —— PHP 安全配置检测工具

    本文链接:https://www.haomeiwen.com/subject/xhptgqtx.html