国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

編寫并調(diào)試一個(gè)堆棧溢出的程序

這篇具有很好參考價(jià)值的文章主要介紹了編寫并調(diào)試一個(gè)堆棧溢出的程序。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

編寫并調(diào)試一個(gè)堆棧溢出的程序

編寫存在棧溢出漏洞的 c++ 程序:

stack_overflow.cpp

#include <iostream>
using namespace std;
void hello(){
    char name[8];
    scanf("%s",name);
    printf("hello,%s!\n",name);
}
void stack_overflow(){
    printf("Aha,suprise!\n");
}
int main(){
    hello();
    return 0;
}

對(duì)于 GCC 編譯器,可以嘗試使用 -fno-stack-protector? 選項(xiàng)來禁用堆棧保護(hù)。

使用 -g ?使其可調(diào)試

編譯命令:g++ stack_overflow.cpp -o stack_overflow -g -fno-stack-protector?

?文章來源地址http://www.zghlxwxcb.cn/news/detail-843386.html

使用 gdb 查看 stack_overflow 函數(shù)的地址:0x000055555555520e

命令是 info addr stack_overflow?

查看ASCLL碼表可知:0x0e 對(duì)應(yīng)的字符是 SO

?

在終端中,你可以直接輸入 SO 字符的 ASCII 碼,即按下 Ctrl+V,然后輸入 Ctrl+N(對(duì)應(yīng) ASCII 碼的 0x0E),這樣就能夠輸入 SO 字符。

所以該地址的 ASCLL 編碼為:^NRUUUU (小端序)

?編寫并調(diào)試一個(gè)堆棧溢出的程序?

?編寫并調(diào)試一個(gè)堆棧溢出的程序?

前面用 16 個(gè)'a'用來覆蓋 name 緩沖區(qū)和棧上的 EBP,后面用 ^NRUUUU 覆蓋棧上的 EIP

?編寫并調(diào)試一個(gè)堆棧溢出的程序?

如此即可篡改返回地址,執(zhí)行 shellcode

??

?

到了這里,關(guān)于編寫并調(diào)試一個(gè)堆棧溢出的程序的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 在Python中編寫一個(gè)翻譯程序

    本文使用創(chuàng)作助手。 要在Python中編寫一個(gè)翻譯程序,你可以使用 googletrans 庫。以下是一個(gè)使用 googletrans 庫進(jìn)行翻譯的簡(jiǎn)單示例: 在上述示例中,你需要將 要翻譯的文本 替換為你想要翻譯的文本, en 表示目標(biāo)語言為英語。你可以根據(jù)需要指定不同的目標(biāo)語言代碼,如 fr 表

    2024年04月17日
    瀏覽(25)
  • 用python做一個(gè)微信小程序,用python編寫一個(gè)小程序

    用python做一個(gè)微信小程序,用python編寫一個(gè)小程序

    這篇文章主要介紹了python制作小程序制作流程,具有一定借鑒價(jià)值,需要的朋友可以參考下。希望大家閱讀完這篇文章后大有收獲,下面讓小編帶著大家一起了解一下。 大家好,小編為大家解答用python寫的好玩的小程序的問題。很多人還不知道python簡(jiǎn)單的小程序,現(xiàn)在讓我們

    2024年04月25日
    瀏覽(27)
  • 【Linux】編寫第一個(gè)小程序:進(jìn)度條

    【Linux】編寫第一個(gè)小程序:進(jìn)度條

    1.1.1 sleep() 作用:讓程序休眠指定秒數(shù),如: sleep(3); //讓程序休眠3秒 與 Windows 上的 Sleep() 函數(shù)不同 需要包含頭文件 unistd.h 1.1.2 fflush() 作用:刷新緩沖區(qū) 需要傳入一個(gè)流 需要包含頭文件 stdio.h 1.1.3 usleep() 作用:讓程序休眠指定微秒,如: usleep(100000); //讓程序休眠100000微秒(

    2024年02月02日
    瀏覽(22)
  • 1.1 編寫一個(gè)簡(jiǎn)單的C++程序

    1.1 編寫一個(gè)簡(jiǎn)單的C++程序

    ? 博主介紹:愛打游戲的計(jì)算機(jī)專業(yè)學(xué)生 博主主頁:夏馳和徐策 所屬專欄:夏馳和徐策帶你從零開始學(xué)C++ 這段話解釋了一個(gè)C++程序中的`main`函數(shù)的基本結(jié)構(gòu)和功能。 它告訴我們以下幾點(diǎn): 1. C++程序的入口點(diǎn)是`main`函數(shù),操作系統(tǒng)通過調(diào)用`main`函數(shù)來運(yùn)行程序。 2. `main`函數(shù)

    2024年02月10日
    瀏覽(20)
  • 【案例2】編寫一個(gè)智能購物計(jì)算小程序

    【案例2】編寫一個(gè)智能購物計(jì)算小程序

    編寫一個(gè)智能購物計(jì)算小程序,在一家商店有書本、鉛筆、橡皮、可樂、零食五種商品,商品價(jià)格如下。書本12元,鉛筆,1元;橡皮,2元;可樂,3元;零食,5元。假如小明帶了20元,且必須購買一本書,剩余的錢還可以購買哪種商品,可以購買幾件,購買完后又能剩余多少

    2024年01月21日
    瀏覽(22)
  • 二、編寫第一個(gè) Spring MVC 程序

    二、編寫第一個(gè) Spring MVC 程序

    創(chuàng)建 maven 項(xiàng)目,以此項(xiàng)目為父項(xiàng)目,在父項(xiàng)目的 pom.xml 中導(dǎo)入相關(guān)依賴 在父項(xiàng)目上右鍵創(chuàng)建子項(xiàng)目,創(chuàng)建完成之后,在子項(xiàng)目上右鍵選中 Add framework support 找到 Web Application 勾選上 具體步驟 勾選完之后項(xiàng)目會(huì)出現(xiàn) web 目錄 配置 web.xml 勾選完 Web Application 之后會(huì)在 web/WEB-INF 路

    2024年02月13日
    瀏覽(12)
  • 【JSDoc&vscode】使用JSDoc、在vscode中開啟node調(diào)試、使用vscode編寫運(yùn)行Python程序

    【JSDoc&vscode】使用JSDoc、在vscode中開啟node調(diào)試、使用vscode編寫運(yùn)行Python程序

    JSDoc是JavaScript的一種注釋語法,同時(shí)通過JSDoc注釋也可以規(guī)避js弱類型中不進(jìn)行代碼提示的問題 圖形展示JSDoc的效果: ?上述沒有進(jìn)行JSDoc,然后我們a點(diǎn)什么 是沒有任何提示的 上述就是加上?JSDoc的效果 常用的 vscode 其實(shí)內(nèi)置了 jsDoc, 只需輸入 /** 然后就會(huì)有提示,然后直接按

    2024年02月11日
    瀏覽(25)
  • WEB攻防-JS應(yīng)用&算法逆向&三重?cái)帱c(diǎn)調(diào)試&調(diào)用堆棧&BP插件發(fā)包&安全結(jié)合

    WEB攻防-JS應(yīng)用&算法逆向&三重?cái)帱c(diǎn)調(diào)試&調(diào)用堆棧&BP插件發(fā)包&安全結(jié)合

    1、JavaScript-作用域調(diào)用堆棧 2、JavaScript-斷點(diǎn)調(diào)試全局搜索 3、JavaScript-Burp算法模塊使用 簡(jiǎn)單來說就是運(yùn)行后相關(guān)的數(shù)據(jù)值 簡(jiǎn)單來說就是代碼的執(zhí)行邏輯順序 這四種方法針對(duì)不同對(duì)象(搜索一般用來對(duì)付簡(jiǎn)單的,復(fù)雜點(diǎn)的就得用斷點(diǎn)了) -代碼全局搜索 -文件流程斷點(diǎn)(執(zhí)行的代碼

    2024年02月05日
    瀏覽(50)
  • Python編寫一個(gè)程序來計(jì)算 BMI 值。

    Python編寫一個(gè)程序來計(jì)算 BMI 值。

    提示:文章寫完后,目錄可以自動(dòng)生成,如何生成可參考右邊的幫助文檔 文章目錄 前言 一、 BMI 是什么? 二、使用步驟 1.簡(jiǎn)單代碼 2.結(jié)果 總結(jié) Python編寫一個(gè)程序來計(jì)算 BMI 值: 小時(shí)候都會(huì)算的BMI指數(shù),用身高作為基準(zhǔn),計(jì)算出你的體重是過重、標(biāo)準(zhǔn)還是過輕,但是因?yàn)锽MI指

    2024年02月07日
    瀏覽(20)
  • python制作小程序制作流程,用python編寫一個(gè)小程序

    python制作小程序制作流程,用python編寫一個(gè)小程序

    這篇文章主要介紹了python制作小程序代碼寵物運(yùn)輸,具有一定借鑒價(jià)值,需要的朋友可以參考下。希望大家閱讀完這篇文章后大有收獲,下面讓小編帶著大家一起了解一下。 ? 1 importtkinter2 importtkinter.messagebox3 importmath4 classJSQ:5 6 7 def __init__(self):8 #創(chuàng)建主界面 9 self.root =tkinter

    2024年02月14日
    瀏覽(20)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包