婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識(shí)庫 > SQL注入漏洞過程實(shí)例及解決方案

SQL注入漏洞過程實(shí)例及解決方案

熱門標(biāo)簽:400電話到哪辦理優(yōu)惠 電話機(jī)器人是電腦呼號(hào)嗎 怎么更改高德地圖標(biāo)注 鄭州網(wǎng)絡(luò)外呼系統(tǒng)價(jià)錢 博樂電銷機(jī)器人 上海市三維地圖標(biāo)注 機(jī)器人打電銷電話 南寧外呼系統(tǒng)招商 云南大數(shù)據(jù)外呼系統(tǒng)

代碼示例:

public class JDBCDemo3 {
  public static void demo3_1(){
    boolean flag=login("aaa' OR ' ","1651561");  //若已知用戶名,用這種方式便可不用知道密碼就可登陸成功
    if (flag){
      System.out.println("登陸成功");
    }else{
      System.out.println("登陸失敗");
    }

  }
  public static boolean login(String username,String password){
    Connection conn=null;
    Statement stat=null;
    ResultSet rs=null;
    boolean flag=false;
    try {
      conn=JDBCUtils.getConnection();
      String sql="SELECT * FROM user WHERE username='"+username+"'AND password='"+password+"'"; //此處是SQL注入漏洞的關(guān)鍵,因?yàn)槭亲址钠唇樱瑫?huì)使查詢語句變?yōu)椋篠ELECT * FROM user WHERE username='aaa' OR '' AND password='1651561',此查詢語句是可得到結(jié)果集的,便出現(xiàn)此漏洞
      stat=conn.createStatement();
      rs=stat.executeQuery(sql);
      if(rs.next()){
        flag=true;
      }else{
        flag=false;
      }
    } catch (SQLException e) {
      e.printStackTrace();
    }
    return flag;
  }

解決方法,使用PrepareStatment:

public static void demo3_1(){
    boolean flag=login1("aaa' OR ' ","1651561");
    if (flag){
      System.out.println("登陸成功");
    }else{
      System.out.println("登陸失敗");
    }

  }
  public static boolean login1(String username,String password){
    Connection conn=null;
    PreparedStatement pstat=null;
    ResultSet rs=null;
    boolean flag=false;

    try {
      conn=JDBCUtils.getConnection();
      String sql="SELECT * FROM user WHERE username=? AND password=?"; //使用?代替參數(shù),預(yù)先設(shè)置好sql格式,就算在輸入sql關(guān)鍵字也不會(huì)被sql識(shí)別
      pstat=conn.prepareStatement(sql);
      pstat.setString(1,username); //設(shè)置問號(hào)的值
      pstat.setString(2,password);
      rs=pstat.executeQuery();
      if(rs.next()){
        flag=true;
      }else{
        flag=false;
      }
    } catch (SQLException e) {
      e.printStackTrace();
    }
    return flag;
  }
}

使用以上解決辦法就無法通過SQL注入漏洞登陸用戶成功。

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • php中防止SQL注入的最佳解決方法
  • PHP開發(fā)中常見的安全問題詳解和解決方法(如Sql注入、CSRF、Xss、CC等)
  • T-SQL篇如何防止SQL注入的解決方法
  • ASP+MSSQL2000 數(shù)據(jù)庫被批量注入后的解決方法
  • MySQL Proxy(解決注入的另一思路)
  • MySQL解決SQL注入的另類方法詳解
  • SQL注入原理與解決方法代碼示例
  • 通過ibatis解決sql注入問題
  • sqlserver 數(shù)據(jù)庫被注入解決方案
  • 實(shí)例介紹SQL注入以及如何解決

標(biāo)簽:秦皇島 益陽 澳門 寧夏 恩施 定西 白銀 杭州

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《SQL注入漏洞過程實(shí)例及解決方案》,本文關(guān)鍵詞  SQL,注入,漏洞,過程,實(shí)例,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《SQL注入漏洞過程實(shí)例及解決方案》相關(guān)的同類信息!
  • 本頁收集關(guān)于SQL注入漏洞過程實(shí)例及解決方案的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    主站蜘蛛池模板: 始兴县| 潢川县| 柯坪县| 英超| 尼勒克县| 山阴县| 文安县| 太仆寺旗| 呼和浩特市| 西安市| 曲麻莱县| 会东县| 揭东县| 临高县| 乌兰浩特市| 安新县| 余庆县| 昆明市| 黑河市| 青岛市| 易门县| 三门峡市| 涪陵区| 淮阳县| 通城县| 宜黄县| 宁武县| 雷山县| 潮安县| 宁明县| 屯留县| 巫山县| 姚安县| 城市| 车险| 迁安市| 米易县| 县级市| 深州市| 辛集市| 石棉县|