• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            yehao's Blog

            程序執行時,棧指針ESP和棧頂指針EBP的變化

            進入main函數的時候,
            1)保存ebp指針
            2)使得ebp->esp
            3)保持現場ebx,esi,edi
            4)進入一般函數的時候,push參數,例如有n個參數 esp = esp - 4*n
            5)push函數返回地址 esp = esp -4
            6)調用函數 EIP指向函數地址,jmp 函數地址
            7)Push ebp 保存 (故有[ebp+8]就是第一個參數的內容)
            8)使得ebp ->esp, esp = esp - 40h - 臨時變量需要字節數(有字節對齊問題)
            9)保持現場ebx,esi,edi
            10)返回值=》eax
            11)恢復現場,就是依次pop出edi,esi,ebx,
            12)Esp = ebp
            13)Pop ebp
            14)pop 函數返回地址(即ret),EIP指向下個指令地址 esp = esp +4
            15)Esp + n*4 (每個字有4個字節);push是按字操作的,32位機器

            知道這些后,程序的溢出就比較容易做了。


            http://hi.baidu.com/goodallen/blog/item/1a2e23fc07b7e487b901a0cb.html/cmtid/494b414bcea227fc82025ca2

            posted on 2012-02-29 17:17 厚積薄發 閱讀(1325) 評論(0)  編輯 收藏 引用 所屬分類: C/C++

            導航

            <2025年5月>
            27282930123
            45678910
            11121314151617
            18192021222324
            25262728293031
            1234567

            統計

            常用鏈接

            留言簿

            隨筆分類

            文章分類

            文章檔案

            搜索

            最新評論

            91精品国产综合久久香蕉 | 7777久久久国产精品消防器材| 日韩久久无码免费毛片软件| 久久夜色精品国产| 无码精品久久久久久人妻中字| 久久国产精品国产自线拍免费 | 午夜精品久久久内射近拍高清| 伊人久久精品影院| 久久99国产精一区二区三区| 日本欧美国产精品第一页久久| 久久丫精品国产亚洲av| 久久青青草原精品国产不卡| 狠狠色丁香久久婷婷综合五月| 久久久久久亚洲精品不卡| 亚洲精品无码专区久久久| 99热成人精品免费久久| 久久久一本精品99久久精品88| 久久综合九色综合欧美就去吻| 久久久噜噜噜久久熟女AA片| 久久天天躁狠狠躁夜夜不卡| 久久精品国产精品亚洲毛片| 精品久久久久久久国产潘金莲| 2020最新久久久视精品爱 | 国产亚洲精品久久久久秋霞| 99久久精品国产一区二区| 久久偷看各类wc女厕嘘嘘| 久久亚洲国产最新网站| 久久精品国产亚洲7777| 久久婷婷综合中文字幕| 99久久国语露脸精品国产| 久久精品国产精品亚洲毛片| 国产精品99久久久精品无码| 久久免费看黄a级毛片| 国内精品久久久久影院老司| 婷婷国产天堂久久综合五月| 精品人妻伦一二三区久久| 国产成人久久777777| 久久成人精品| 国产精品亚洲综合久久| 国产成年无码久久久免费| 麻豆AV一区二区三区久久|