※ [本文轉錄自 CyberSecure 看板 #1SrZoqyB ]
作者: st1009 (前端攻城師) 看板: CyberSecure
標題: [教學] 小風的資安科普-SQL injection
時間: Sat May 11 11:08:32 2019
一.前言
SQL injection 是一種在網路上經典常見的攻擊手法,不論是在CTF中,還是真實的
網路攻防戰中都可以見到其身影。
故本文將介紹這種古老又實用的攻擊手法給想要學習資訊安全的板友了解其原理以及
運作方式。
期待可以為一些沒有資安經驗的板友們開啟一扇通往資訊安全領域的大門。
二.概述
1.甚麼是 SQL injection ?
SQL injection 是一種將惡意的程式碼注入資料庫搜尋語法的資安技術。
2.SQL injection 的危害是甚麼?
藉由 SQL injection 黑客可以修改資料庫中的內容,非法越權或者之後進行更
進一步的攻擊手法。
3.如何進行 SQL injection?
找到存在漏洞的SQL注入點注入,例如:網址列的get使用處,帳號密碼輸入處,
以及其他各種會將資料送到資料庫的位置。
三.原理
在資料庫中,我們會使用搜尋語法進行搜尋。
例如:"SELECT * FROM user_data WHERE account ='$account' AND pwd = '$pwd' "
上例中存在兩個來自使用者的變數,分別是帳號($account)以及密碼($pwd),
在程式正常運行的時候,我們會尋找對應帳號密碼皆相符的資料,將其輸出。
但假設有惡意使用者輸入了一些非法字元就會破壞這段搜尋語法。
例如:
$account = "' OR 1=1