App下載

信息安全學(xué)習(xí):常用的攻擊手段--SQL注入

猿友 2020-08-10 16:00:33 瀏覽數(shù) (5710)
反饋

一、概述

1. 攻擊原理

SQL注入是較常見的網(wǎng)絡(luò)攻擊方式之一,主要針對(duì)WEB應(yīng)用,利用程序員編寫代碼的疏忽,對(duì)于連接數(shù)據(jù)庫(kù)的應(yīng)用,通過重組SQL語(yǔ)句,使服務(wù)器執(zhí)行惡意SQL代碼,從而獲取到非授權(quán)的權(quán)限和資料。京東 16年12月10日 泄露12G用戶賬號(hào)信息。SQL注入OWASP2013、2017中排名都是在首位。

(推薦課程:SQL教程)

2. 如何判斷有沒有SQL注入漏洞

(1) 單引號(hào)判斷

針對(duì)get請(qǐng)求帶整數(shù)參數(shù)的,請(qǐng)求參數(shù):?id=1',如果頁(yè)面報(bào)SQL運(yùn)行錯(cuò)誤,則可能存在SQL注入。

(2) 數(shù)字型判斷

有缺陷的代碼語(yǔ)句:

select * from table where id=3

如果提交參數(shù)?id= x and 1=1構(gòu)造成如下SQL

select * from table where id=1 and 1=2

如果頁(yè)面報(bào)SQL運(yùn)行錯(cuò)誤,則可能存在SQL注入

(3) 字符型判斷

有缺陷的代碼語(yǔ)句:

select * from table where id='x'

如果提交參數(shù)?id=x' and '1'='1構(gòu)造如下SQL

select * from table where id= 'x' and '1'='1'

如果頁(yè)面報(bào)SQL運(yùn)行錯(cuò)誤,則可能存在 SQL注入

2. 應(yīng)對(duì)方案

  • 不信任用戶的輸入
  • 輸入字符串過濾
  • 字符轉(zhuǎn)義
  • 避免用拼接字符串、組合成SQL語(yǔ)句的方式來執(zhí)行SQL
  • 不要使用管理員權(quán)限連接數(shù)據(jù)庫(kù),數(shù)據(jù)庫(kù)訪問權(quán)限設(shè)置最小化
  • 機(jī)密信息加密或進(jìn)行哈希處理
  • 程序異常時(shí)對(duì)錯(cuò)誤進(jìn)行捕獲,避免原生錯(cuò)誤返回給用戶

(推薦微課:SQL微課)

二、覺見的SQL注入掃描工具

1. SQLIer

(1) 開源地址

github.com/BCable/sqlier

(2) 獲取信息

./sqlier.sh -s 10 網(wǎng)址

(3) 參數(shù)

  • -c [host] 清除站點(diǎn)信息.
  • -o [file] 輸出破解的密碼.
  • -s [seconds] 每個(gè)請(qǐng)求間隔時(shí)間.
  • -u [usernames] 暴力破解猜測(cè)用戶名,用逗號(hào)隔開.
  • -w [options] wget參數(shù).

(4) 猜測(cè)表名字段

  • --table-names [table_names] 猜測(cè)表名,用逗號(hào)隔開。
  • --user-fields [user_fields] 猜測(cè)用戶名字段,逗號(hào)隔開。
  • --pass-fields [pass_fields] 猜測(cè)密碼字段,逗號(hào)隔開。

2. SQLmap

一款用來檢測(cè)與利用SQL注入漏洞的工具。

安裝:

pip install sqlmap

SQL注入點(diǎn)

可以提交SQL語(yǔ)句地方就是SQL注入點(diǎn)。想進(jìn)入SQL注入,先找到SQL注入點(diǎn)。

python sqlmap.py -u "http://test/test.aspx?id=123"

3. jSky

國(guó)內(nèi)深圳宇造諾賽公司出品的一款WEB漏洞掃描工具,收費(fèi)軟件。

4. Pangolin(穿山甲)

也是宇造諾賽的產(chǎn)品,專門進(jìn)行SQL注入掃描。

5. iiscan 億思

在線免費(fèi)的網(wǎng)站漏洞檢測(cè)平臺(tái),可以檢測(cè)SQL注入漏洞、跨站漏洞等。

6. MDCSOFT WEB應(yīng)用防火墻

集WEB防護(hù)、網(wǎng)頁(yè)保護(hù)、負(fù)載均衡、應(yīng)用交付一體的WEB整體安全防護(hù)設(shè)備。

7. 其它工具

啊d注入工具 阿里云在線漏洞掃描

以上就是關(guān)于常用的攻擊手段--SQL注入的相關(guān)介紹了,希望對(duì)大家有所幫助。

SQL

0 人點(diǎn)贊