2026年8月13日星期四

【公開班】教育訓練成果

這次是一個公開班的課程,我們探討了AI與資安的方方面面,第一天有三個成果:Google問卷、詐騙宣導、Base44。下面這個投影片就是課程中學員的成果: 







第二天的課程,我們集中在網路攻防,學員成果中包含研發日誌的撰寫

SQL Injection -- Union研發日誌

標題

說明

知識描述

1. 定義:網頁程式直接將使用者輸入的參數拼接到 SQL 語句中,導致攻擊者可利用 UNION 操作符強行合併自定義的查詢。
2. 危害性:攻擊者可跨越權限限制,任意讀取資料庫內所有敏感資料(如本例中的 Flag、帳密等),甚至進一步控制資料庫。

原理思考

1. 底層邏輯:利用 SQL 語法的 UNION 特性將兩個 SELECT 的結果集結合輸出。
2. 成立關鍵:後台 SQL 與惡意 UNION 指令的欄位數量必須完全一致,且資料型態必須相容
3. 實踐證明:本次演練透過 ORDER BY Cardinality violation 報錯,精確測出原始欄位數為 4 個,並利用 -1 使原查詢失效,順利在網頁「顯示位」輸出 database() version() 資訊。

联想思考

1. 相似漏洞Boolean-based blind(布林盲注)Error-based(報錯注入)Time-based blind(時間盲注)
2. 共同本質:皆屬於外部輸入未經過濾、未採取強型別轉型、未實現程式與資料分離而導致的 SQL 隱碼漏洞。

應用思考

1. 漏洞連鎖組合:可與檔案讀寫功能(Into Outfile/Load_File 搭配,若權限足夠可直接讀取 Windows 系統檔案或寫入 WebShell 進而取得系統權限(RCE)。
2. 資訊蒐集擴大:利用 information_schema 系統字典表進行結構列舉,達到全面「拖庫(Dump)」的成果。

經驗聯想

在許多舊型網站或 CTF 靶機環境中,開發者常因貪圖方便直接使用字串拼接(如 id= 串接變數)來撰寫 SQL,且未關閉 PHP Fatal Error 報錯訊息,這往往成為攻擊者快速定位欄位數與環境情資的突破口。

指導行動

1. 程式修補:推動防守方(Blue Team)捨棄字串拼接,全面改用 PDO 預編譯與參數化查詢(Prepared Statements 或進行強制型別轉換(如 (int)$_GET['id'])。
2. 資安偵查:未來遇到新域名(如 cyberskill.test),應先透過修改 Hosts 檔案進行綁定,再實施目錄枚舉或 POST 表單探查,擴大檢測面。

工具衍生

1. 自動化檢測:搭配 SQLMap 工具(使用 -u--dbs-D-T--dump --batch 參數組合)。
2. 工具威力SQLMap 能在數秒內自動化重現「算欄位、找顯示位、倒出資料表」的完整人工步驟,極大提升滲透測試的效率。


近年來,筆者開設的公開班和學校在職班的課程有比較少的趨勢,大部分時間都在打磨竹林書房的線上課程平台,如果您也有看到這篇文章,有想要開設的課程,可以留言給我。

沒有留言:

發佈留言

歡迎留下寶貴意見

2026 企業數位避險——如何透過技術防禦與資安產險雙管齊下

  2026 企業數位避險 —— 如何透過技術防禦與資安產險雙管齊下   Day 1 :弱點掃描是什麼?對中小企業主的意義為何 中小企業被勒索軟體加密公司電腦的資料時有所聞,且隨著 AI 自動挖掘「系統弱點(漏洞),中小企業面臨越來越嚴峻的風險。 前陣子新心資安的...