連結器與載入器與執行檔格式

關於ASLR(位址空間配置隨機化)的目的,下列何者正確?

  1. A每次執行時改變堆疊、堆積、函式庫等的位址,使攻擊者難以預測所瞄準的位址
  2. B隨機選擇記憶體位址,以提高快取命中率
  3. C隨機釋放未使用的記憶體,以增加可用容量
查看答案與解析

正確答案:A. 每次執行時改變堆疊、堆積、函式庫等的位址,使攻擊者難以預測所瞄準的位址

在利用緩衝區溢位等的攻擊中,知道函式庫函式與堆疊上資料的位址相當重要。ASLR會在每次啟動行程時,將堆疊、堆積、共用函式庫、執行檔的放置位址錯開,讓攻擊者無法預先鎖定位址。它單獨並不能完全防禦,需與寫入與執行分離等其他對策搭配使用。

  • A. 正確。是讓攻擊變困難的對策。
  • B. 不是為了效能的機制。
  • C. 不是釋放記憶體的機制。
練習這個領域 前往領域頁面

連結器與載入器與執行檔格式的其他題目

  1. 將執行檔建置為PIE(位置獨立執行檔)的主要理由為下列何者?
  2. 啟動程式時(Linux的execve等),作業系統的載入器所進行的事項,下列何者正確?
  3. 關於C語言程式中作業系統最初開始執行的位址(進入點,entry point),下列何者正確?
  4. C語言的main函式以「return 3;」結束時,該值3一般會如何處理?
  5. 對執行檔使用strip指令時會發生的事,下列何者正確?

這個領域的比較