Suhosin(php的保护工具)

1、什么是Suhosin?

Suhosin是一个PHP程序的保护系统。它的设计初衷是为了保护服务器和用户抵御PHP程序和PHP核心中(看了下我的空间服务商的phpinfo,不知道为什么没有实用内核补丁…),已知或者未知的缺陷(感觉挺实用的,可以抵御一些小攻击)。Suhosin有两 个独立的部分,使用时可以分开使用或者联合使用。(既然空间商没用内核补丁,偶就不用啦~~)第一部分是一个用于PHP核心的补丁,它能抵御缓冲区溢出或者格式化串的弱点(这个必须的!);第二部分是一个强大的 PHP扩展(扩展模式挺好的,安装方便…),包含其他所有的保护措施

2.各种特性

  1. 模拟器保护模式
  2. 增加两个函数sha256()和sha256_file()到PHP核心中(表示还不知道这两个函数是做什么的…)
  3. 所有平台,加入CRYPT_BLOWFISH到函数crypt()中
  4. 打开对phpinfo()页的透明保护
  5. SQL数据库用户保护(测试阶段)

3.运行时保护

  1.  加密cookies
  2. 防止不同种类的包含漏洞(不允许远程URL包含(黑/白名单);不允许包含已上传的文件;防止目录穿越攻击)
  3. 允许禁止preg_replace() /e 修改选项
  4. 允许禁止eval()函数
  5. 通过配置一个最大执行深度,来防止无穷递归
  6. 支持每个vhost配置黑白名单
  7. 为代码执行提供分离的函数黑白名单
  8. 防止HTTP响应拆分漏洞
  9. 防止脚本控制memory_limit选项
  10. 保护PHP的superglobals,对于函数extract() import_request_vars()
  11. 防止mail()函数的新行攻击
  12. 防止preg_replace()的攻击

4.Session 保护

  1. 加密session数据
  2. 防止session被劫持
  3. 防止超长的session id
  4. 防止恶意的session id

5.过滤特性

6.日志特性(略)

7.更多的强大功能等着里去发掘哦~~!

安装方法

!/bin/sh
#首先下载
wget -c http://download.suhosin.org/suhosin-0.9.33.tgz
tar zxvf suhosin-0.9.33.tgz
cd suhosin-0.9.33
#这个视你的安装路径来
/usr/local/php/bin/phpize
#
#这个同上,也是视安装路径来的
./configure -with-php-config=/usr/local/php/bin/php-config
#
make
cd modules
#
cp suhosin.so extension_dir/
#vim 编辑php.ini 找到 extension_dir,将上面的 extension_dir 替换为找到的extension_dir的“=”后面的路径
#注意路径后面的斜杠!
#然后找到许多“;extension=”的那部分,添加:
extension=suhosin.so
#再到最底部加入“suhosin.executor.disable_eval = on”来禁止eval函数
#然后:wq保存!
#再输入:
service httpd restart
#重启 Apache 再看看phpinfo,是不是在Zend Engine那栏出现了
#with Suhosin v0.9.33
#OK,如果出现了,那么就代表着安装完成

  

以上参考

http://www.shenqhy.com/using-the-php-suhosin-protect-your-environment-install-suhosin.html

http://demon.tw/software/suhosin-php.html

http://blog.ihipop.info/2011/03/2188.html

官方 https://suhosin.org/stories/index.html

原文地址:https://www.cnblogs.com/chenkg/p/10183661.html