簡體   English   中英

linux緩沖區溢出-剝削的藝術到老?

[英]linux buffer overflow - Art of Exploitation To Old?

我正在讀《剝削的藝術》一書。

這是一本好書,但是到目前為止,我遇到的每一個漏洞都對我沒有作用。 我認為我遵循這封信,因為沒有人是完美的,所以我可能仍然犯了一個錯誤。

但是我碰到一些評論說,自從本書編寫以來,Linux OS已經分配了更新。

因此,我想問問是否有人知道書中的示例是否過時,或者是否有人應該遵循這封信,或者我是否必須設計一些代碼才能使其正常工作?

注意:我已經閱讀了第60頁。

我試圖通過寫explorer.c代碼以及使用perl手動溢出程序。

這是我一直試圖溢出的代碼:

int main(int argc, char *argv[])
{
char buffer[500];
strcpy(buffer, argv[1]);
return 0;
}

好吧,我還沒有讀過這本書,但是從總體上來說我可以說。

零日漏洞利用(在最新更新的軟件版本上起作用)不會持續很長時間,並且通常在軟件作者出版任何此類書籍之前(書籍的作者通常會對其進行報告)使其無法使用。 操作系統/編譯器添加了新的和新的保護,但是這些保護大多數僅對新編譯的代碼有效(這意味着舊代碼即使在新系統上也仍然易受攻擊),並且無論如何都可以逃避這些保護(難度要大得多)。

至於你的例子。 這取決於您要如何利用該漏洞。 但是,只要僅涉及基礎學習,就在編譯時嘗試關閉DEP,ASLR和已經提到的SSP,這應該使它容易工作。 如果使用的是gcc,則: -fno-stack-protector-z execstack -O0-g可能有助於發現其他問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM