Java 防止 SQL 注入工具类

article/2025/10/11 3:56:49

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

package cn.manmanda.api.util;import javax.servlet.http.HttpServletRequest;/*** 防止SQL注入工具类* @author * @date 2017/12/29 15:39*/
public class AntiSQLInjectionUtil {//	public final static String regex = "#|/*|*/|'|%|--|and|or|not|use|insert|delete|update|select|count|group|union"
//			+ "|create|drop|truncate|alter|grant|execute|exec|xp_cmdshell|call|declare|source|sql";public final static String regex = "'|and|exec|execute|insert|select|delete|update|count|drop|*|%|chr|mid|master|truncate|" +"char|declare|sitename|net user|xp_cmdshell|;|or|-|+|,|like'|and|exec|execute|insert|create|drop|" +"table|from|grant|use|group_concat|column_name|" +"information_schema.columns|table_schema|union|where|select|delete|update|order|by|count|*|" +"chr|mid|master|truncate|char|declare|or|;|-|--|+|,|like|//|/|%|#";/*** 把SQL关键字替换为空字符串* * @param param* @return*/public static String filter(String param) {if (param == null) {return param;}return param.replaceAll("(?i)" + regex, ""); // (?i)不区分大小写替换}/*** 返回经过防注入处理的字符串* * @param request* @param name* @return*/public static String getParameter(HttpServletRequest request, String name) {return AntiSQLInjectionUtil.filter(request.getParameter(name));}public static void main(String[] args) {// System.out.println(StringEscapeUtils.escapeSql("1' or '1' = '1; drop table test"));// //1'' or ''1'' = ''1; drop table testString str = "sElect * from test where id = 1 And name != 'sql' ";String outStr = "";for (int i = 0; i < 1000; i++) {outStr = AntiSQLInjectionUtil.filter(str);}System.out.println(outStr);}}

 

转载于:https://my.oschina.net/NamiZone/blog/1596710


http://chatgpt.dhexx.cn/article/vJQ9fwUD.shtml

相关文章

java防止SQL注入

前言 这里常用的方法就不说了&#xff0c;#{}预编译不说&#xff0c;但是如果我们不得不用${}来传递参数&#xff0c;那就有点麻烦了&#xff0c;另外&#xff0c;一般我们会用到druid自带的sql注入过滤&#xff1a; 但是经过测试发现&#xff0c;这个方法并不能完全屏宾sql注…

Pangolin-最好的SQL注入工具

分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴! 点击这里使用RSS订阅本Blog: <script type="text/javascript" src="…

sql注入工具--Sqlmap

Sqlmap是一款自动化sql注入的工具&#xff0c;其功能强大&#xff0c;支持多种数据库&#xff0c;包括mysql&#xff0c;sqlserver等主流的数据库&#xff0c;采用独特的sql注入方法来达到自动化注入扫描漏洞的目的。 1&#xff09;基于布尔的盲注&#xff08;Type:boolean-bas…

宁浩网sql注入工具_国产SQL注入漏洞测试工具 - 超级SQL注入工具(SSQLInjection)...

此工具为本人对C#、Socket及HTTP协议、SQL注入进行深入研究后&#xff0c;闲暇时间做的一款SQL注入工具。不说秒SQLMap&#xff0c;直接秒杀什么webcruiser、Safe3SI、pangolin、havij、DSQLTools、明小子等&#xff0c;今后可以扔掉这些过时的工具了。 简介超级SQL注入工具(SS…

SQL注入工具-----sqlmap

sqlmap中的一些常见的命令&#xff1a; -h,–help 显示基本的帮助信息并退出 -hh 显示高级帮助信息并退出 –version 显示程序版本信息并退出 -u 目标URL -m 后接一个txt文件&#xff0c;文件中是多个url&#xff0c;sqlmap会自动化的检测其中的所有url -r 可以将一个post请求…

SQL注入工具

众所周知&#xff0c;SQL注入攻击是最为常见的Web应用程序攻击技术。同时SQL注入攻击所带来的安全破坏也是不可弥补的。以下罗列的10款SQL注入工具可帮助管理员及时检测存在的漏洞。 BSQL Hacker 10个SQL注入工具 BSQL Hacker是由Portcullis实验室开发的&#xff0c;BSQL Hacke…

mysql sql注入工具下载_超级SQL注入工具【SSQLInjection】

简介&#xff1a; 超级SQL注入工具(SSQLInjection)是一款基于HTTP协议自组包的SQL注入工具&#xff0c;支持出现在HTTP协议任意位置的SQL注入&#xff0c;支持各种类型的SQL注入&#xff0c;支持HTTPS模式注入。 超级SQL注入工具 (已更新beta15) 超级SQL注入工具(SSQLInjection…

mysql sql注入工具下载_sql注入工具下载|超级SQL注入工具SSQLInjectionv1.0 正式版 附使用说明 - 极光下载站...

超级SQL注入工具正式版下载。超级SQL注入工具虽然有一定的历史了&#xff0c;但是超级SQL注入工具还是一样的强悍&#xff01;超级SQL注入工具适用于Web渗透的朋友&#xff01; 超级SQL注入工具简介&#xff1a; 超级SQL注入工具(SSQLInjection)是一款基于HTTP协议自组包的SQL注…

SQLiDetector:一款功能强大的SQL注入漏洞检测工具

关于SQLiDetector SQLiDetector是一款功能强大的SQL注入漏洞检测工具&#xff0c;该工具支持BurpBouty配置文件&#xff0c;可以帮助广大研究人员通过发送多个请求&#xff08;包含14种Payload&#xff09;并检查不同数据库的152个正则表达式模式来检测基于错误的SQL注入漏洞。…

渗透测试 ( 6 ) --- SQL 注入神器 sqlmap

sqlmap 官网&#xff1a;http://sqlmap.org/ sqlmap文档地址&#xff1a;https://github.com/sqlmapproject/sqlmap/wiki/Usage sqlmap 使用 思维导图&#xff1a;http://download.csdn.net/detail/freeking101/9887831 黑帽与白帽都喜爱的十大SQL注入工具&#xff1a;http://…

10个SQL注入工具

众所周知&#xff0c;SQL注入攻击是最为常见的Web应用程序攻击技术。同时SQL注入攻击所带来的安全破坏也是不可弥补的。以下罗列的10款SQL工具可帮助管理员及时检测存在的漏洞。 BSQL Hacker BSQL Hacker是由Portcullis实验室开发的&#xff0c;BSQL Hacker 是一个SQL自动注入…

Web安全:SQL注入工具

SQL注入工具主要是针对Web服务器后台数据库的注入&#xff0c;其主要目的是获取数据库中的数据。以前常用的SQL注入工具有啊D注入工具及Domain&#xff08;明小子注入工具&#xff09;&#xff0c;现在常用的SQL注入工具有HackBar、SQLMap 、Pangolin、Havij、Safe3 SQL inject…

面试官:说说设备像素、css像素、设备独立像素、dpr、ppi 之间的区别?

一、背景 在css中我们通常使用px作为单位&#xff0c;在PC浏览器中css的1个像素都是对应着电脑屏幕的1个物理像素 这会造成一种错觉&#xff0c;我们会认为css中的像素就是设备的物理像素 但实际情况却并非如此&#xff0c;css中的像素只是一个抽象的单位&#xff0c;在不同的设…

dpr(设备像素比)与 移动端适配

在上一篇文章中&#xff08;使用 rem 实现移动端的自适应布局&#xff09;&#xff0c;我们讲到 iphone6s 的屏幕宽度为 375px&#xff0c;我们拿到的视觉稿也是基于iphone6s 设计的&#xff0c;但是设计稿的宽度却是 750px&#xff0c;这是为什么呢&#xff1f; 原因就是 ipho…

新一代Web技术栈的演进:SSR/SSG/ISR/DPR都在做什么?

在开始阅读之前&#xff0c;先解释一下文章里用到的英文缩写&#xff1a; CSR&#xff1a;Client Side Rendering&#xff0c;客户端&#xff08;通常是浏览器&#xff09;渲染&#xff1b;SSR&#xff1a;Server Side Rendering&#xff0c;服务端渲染&#xff1b;SSG&#xf…

Dapr

环境&#xff1a; window10 docker desktop dotnet 5.0 一、安装 Dapr CLI 打开 Windows PowerShell 或 cmd &#xff0c;运行以下命令以安装 Dapr CLI&#xff0c;并添加安装路径到系统环境变量中。 powershell -Command "iwr -useb https://raw.githubusercontent.…

当我们在讨论设备像素比(device pixel ratio,dpr)的时候我们在讨论什么?

目录 0. 为什么要写这篇文章&#xff1f;1. 设备像素比的问题在哪里&#xff1f;1.1. 不同的论述导致不同的理解1.2. 设备独立像素与CSS像素1.3. 小结 2. 设备像素比 设备物理像素/CSS像素&#xff0c;真的正确吗&#xff1f;2.1. PC端验证2.2. 手机端验证2.3. 出了什么问题&a…

动态dp

以前学树型dp留下的题目&#xff0c;没有写&#xff0c;然后过了几个月后又回来写了这道题 战略游戏 这是一道典型的最小点覆盖的模板&#xff0c;蒟蒻采用的是树型dp的做法 设 \(f[i][0/1]\) 在以 \(i\) 为根的子树中&#xff0c;选或不选当前这个点所需要的最少的点 那么转移…

移动端适配dpr

1. 移动端适配的代码&#xff08;设计稿iPhone6&#xff09;如下&#xff1a; (function (doc,win) {// seMetaTagScale(doc, win)var fn function () { var deviceWidth doc.documentElement.clientWidth; // css逻辑像素&#xff0c;不是物理像素if (deviceWidth > 82…

移动端布局(一)dp、dip、PPI、dpr、图片模糊

注: 此篇文章引用多篇文章&#xff0c;在文章的结尾处有注明文章的来源 高清屏 即高清屏,把更多的像素压缩至一块屏幕里&#xff0c;从而达到更高分辨率显示的细腻程度&#xff0c;使人眼无法分辨出单个的像素。 物理像素(dp) 物理像素&#xff0c;设备的硬件像素&#xff…