黄聪:PHP 防护XSS,SQL,代码执行,文件包含等多种高危漏洞

版本:v1.1
更新时间:2013-05-25
更新内容:优化性能
功能说明

可以有效防护XSS,sql注射,代码执行,文件包含等多种高危漏洞。

使用方法:

  1. 将waf.php传到要包含的文件的目录
  2. 在页面中加入防护,有两种做法,根据情况二选一即可:

a).在所需要防护的页面加入代码就可以做到页面防注入、跨站

复制代码

  1. require_once(‘waf.php‘);

如果想整站防注,就在网站的一个公用文件中,如数据库链接文件config.inc.php,来调用本代码。常用php系统添加文件

PHPCMS V9 \phpcms\base.php

PHPWIND8.7 \data\sql_config.php

DEDECMS5.7 \data\common.inc.php

DiscuzX2   \config\config_global.php

Wordpress   \wp-config.php

Metinfo   \include\head.php

b).在每个文件最前加上代码具体做法是:在php.ini中找到 auto_prepent_file并修改为:

复制代码

  1. Automatically add files before or after any PHP document;
  2. auto_prepend_file = waf.php路径;

补丁文件下载链接:

下载地址

php代码补丁php_patch.zip (3 K)

asp代码补丁asp.zip (2 K)

时间: 2024-11-21 02:20:03

黄聪:PHP 防护XSS,SQL,代码执行,文件包含等多种高危漏洞的相关文章

可以有效防护XSS,sql注射,代码执行,文件包含等多种高危漏洞。

http://bbs.aliyun.com/read/137391.html <?php /** * 云体检通用漏洞防护补丁v1.1 * 更新时间:2013-05-25 * 功能说明:防护XSS,SQL,代码执行,文件包含等多种高危漏洞 */ $url_arr = array( 'xss' => "\\=\\+\\/v(?:8|9|\\+|\\/)|\\%0acontent\\-(?:id|location|type|transfer\\-encoding)", ); $a

php检查漏洞防护补丁-防护XSS,SQL,文件包含等多种高危漏洞

/** * 通用漏洞防护补丁 * 功能说明:防护XSS,SQL,代码执行,文件包含等多种高危漏洞 * Class CheckRequestServer */ class CheckRequestServer { /** * 过滤提交数据正则 * @var array */ protected static $filterUrl = [ 'xss' => "\\=\\+\\/v(?:8|9|\\+|\\/)|\\%0acontent\\-(?:id|location|type|transfe

代码注入/文件包含 弹出Meterpreter

主要通过 msf 中 exploit 的 web_delivery 模块来实现此功能 0x01 前提背景 目标设备存在远程文件包含漏洞或者命令注入漏洞,想在目标设备上加载webshell,但不想在目标设备硬盘上留下任何webshell文件信息 解决思路:让目标设备从远端服务器加载webshell代码至内存执行 0x02 实现方法 使用 msf 中 exploit 的 web_delivery 模块: 此模块支持在本地监听一个端口,别人一旦访问该端口就会将该端口内的文件读取至本地执行(把websh

代码执行

其实,代码执行是一个很广阔的概念. 如,SQL注入(SQL代码执行),eval/assert执行(脚本代码执行),xss脚本攻击(js代码执行/html代码执行),而system/exec/shell_ exec/ passthru执行,则应属于命令执行的范畴了. 1. SQL代码执行 执行SQL语句:select host,user,password from mysql.user where user='root'; MySQL返回结果如下: +-----------+------+----

如何根据动态SQL代码自动生成DTO

当前的状况 一般做数据库相关开发, 除非学习, 否则很少有人愿意直接使用JDBC.本来Java代码就比较啰嗦了,而直接用JDBC写代码之啰嗦简直有些令人发狂!所以在实际开发过程中,我们通常都会使用一些框架/库来帮助我们操作数据库.而且开源市场上的选择也比较多,就我个人接触到的有:Hibernate,MyBatis,JdbcTemplate,DbUtils,ActiveRecord,JavaLite等等. 这些框架都能大幅的提高开发效率,对于一些基本CRUD操作来说,虽然各有差异,但总的来说基本是

SQL Server 执行计划缓存

原文:SQL Server 执行计划缓存 标签:SQL SERVER/MSSQL SERVER/数据库/DBA/内存池/缓冲区 概述 了解执行计划对数据库性能分析很重要,其中涉及到了语句性能分析与存储,这也是写这篇文章的目的,在了解执行计划之前先要了解一些基础知识,所以文章前面会讲一些概念,学起来会比较枯燥,但是这些基础知识非常重要. 目录 概述 基础概念 怎样缓存执行计划 SQL Server自动删除执行计划 重新编译执行计划 测试 执行计划相关系统视图 手动清空缓存执行计划 测试索引更改对执

黄聪:如何用代码设置控制自己网站的网页在360浏览器打开时强制优先使用极速模式,而非兼容模式

最近用360浏览器访问自己的网站,发现都是被优先选用兼容模式打开,这使得网站很难看.为了让360浏览器打开网站的时候优先试用极速模式,找了一下官方论坛,发现了解决方案. 在head标签中添加一行代码: <html> <head> <meta name="renderer" content="webkit|ie-comp|ie-stand"> </head> <body> </body> <

SQL里执行CLR c#代码

这里只说一个重点: 1.直接在sql里执行clr代码的时候,sql还是会报错 说没有启用 clr 执行以下代码才会起作用 EXEC sp_configure 'clr enabled', 1;  RECONFIGURE WITH OVERRIDE; 2.sql2008 只能识别.net 3.5的 参考链接: http://zhoufoxcn.blog.51cto.com/792419/859245/ https://support.microsoft.com/en-us/help/2120850

Ecshop 2.x_3.x SQL注入和代码执行漏洞复现和分析

0x00 前言 问题发生在user.php的的显示函数,模版变量可控,导致注入,配合注入可达到远程代码执行 0x01 漏洞分析 1.SQL注入 先看user.php的$ back_act变量来源于HTTP_REFERER,我们可控. 分配函数用于在模版变量里赋值 再看显示函数, 读取user_passport.dwt模版文件内容,显示解析变量后的HTML内容,用_echash做分割,得到$?然后交给isnert_mod处理,由于_echash是默认的,不是随机生成的,所以$ VAL内容可随意控制