成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

在SQL注入中利用MySQL隱形的類型轉(zhuǎn)換繞過WAF檢測(cè)

安全
除去弱口令與暴力破解,最常見的就是SQL注入。SQL注入可以在SQLNuke——mysql 注入load_file Fuzz工具看到如何利用,而本篇文章的重點(diǎn)是利用MySQL隱形的類型轉(zhuǎn)換繞過WAF的檢測(cè)。

web應(yīng)用一般采用基于表單的身份驗(yàn)證方式(頁(yè)面雛形如下圖所示),處理邏輯就是將表單中提交的用戶名和密碼傳遞到后臺(tái)數(shù)據(jù)庫(kù)去查詢,并根據(jù)查詢結(jié)果判斷是否通過身份驗(yàn)證。對(duì)于LAMP架構(gòu)的web應(yīng)用而言,處理邏輯采用PHP,后臺(tái)數(shù)據(jù)庫(kù)采用MySQL。而在這一處理過程,由于種種處理不善,會(huì)導(dǎo)致不少嚴(yán)重的漏洞,除去弱口令與暴力破解,最常見的就是SQL注入。SQL注入可以在SQLNuke——mysql 注入load_file Fuzz工具看到如何利用,而本篇文章的重點(diǎn)是利用MySQL隱形的類型轉(zhuǎn)換繞過WAF的檢測(cè)。

在SQL注入中利用MySQL隱形的類型轉(zhuǎn)換繞過WAF檢測(cè)

下面使用實(shí)例來展示這一過程。

實(shí)例包括2個(gè)腳本login.html與login.php,1張存放用戶名與密碼的member.user表。

(1)表單login.html

  1. <html> 
  2. <body> 
  3. <form id="form1" name="form1" method="post" action="login.php"> 
  4. <label>UserName  
  5. <input name="user" type="text" id="user"/> 
  6. </label> 
  7. <br/> 
  8. <label>Password  
  9. <input name="password" type="text" id="password"/> 
  10. </label> 
  11. <br/> 
  12. <label> 
  13. <input name="login" type="submit" id="login" value="Login"/> 
  14. </label> 
  15. </body> 
  16. </html> 

(2)認(rèn)證處理login.php

  1. <?php 
  2. if(isset($_POST["login"]))  
  3. {  
  4. $link = mysql_connect("localhost","root","toor") or die ("cannot connect database".mysql_error());  
  5. mysql_select_db("member") or die ("cannot select the db");  
  6. $query = "select * from user where user='".$_POST["user"]."'and password='".md5($_POST["password"])."'";  
  7. echo $query."<br/>";  
  8. $result = mysql_query($query) or die ("the query failed:".mysql_error());  
  9. echo "<br/>";  
  10. $match_count = mysql_num_rows($result);  
  11.  
  12. if($match_count){  
  13. while($row = mysql_fetch_assoc($result)){  
  14. echo "<strong>User: </strong>".$row["user"]."<br/>";  
  15. echo "<strong>Password: </strong>".$row["password"]."<br/>";  
  16. echo "<br/>";  
  17. }  
  18. }  
  19. else {  
  20.  
  21. echo "Wrong User or password <br/>";  
  22.  
  23. echo '<a href="http://10.1.36.34/login.html">Back</a><br/>';  
  24. }  
  25. mysql_free_result($result);  
  26.  
  27. mysql_close($link);  

注意紅色字體部分,為用戶輸入的用戶名和密碼,沒有進(jìn)行任何過濾就傳入到數(shù)據(jù)庫(kù)中去進(jìn)行查詢. 該腳本將查詢字符串及查詢結(jié)果展示在頁(yè)面中以供直觀的演示SQL查詢結(jié)果。 

(3)member.user

大家看一張常見的用戶表user表,由兩個(gè)字段構(gòu)成user用戶名和password字段。

在SQL注入中利用MySQL隱形的類型轉(zhuǎn)換繞過WAF檢測(cè)

表中包含8行數(shù)據(jù)

在SQL注入中利用MySQL隱形的類型轉(zhuǎn)換繞過WAF檢測(cè)

很明顯這是一段有SQL注入的程序,接下來我們來看看下面這些有趣的查詢結(jié)果

(1) 輸入用戶名a’+'b#

在SQL注入中利用MySQL隱形的類型轉(zhuǎn)換繞過WAF檢測(cè)

查詢結(jié)果如下圖所示

在SQL注入中利用MySQL隱形的類型轉(zhuǎn)換繞過WAF檢測(cè)

(2)輸入用戶名45a’+'b’#

在SQL注入中利用MySQL隱形的類型轉(zhuǎn)換繞過WAF檢測(cè) 

在SQL注入中利用MySQL隱形的類型轉(zhuǎn)換繞過WAF檢測(cè)

產(chǎn)生以上結(jié)果的原因是算術(shù)操作符+的出現(xiàn)將字符型的user轉(zhuǎn)換為了數(shù)值性的user

dani,tanjiti,dani123,0dani 對(duì)應(yīng)的數(shù)值為0
123dani,123tanjiti對(duì)應(yīng)的數(shù)值為123
45dani,045tanjiti對(duì)應(yīng)的數(shù)值為45
'a'+'b'對(duì)應(yīng)數(shù)值為0+0=0,會(huì)把類型轉(zhuǎn)換后為0的用戶名搜索出來
'45a'+'b'對(duì)應(yīng)數(shù)值為45+0=45,會(huì)把類型轉(zhuǎn)換后為45的用戶名搜索出來

除了+號(hào),其他算術(shù)操作符號(hào)也會(huì)發(fā)生類型的類型轉(zhuǎn)換,例如MOD,DIV,*,/,%,-,

(3)輸入用戶名a’MOD’1′#

在SQL注入中利用MySQL隱形的類型轉(zhuǎn)換繞過WAF檢測(cè)

’a'MOD’1′對(duì)應(yīng)的數(shù)值為0 MOD 1 =0,會(huì)把user對(duì)應(yīng)數(shù)值為0的搜索出來

在SQL注入中利用MySQL隱形的類型轉(zhuǎn)換繞過WAF檢測(cè)

(4)輸入用戶名‘-”#

在SQL注入中利用MySQL隱形的類型轉(zhuǎn)換繞過WAF檢測(cè)

”-”對(duì)應(yīng)的數(shù)值為0 -0 =0,會(huì)把user對(duì)應(yīng)數(shù)值為0的搜索出來

在SQL注入中利用MySQL隱形的類型轉(zhuǎn)換繞過WAF檢測(cè)

bit操作符&,|,^,<< ,>>也有同樣的效果

(5)輸入用戶名‘/’1′#

在SQL注入中利用MySQL隱形的類型轉(zhuǎn)換繞過WAF檢測(cè)

”/’1′對(duì)應(yīng)的數(shù)值為0 /1 =0,會(huì)把user對(duì)應(yīng)數(shù)值為0的搜索出來

在SQL注入中利用MySQL隱形的類型轉(zhuǎn)換繞過WAF檢測(cè)

bit操作符&,|,^,<< ,>>也有同樣的效果

(6)輸入用戶名a’&’b'#

在SQL注入中利用MySQL隱形的類型轉(zhuǎn)換繞過WAF檢測(cè)

’a'&’b'對(duì)應(yīng)的數(shù)值為0&0 =0,會(huì)把user對(duì)應(yīng)數(shù)值為0的搜索出來

在SQL注入中利用MySQL隱形的類型轉(zhuǎn)換繞過WAF檢測(cè)

對(duì)應(yīng)WAF防火墻而言,當(dāng)輸入’ or 1=’1 時(shí),ModSecurity防火墻會(huì)報(bào)錯(cuò)(我沒有試驗(yàn)過ModSecurity,博客中有介紹)

在SQL注入中利用MySQL隱形的類型轉(zhuǎn)換繞過WAF檢測(cè)

而上面的實(shí)例則可以繞過防火墻.

總的來說,利用MySQL隱性的類型轉(zhuǎn)換來繞過WAF對(duì)SQL注入的檢測(cè)是蠻有想法的。

責(zé)任編輯:藍(lán)雨淚 來源: FreebuF
相關(guān)推薦

2013-01-11 16:23:29

2012-12-24 13:50:54

2013-06-03 10:02:53

WAF繞過

2019-02-19 08:45:41

2017-05-05 11:31:34

2011-09-06 16:56:43

2018-02-10 09:44:19

2013-05-22 17:43:21

2017-09-07 15:39:27

2015-06-16 13:37:03

2013-05-13 11:25:02

WAFWeb應(yīng)用防火墻WAF繞過

2020-07-31 11:02:09

網(wǎng)絡(luò)攻擊WAF黑客

2010-11-26 15:38:32

MySQL注入

2009-03-27 10:53:52

注入SQLMySQL

2013-12-18 09:39:37

XSSWAF繞過

2023-12-01 16:21:42

2010-09-06 17:35:43

SQL函數(shù)

2012-10-31 17:21:57

2017-03-03 09:10:09

2010-09-08 13:10:03

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 亚洲最大av| 一级黄色网页 | 欧美激情国产日韩精品一区18 | 日日日操 | 久久久成人一区二区免费影院 | 久久久久久久国产精品影院 | 久久综合久久综合久久 | 日日夜夜精品免费视频 | aaa级片| 久久久久久久久久久91 | 在线观看www高清视频 | 久久久久久精 | 天天欧美 | 亚洲精品久久久久久久久久久久久 | 中文字幕在线第二页 | 在线视频 中文字幕 | 成年人黄色一级片 | 久久精品一| 操久久 | 狠狠干美女 | 美女久久 | 中文字幕在线视频网站 | 免费一级欧美在线观看视频 | 午夜综合| 中文在线一区二区 | 亚洲国产成人久久综合一区,久久久国产99 | 91久久精品国产91久久性色tv | 中文字幕一区二区三区四区五区 | 久久精品久久久久久 | 日韩在线视频精品 | 偷拍自拍网 | 成人精品国产 | 久久视频免费观看 | 91麻豆精品国产91久久久更新资源速度超快 | 黄色片网此 | 精品一二区| 成人高清视频在线观看 | 欧产日产国产精品国产 | 秋霞精品| 国产免费一区 | 日韩久久网 |