Download presentation
Presentation is loading. Please wait.
1
緩衝區溢位攻擊 學生:A02953323羅以豪 教授:梁明章
網路安全期末報告 緩衝區溢位攻擊 學生:A 羅以豪 教授:梁明章
2
何謂溢位 真實世界 坑道與水 電腦觀點 緩衝區(Buffer)….記憶體 緩衝區溢位 超過處理常式限制範圍,該資料造成程式的溢位
真實世界 坑道與水 電腦觀點 緩衝區(Buffer)….記憶體 緩衝區溢位 超過處理常式限制範圍,該資料造成程式的溢位 C程式語言中出現疏漏 沒有自動做陣列或者指標的邊界檢查
3
溢位分類 溢位模式 堆疊溢位、堆積溢位 引發機制 字元溢位、整數溢位 攻擊模式 遠端溢位、本地溢位
4
攻擊方式(1/2) Char pass[4] , buff[255]; scanf(“%s”,buff);
本地溢位 ex : 密碼驗證 Char pass[4] , buff[255]; scanf(“%s”,buff); strcpy(pass,buff); if( strcmp(pass,”XXXX”) ==0) {……} 輸入 4 字元 OK if 輸入 aaaaaaa......超長字元?? 緩衝區溢位 程式break down 00 DA BB …………… 61 ……………
5
攻擊方式(2/2) 堆疊溢位攻擊 中斷指令位置覆蓋 Dark Spyrit 資料指令相對位置概念
aaaa&jmp esp + shellcode ps.jmp esp模式(組合語言中無條件跳轉) DA 00 ………. 指令 ……
6
如何防護攻擊 64 bit CPU 資料和程式分開 資料記憶體設為不可執行 非執行緩衝區 設定堆疊資料斷不可執行
編寫安全程式 strcpy呼叫 關閉不需要的port 和服務 更新、新版本軟體 軟體執行權限
7
THE END
Similar presentations