java sql 注入 与防范

Posted vinzen

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java sql 注入 与防范相关的知识,希望对你有一定的参考价值。

1.注入

技术图片

2 .预防

技术图片

 

package com.jdbc;

import java.sql.*;
import java.util.Scanner;

public class loginDemo {
    public static void main(String[] args)throws ClassNotFoundException, SQLException {
        //1.注册驱动
        Class.forName("com.mysql.jdbc.Driver");
        //2.连接
        String url = "jdbc:mysql://localhost:3306/zfj";
        String username = "root";
        String password = "root";
        Connection con = DriverManager.getConnection(url,username,password);
        //3.语句执行对象 (执行sql) 返回值 Statement
        //Statement stat = con.createStatement();

        Scanner sc = new Scanner(System.in);
        String user = sc.nextLine();
        String pas = sc.nextLine();


        //4.执行sql 查询 select
        String sql = "SELECT * FROM user where user_name= ? AND user_sex=?";
        //防止注入
        PreparedStatement pst = con.prepareStatement(sql);
        pst.setObject(1,user);
        pst.setObject(2,pas);
        System.out.println(sql);
        ResultSet rs = pst.executeQuery();
        //处理结果集
        while (rs.next()){
            //获取每列的的数据
            System.out.println(rs.getString("id")+"  "+rs.getString("user_name")+"  "+rs.getString("user_age")+"  "+rs.getString("user_sex"));
        }

        //5.释放资源
        rs.close();
        pst.close();
        con.close();
    }
}

  

以上是关于java sql 注入 与防范的主要内容,如果未能解决你的问题,请参考以下文章

安全测试 web安全测试 常规安全漏洞 可能存在SQL和JS注入漏洞场景分析。为什么自己没有找到漏洞,哪么可能存在漏洞场景是?SQL注入漏洞修复 JS注入漏洞修复 漏洞存在场景分析和修复示例(代码片段

如何防止代码注入攻击在PHP

针对sql注入攻击,都有哪些防范措施

什么是SQL注入式攻击 如何防范

防范sql注入式攻击(Java字符串校验,高可用性)

SQL注入攻击与防范