function fn_safe($str_string) { //直接剔除 $_arr_dangerChars = array( "|", ";", "$", "@", "+", "\t", "\r", "\n", ",", "(", ")", PHP_EOL //特殊字符 ); //正则剔除 $_arr_dangerRegs = array( /* -------- 跨站 --------*/ //html 标签 "/<(script|frame|iframe|bgsound|link|object|applet|embed|blink|style|layer|ilayer|base|meta)\s+\S*>/i", //html 属性 "/on(afterprint|beforeprint|beforeunload|error|haschange|load|message|offline|online|pagehide|pageshow|popstate|redo|resize|storage|undo|unload|blur|change|contextmenu|focus|formchange|forminput|input|invalid|reset|select|submit|keydown|keypress|keyup|click|dblclick|drag|dragend|dragenter|dragleave|dragover|dragstart|drop|mousedown|mousemove|mouseout|mouseover|mouseup|mousewheel|scroll|abort|canplay|canplaythrough|durationchange|emptied|ended|error|loadeddata|loadedmetadata|loadstart|pause|play|playing|progress|ratechange|readystatechange|seeked|seeking|stalled|suspend|timeupdate|volumechange|waiting)\s*=\s*(\"|')?\S*(\"|')?/i", //html 属性包含脚本 "/\w+\s*=\s*(\"|')?(java|vb)script:\S*(\"|')?/i", //js 对象 "/(document|location)\s*\.\s*\S*/i", //js 函数 "/(eval|alert|prompt|msgbox)\s*\(.*\)/i", //css "/expression\s*:\s*\S*/i", /* -------- sql 注入 --------*/ //显示 数据库 | 表 | 索引 | 字段 "/show\s+(databases|tables|index|columns)/i", //创建 数据库 | 表 | 索引 | 视图 | 存储过程 | 存储过程 "/create\s+(database|table|(unique\s+)?index|view|procedure|proc)/i", //更新 数据库 | 表 "/alter\s+(database|table)/i", //丢弃 数据库 | 表 | 索引 | 视图 | 字段 "/drop\s+(database|table|index|view|column)/i", //备份 数据库 | 日志 "/backup\s+(database|log)/i", //初始化 表 "/truncate\s+table/i", //替换 视图 "/replace\s+view/i", //创建 | 更改 字段 "/(add|change)\s+column/i", //选择 | 更新 | 删除 记录 "/(select|update|delete)\s+\S*\s+from/i", //插入 记录 | 选择到文件 "/insert\s+into/i", //sql 函数 "/load_file\s*\(.*\)/i", //sql 其他 "/(outfile|infile)\s+(\"|')?\S*(\"|')/i", ); $_str_return = $str_string; //$_str_return = urlencode($_str_return); foreach ($_arr_dangerChars as $_key=>$_value) { $_str_return = str_ireplace($_value, "", $_str_return); } foreach ($_arr_dangerRegs as $_key=>$_value) { $_str_return = preg_replace($_value, "", $_str_return); } $_str_return = htmlentities($_str_return, ENT_QUOTES, "UTF-8", true); return $_str_return; }
声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章
刺客信条阴影:贝壳谜语解决方案
3 周前ByDDD
Windows 11 KB5054979中的新功能以及如何解决更新问题
2 周前ByDDD
在哪里可以找到原子中的起重机控制钥匙卡
3 周前ByDDD
<🎜>:死铁路 - 如何完成所有挑战
4 周前ByDDD
Atomfall指南:项目位置,任务指南和技巧
4 周前ByDDD

热工具

MinGW - 适用于 Windows 的极简 GNU
这个项目正在迁移到osdn.net/projects/mingw的过程中,你可以继续在那里关注我们。MinGW:GNU编译器集合(GCC)的本地Windows移植版本,可自由分发的导入库和用于构建本地Windows应用程序的头文件;包括对MSVC运行时的扩展,以支持C99功能。MinGW的所有软件都可以在64位Windows平台上运行。

VSCode Windows 64位 下载
微软推出的免费、功能强大的一款IDE编辑器

安全考试浏览器
Safe Exam Browser是一个安全的浏览器环境,用于安全地进行在线考试。该软件将任何计算机变成一个安全的工作站。它控制对任何实用工具的访问,并防止学生使用未经授权的资源。

禅工作室 13.0.1
功能强大的PHP集成开发环境

SublimeText3 英文版
推荐:为Win版本,支持代码提示!