SQL注入漏洞的简单代码实现,易懂
来源:互联网 发布:sql数据迁移解决方案 编辑:程序博客网 时间:2024/06/05 18:06
小白浅谈:SQL注入漏洞
在程序的实际使用中,为了管理庞大的数据信息,就会使用到数据库。用户在使用程序时,程序可以自动通过自动对数据库的查询,而我认为的注入漏洞即是通过一些查询数据库的语句来实现。
下面一段代码来演示SQL注入漏洞的原理:
public static void main(String[] args) throws SQLException {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入用户名");
String username = scanner.nextLine();
System.out.println("请输入密码");
String password = scanner.nextLine();
//假设username=zhangsan password= 123456
//下述字符串查询语句可以携程select * from user where username=zhnagsan password=123456
//下面代码有注入漏洞
//String sql = "select * from user where username='" + username+"'and password='"+password+"'";
//下面一行代码是实现查询数据库数据的代码,其中有我自己创造的工具类等,读者不必深究,知道即可。
//
/*List<Map<String, Object>> list = DBUtils.getMapList(sql);
//如果查询出来数据库有值,即说明查到的内容不为空,即登录成功
//这也是出现注入漏洞的地方,比如说你输入密码为 123 ' or ' 1=1 这样这个语句在我的查询数据库语句永远是真的,见上边四行//代码
if(list!=null&&list.size()>0){
System.out.println("登录成功");
}else {
System.out.println("登录失败");
}*/
//防止注入漏洞
User user = new DBUtils<User>(User.class).getBean(" username='"+username+"'");
if(user!=null && user.getPassword()!=null && password!=null && password.equals(user.getPassword())){
System.out.println("登录成功");
}else{
System.out.println("登录失败");
}
- SQL注入漏洞的简单代码实现,易懂
- 工厂模式的代码实现,简单易懂。
- 本地搭建含有简单sql注入漏洞的网站
- 关于espcms的sql注入漏洞代码审计复现
- 最简单易懂的hash表实现代码
- 简单易懂的C语言实现双向链表代码
- Sql注入漏洞的例子
- SQL注入漏洞的判断
- 万恶的SQL注入漏洞
- 利用SQL注入漏洞登录后台的实现方法
- 简单三步走堵死SQL Server注入漏洞
- 简单分析什么是SQL注入漏洞
- 遇到一个简单漏洞(sql注入)
- 简单三步走堵死SQL Server注入漏洞
- 防止SQL注入漏洞简单方法
- 简单分析什么是SqL注入漏洞
- 简单分析什么是SQL注入漏洞
- 简单分析什么是SQL注入漏洞
- JPush极光推送 Java调用服务器端API开发
- 【练习】数据结构和算法复习题
- 操作系统内核
- a标签的新发现
- Centos6.8下搭建SVN服务器
- SQL注入漏洞的简单代码实现,易懂
- 【PCL】将ply文件转换为pcd文件
- 【MySQL】——索引
- 关于ContentProvider的使用
- json格式错误 json引号引起的问题
- 20170827桌牌项目记录
- JavaWEB--POI之EXCEL操作、优化、封装详解系列(四)--PoiExportUtil架构设计篇与功能说明
- BZOJ 3237 连通图 (cdq分治 并查集)
- 二分图匹配