ASLR 101 - 資安

Skylar DavisLinda avatar
By Skylar DavisLinda
at 2020-11-10T10:48

Table of Contents

跟朋友聊到貴單位最近出現的漏洞時 提到了 ASLR

順手筆記加分享一下



在 overflow 系列的攻擊中 有一種情境是 heap-overflow[0]

也就是程式動態申請記憶體時 存取額外空間的一種攻擊方式

在 virtual memory 架構中[1] 程式透過 OS 申請一塊記憶體空間 (e.g. 1KB)

拿到的是虛擬的記憶體位址 (e.g 0x5566) 之後透過 OS 轉換成真實記憶體位址

OS 分配的記憶體位址是可以預測的 也就是第一次與第二次申請 會拿到連續的記憶體區塊

程式每次執行 第一次申請拿到的記憶體區塊也是固定的

導致當成是出現 heap-overflow 攻擊時 就可以推測敏感資訊放在哪個記憶體區間中

像是將密碼存放在記憶體中 或者動態產生的 API Key 等等



Address Space Layout Randomization (ASLR) 則是一種將上述記憶體產生方式做一點變化

也就是程式碼每次執行、每次申請記憶體時 拿到的虛擬記憶體空間會有所不同

但需要注意 ASLR 並非解決 heap-overflow 而是緩解

代表當出現漏洞的時候 減少攻擊可被利用的程度

當 100% 可行的攻擊 透過 ASLR 的防護後

攻擊的可行程度降低為 0.1 ~ 1% 的概念 (每 100 ~ 1000 次才成功攻擊一次)


[0]: https://en.wikipedia.org/wiki/Heap_overflow
[1]: https://en.wikipedia.org/wiki/Virtual_memory

--
Tags: 資安

All Comments

Jacob avatar
By Jacob
at 2020-11-13T00:03
不只 heap overflow 吧, stack 上的 overflow 也會受
到 aslr 的影響
Mason avatar
By Mason
at 2020-11-15T13:18
我認真看了一下我的用詞 應該沒有說僅 heap-overflow
Quintina avatar
By Quintina
at 2020-11-18T02:33
我只是覺得納悶怎麼提到aslr只有提到heap overflow
Edward Lewis avatar
By Edward Lewis
at 2020-11-20T15:48
@b0920075 因為強者我朋友單位 就是因為 heap overflow
被打爆 還好有 ASLR 撐一下才 '沒很嚴重'

如何在微。服務中儲存敏感資訊

Kelly avatar
By Kelly
at 2020-11-09T00:04
一開始在 Python 板上看到有人提問 之後 FB/Backend 版[1] 有人提出一串可能性 原始的問題很簡單 但是在開發中很容易遇到 也就是在後端 Server 部分 如何儲存資料庫的登入資訊 或者第三方服務的認證資訊 就實務上來說:敏感資訊可以是 帳號、密碼、API Secret ...

GPG 101 簡單、沒意義教學

Tristan Cohan avatar
By Tristan Cohan
at 2020-10-29T23:23
不知道這年頭還有沒有人使用 GPG [0] 不過就在剛剛寄信的時候 因為對方要求 所以還是使用了一下 順便簡單分享一下使用方式跟背後的含義 # 使用情境 # 今天當你需要寄送機密資料給對方時 會遇到的一個情境是 (其實是兩個問題) - 如何證明這是你寄出去的 (不可否認) - 如何避免其他 ...

網頁被DDOS如何加入身份驗證

Edith avatar
By Edith
at 2020-10-17T14:24
這幾年國外金融網頁被DDOS騷擾,剛好公司在做金融綱頁的項目,怕被打下來,除了用CDN隱藏自己的IP之外 ,可不可以在server 加入身份驗證嗎,要怎麼加 - ...

We Hacked Apple for 3 Months

Tracy avatar
By Tracy
at 2020-10-13T10:57
分享一下都市傳說:We Hacked Apple for 3 Months [0] 簡單來說:有一小群人用了三個月的時間 成功打進 Apple (就是你知道的那個 Apple) 按照他的用詞是 fully compromise both customer and employee application ...

分享器借別人

Daniel avatar
By Daniel
at 2020-09-14T01:19
如題目所言 問題發生在學校宿舍 同房室友手機沒繳錢被停話 原本是要跟我借行動wifi 基於資安與個人權利 還有網路責任問題 不願借他 後來我想說宿舍每人都有自己的 ip 遮罩 dns 對方也只有手機 無電腦 幫他設定好就接到他的網路孔 想請問借分享器是否有要注意的地方 ? - ...