buffer-overflow

    0熱度

    1回答

    我很難理解這兩個確切的事情。什麼是防止打開。 感謝

    0熱度

    2回答

    我想寫一個非常簡單的程序,強調如何緩衝區溢出漏洞利用可以繞過密碼保護系統。通過輸入一個字符串時,要求輸入我的密碼的第二次,大於15個字符 #include <stdio.h> #include <string.h> int main(void) { char buff[15]; char tempbuff[15]; int pass = 0; pr

    5熱度

    1回答

    我正在通過一些緩衝區溢出漏洞利用示例工作,並編寫了一個基本的易受攻擊的C應用程序來測試:(目標和攻擊者是相同的Kali 2計算機並運行「echo」0「>/proc/SYS /內核/ randomize_va_space「)現在 #include <stdio.h> #include <string.h> #include <stdlib.h> int main(int argc, char

    -1熱度

    1回答

    我有一個實驗室任務,我被卡住了。我必須利用緩衝區溢出來生成具有root權限的shell。有兩個單獨的C文件:stack.c #include <stdlib.h> #include <stdio.h> #include <string.h> int bof(char *str) { char buffer[24]; strcpy(buffer,str); return 1; }

    2熱度

    1回答

    我曾經遇到過在我的滲透測試的職業生涯很多網站在其網站都有嚴格的WAF,但有時可以通過緩衝區溢出的邏輯被繞過。例如,考慮一個查詢 http://example.com/something.php?id=-1 UNION SELECT 1,2,3,4,5,6--+ 考慮易受攻擊的列是直到7。所以,現在,這應該輸出一個易受攻擊的列號作爲輸出,但它會得到錯誤。 現在, http://example.com

    0熱度

    2回答

    我試圖執行緩衝區溢出以將函數A中的調用更改爲函數B.這是否可行?我知道我必須弄清楚我必須輸入多少個字節,直到控制返回指針爲止,並找出函數B的地址。是否可以改變它,以便在「x == 10」後注入函數B的地址而不是函數A? 編輯: 是否有可能在調用fillbuff之後,而不是返回main,我們將它發送給函數B? 任何提示表示讚賞。 int fillBuff(int x){ char buff

    0熱度

    3回答

    所有在我的課本秀緩衝陣列的例子問題被存儲在堆棧,當返回地址改寫這個導致問題。但是,緩衝區總是處於堆棧狀態?我認爲一個數組將被寫入內存中的其他地方,而不是堆棧。

    1熱度

    2回答

    我想運行的程序來測試緩衝區溢出,但程序崩潰時,它顯示我SIGSEGV錯誤如下: 計劃接收信號SIGSEGV,分割過錯。 0x00000000004006c0在主(argc個= 2,的argv = 0x7fffffffde78) 但其中我下面是獲得下面的消息教程: 計劃接收信號SIGSEGV,分割故障。在0x41414141? () 由於這個原因,我無法獲得緩衝區溢出的確切位置。 我編譯我的程序時已

    1熱度

    1回答

    我正在查看aleph's article on phrack magazine。下面的代碼也可以在那裏找到。 我們有一個脆弱的可執行文件,它的代碼是: vulnerable.c void main(int argc, char *argv[]) { char buffer[512]; if (argc > 1) strcpy(buffer,argv[1]); }

    1熱度

    1回答

    我在寫一些shellcode,我想知道如何正確調用駐留在libc中的程序集中的函數。注意下面的地址是系統函數的地址。我確定我有這個地址是正確的,因爲如果我用這個地址覆蓋返回地址,系統被調用成功,但它似乎在程序集中的segfault(它包含在緩衝區中)。如果有什麼不清楚的地方,讓我知道。我試圖在一個可執行堆棧上獲得一個libc函數調用,並且在這裏拉我的頭髮。請注意,代碼到達緩衝區沒有問題,並開始通過