NetSecurity 板


LINE

※ [本文轉錄自 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 -- "; $pwd = "QAQ"; 此時我們的搜尋語法會變成 "SELECT * FROM user_data WHERE account ='' OR 1=1 -- ' AND pwd = 'QAQ' " 因為account遭到兩個單引號閉合,並且 -- 在SQL中是註解的意思,因此在進入資料 庫後,該程式碼會轉成以下: "SELECT * FROM user_data WHERE account ='' OR 1=1 " 也就是說關於密碼確認的欄位消失了!此時惡意使用者將可以非法登入! 四.範例 https://imgur.com/dQ3CYRm.jpg
如上圖我們在登入欄位輸入了帳號admin,並且於其後插入惡意代碼。 https://imgur.com/FzZJ3Vn.jpg
此時我們可以看到我們成功的登入了admin的帳號! 五.案例 建中蘇柏榕曾經使用SQL injection 駭入我國大考中心。 (資訊來源:http://www.epochtimes.com/b5/5/7/26/n997634.htm) 六.防禦方式 要防禦SQL injection 首先要注意一個基本原則,所有來自使用者的資訊皆不可信! 我們可以藉由以下幾種方式防禦SQL injection : 1.過濾使用者輸入,將非法字元過濾掉。 但此方法因為黑客們有著各種創意,所以存在著風險。 2.建立白名單,只有符合的資料可以使用。 此法最安全,但是可以適用的範圍最小,不利於大量使用。 3.預處理(prepare) PHP中的PDO套件可以針對參數進行綁定,以此避免SQL injection,此方法是目 前最主流的方法。 (PDO官方說明:https://www.php.net/manual/en/book.pdo.php) 七.後話 SQL injection隨著時間的演進,不斷的進化著,除了最基礎的這些外,還有其他應 用,譬如基於時間的盲注(time based blind) 此外也可能被當成更進一步攻擊,譬如遠程代碼執行(RCE)的跳板。 因此值得各位學習資安的人一再研究學習。 發表此文,希望可以與各位舊雨新知們一同學習,一同進步,為台灣的資訊安全貢獻 一份心力。 共勉之。 By st1009 -- 壁河山攻守 爭成敗悟道 許銀川 --



※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.164.88.106
※ 文章網址: https://webptt.com/m.aspx?n=bbs/CyberSecure/M.1557544116.A.F0B.html
1F:推 Apache: 推 05/11 19:34
2F:推 applechichi: 推推厲害 05/11 19:57
3F:推 chinese30910: 推 05/11 20:21



※ 發信站: 批踢踢實業坊(ptt.cc)
※ 轉錄者: st1009 (1.164.88.106), 05/11/2019 21:07:18
4F:→ st1009: 轉過來看看這裡水溫如何... 05/11 21:07
5F:推 CMJ0121: 歡迎創新坑 我也蠻好奇板上比較想要哪種類型的文章 05/12 00:23
6F:推 hsu50302: 推 05/12 01:19
7F:→ asdfghjklasd: 二個版功能有重複到了? 這文章不錯啊 05/12 01:24
8F:推 asimon: 嘖嘖~! 又要多跟一個版了 0_0a 05/12 04:09
9F:推 hpyhacking: 哇有新版欸讚啦 05/12 05:42
10F:推 Debian: 推薦文章。 05/12 10:05
11F:推 Peruheru: 有看有推 05/13 15:50
※ 編輯: st1009 (1.163.139.75), 05/14/2019 23:31:37







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:e-shopping站內搜尋

TOP