SQL注入測試的測試點

2021-09-10 14:02:17 字數 1180 閱讀 9092

1.輸入域的值為數字型,用1=1,1=2法

若滿足條件,則存在sql注入漏洞,程式沒有對提交的整型引數的合法性做過濾或判斷

2.輸入域的值為字元型,用 』1=1』, 』1=2』 法

若滿足條件,則存在sql注入漏洞,程式沒有對提交的字元型引數的合法性做過濾或判斷

3.輸入域中的值為搜尋型,用』and [查詢條件] and 『%』=』% 等

若滿足條件,則存在sql注入漏洞,程式沒有對提交的查詢的合法性做過濾或判斷

4.用union查詢語句

利用union可以連線查詢,從而從其他表中得到資訊

5.大小寫排查

程式設計師對大小寫的過濾不充分時,會忽視大小寫混合的情況,容易存在漏洞

6.用unicode字符集檢查

用unicode字符集轉化的輸入,會把+號轉為%2b,把%號轉化為%25等,容易忽略過濾

7.用ascii碼檢查

把輸入的字元用ascii碼代替,如a=char(97),容易忽略過濾

8.用;號或—號檢查

分號;在sqlserver中表示隔開前後兩句語句,--表示後面的語句為注釋,容易忽略過濾

9.利用系統表

通過查詢資料庫的系統表名,可判斷具體用的資料庫型別

10.利用資料庫伺服器的系統變數user 等

可以得到資料庫名,資料庫的使用者名稱,從而進行進一步攻擊

11.利用相關函式

若字元是中文的,比如where name=』使用者』,可以用where name=nchar(29992)+nchar(25143)代替。

12.介面輸入框中是否對sql敏感字元進行了遮蔽

"exec" ,"xp_","sp_","declare","union","cmd","+","//","..",";","'","--","%" 等命令關鍵字

13.是否對sql指令碼語法出錯資訊進行了遮蔽

有些sql注入的目的就是為了看到報錯的sql命令,通過分析這些sql命令,獲取關鍵的資料庫名,表名以及欄位名等資訊

14.在瀏覽器的位址列中是否對一些恒等表示式進行了遮蔽

例如: com /showdetail.asp?id=19 and 1=1

15.對於提交表單的瀏覽器位址是否進行了敏感字元或命令集的遮蔽

16.對於cookie引數提交部分,是否對於cookie檔案進行了敏感字元或命令集的遮蔽

前提是設計或需求允許這樣的操作

移動測試測試點之功能測試測試點

4 資料更新 4.1 需要確定哪些地方需要提供手動重新整理 哪些地方需要自動重新整理 哪些地方需要手動 自動重新整理 4.2 確定哪些地方從後台切換回前台時需要進行資料更新 4.3 根據業務 速度及流量的合理分配,確定哪些內容需要實時更新,哪些需要定時更新 4.4 確定資料展示部分的處理邏輯,是每次...

介面測試測試點

大家都知道,測試的本質的發現問題,然後跟蹤解決問題 但是解決問題有個通用成本理論 問題越早發現解決的成本越低,成本從大到小排列為 產品需求規格說明書 開發需求分析報告 開發詳細設計說明書 測試需求分析說明書 測試用例 code review 轉測試驗收 測試人員提交bug 產品 運營驗收 客戶投訴 ...

Cookie測試的測試點

cookie測試的測試點 設定瀏覽器禁止使用cookie,訪問網頁後,檢查存放cookie檔案中未生成相關檔案 按照作業系統和瀏覽器對cookie存放路徑的設定,檢查存放路徑是否與設定一致 按照cookie過期時間,檢查存放檔案該cookie是否被自動刪除 通過不同瀏覽器,設定是否接受cookie檔...