exploit

    0熱度

    1回答

    我只是試圖檢查GDB中的內存。比如說,我用「A」填充一個緩衝區,然後我找到我的「A」的起點,然後將這個內存值存儲在小數點中。 然後什麼奇怪的是我並沒有改變任何事情,又試了一次,而 「A」 的出現(0x41414141 ...) 這是GDB顯示... x/ 0xbffff558 0xbffff558: 1094795585 爲什麼會發生這種情況?謝謝。

    0熱度

    1回答

    我一直在通過'Shellcoder的手冊:發現和利用安全漏洞',可以找到here,但我沒有完全理解p.179(全球p.205)上可以找到的漏洞之一here。這個漏洞攻擊了第175頁上的脆弱程序(全球第201頁)。 作爲漏洞利用的一部分跳轉到的shellcode以「\ x90 \ x90 \ x90 \ x90 \ x01 \ x90 \ x90 \ x6A \ x30 \ x59」開頭。我用thi

    1熱度

    1回答

    我正在測試一個網站的利用。 該漏洞與PHP對象注入有關。 錯誤使用unserialize()可能會導致這些問題。 而且,我發現下面的官方PHP手冊警告: 他們認爲我們應該用json_encode()和json_decode()。 但是,我想知道爲什麼json_encode()和json_decode()比serialize()和unsrialize()更安全?

    0熱度

    1回答

    我正在爲易受攻擊的程序(堆棧溢出,打開NX和ASLR)編寫一個rop鏈。 我通過觀察gdb peda上的堆棧指針來執行我的小工具。除非遇到小配件mov[eax], edx; ret,否則它運作良好。這個小工具得到執行,但是之後有一個push ebx,即使我沒有在我的ROP鏈中放置任何類似的小工具。最後,我的利用不起作用。 我已經嘗試過不同的寄存器這條指令,總是有下面的push ebx,我不知道爲什

    0熱度

    1回答

    你是否只是使用strace和調試器等工具來反彙編和查找系統調用,然後閱讀反彙編找到例如緩衝區溢出?這是你所能做的嗎?我的意思是畢竟你沒有源代碼。 如果有人可以對這個特定的話題有所瞭解,我將非常感激。 謝謝。

    2熱度

    1回答

    Data Execution Prevention可以繞過哪些方式?如果有人能深入瞭解它的工作原理,我將不勝感激。

    1熱度

    1回答

    scanf_s("%s", a, 10); 此代碼將保護我們的程序免受緩衝區溢出攻擊。 但沒有 scanf_s,我們可以這樣寫: scanf("%9s", a); 我覺得這個代碼也將阻止緩衝區溢出。這是真的? 那麼兩種方式有什麼不同? 如果scanf的寬度規範阻止緩衝區溢出,爲什麼我們稱原始scanf「不安全」?

    0熱度

    1回答

    我試圖利用與下面的C代碼的printf漏洞:在0x804a00c #include <stdio.h> #include <stdlib.h> /* gcc -fno-stack-protector -z execstack -o test test.c */ void attack(){ printf("Dropping to shell...\n"); } int

    0熱度

    1回答

    我想解決CTF挑戰,我需要使用ret2libc。問題是,當我嘗試使用strcpy將一些文本放入緩衝區以供後期使用時,似乎不起作用。 挑戰框仍然容易受到「ulimit -s unlimited」的限制,所以我們可以修復libc地址。這裏是我目前的Python代碼: from pwn import * def r2lc_print(write_buff,read_buff): strcp

    0熱度

    1回答

    我試圖在Ubuntu 14.04執行Ruby代碼,並在執行收到錯誤, '':未初始化不斷BSON ::文檔(NameError) 代碼是, #!/usr/bin/ruby require 'uri' require 'bson' require 'mongo' b = BSON::Document.new b["$query"] = {"token" => {"$gt"=>""}}