<progress id="yueoz"><code id="yueoz"><xmp id="yueoz">

      1. 吾愛破解 - LCG - LSG |安卓破解|病毒分析|www.13ee.cn

         找回密碼
         注冊[Register]

        QQ登錄

        只需一步,快速開始

        搜索
        查看: 2532|回復: 26
        上一主題 下一主題

        [原創] Windows逆向分析入門(二)——原理篇

        [復制鏈接]
        跳轉到指定樓層
        樓主
        KongKong20 發表于 2020-6-22 10:57 回帖獎勵
        本帖最后由 KongKong20 于 2020-6-23 10:28 編輯

        前言
          正向開發,是先寫代碼,再編譯成軟件。而逆向分析,到手的只有軟件。從軟件入手,推測對應的代碼,需要了解一下編譯之后的軟件是怎么跑起來的。

        軟件運行過程
          1、軟件加載到內存。
          2、CPU讀取內存的指令。
          3、根據指令,再讀取數據,進行運算。
          4、運算的過程,數據是存在CPU里面的寄存器。
          5、運算過程,用到另一個功能,需要保存當前環境,存到堆棧。
         。ㄟ@里涉及操作系統和計算組成原理,大概了解,心里有底就好)

        代碼語言的變化
          1、C/C++語言:高級語言,給人看的
          2、匯編語言   :低級語言,給機器用的
         。嫦蚍治,接觸多是匯編語言, 需要自行學習下)

        軟件加載過程
          磁盤 >>內存>>寄存器
          1、代碼編譯成軟件,先放在磁盤(C盤,D盤這些)
          2、開始運行的時候,就會加載進內存(平時說的內存條)
          3、真正運行的是在CPU(也就是所謂的芯片),里面存數據的地方叫寄存器。

        軟件的構成
          軟件的外部
            包含:一個主要程序(exe后綴),多個獨立庫(dll后綴)。
            內存一開始加載exe,有必要的時候,exe再把dll加載進內存來。
            exe或者dll在內存的開始位置,叫做基址。(每次加載,隨機放置,基址不固定)
            exe或者dll里面和基址的距離,叫做偏移。(每次加載,內部不變,偏移固定)
             
            打個比喻:exe和dll相當小尺子,要放在內存這個大尺子上。
            大尺子上只要有空位,小尺子就可以隨便放。
            小尺子不管怎么放,里面的刻度固定的。
            
            
          軟件的內部
            軟件 = 代碼 + 數據
            數據 = 靜態數據 (數據不會變)+ 動態數據 (數據會改變)
            動態數據 =  全局數據 (多個函數共用)+ 局部數據(單個函數私有)

            代碼和靜態數據在軟件運行過程不會改變,位置固定,可以方便使用。
            全局數據,因為是共用的,位置固定,也可以方便使用。
            所以這三種的偏移是不變的。

               內存地址 =  基址 + 偏移。
            基址可以用GetModuleHandle得知。
            偏移又是不變的,內存地址也就可以算出來了 。

            而偏移會變化的局部數據,就不能直接算出來了。
            局部數據,是軟件運行過程中,臨時生成又銷毀的。
            所以要獲取局部數據,只能在軟件的運行過程進行攔截。(也就是所謂的HOOK)

        逆向分析目的
          逆向分析的兩個目的
            1、調用功能
            2、獲取數據

          通過上面的原理可以知道
            1、調用功能
              代碼是固定的,找到偏移,就可以調用。
            2、獲取數據
              對于全局數據,找到偏移,就可以得到。
              對于局部數據,需要攔截,才可以得到 。
             。〝r截的是代碼,所以要找代碼的偏移)

          所以,逆向的核心點,是找固定的偏移。

        下一篇,找偏移的方法。

        參考資料(下功夫,基礎扎實,逆向才順手)
        匯編:http://c.biancheng.net/asm/
        反匯編:《C++反匯編與逆向分析技術揭秘》
        函數調用:https://blog.csdn.net/zhongguoren666/article/details/7586074?utm_source=blogxgwz6

        免費評分

        參與人數 19吾愛幣 +17 熱心值 +16 收起 理由
        lm222 + 1 + 1 尺子的比喻太棒了
        JohnusYang + 1 謝謝@Thanks!
        pxxkm + 1 + 1 我很贊同!
        tigerssj + 1 我很贊同!
        xx1990 + 1 + 1 這是高手
        風中找感覺 + 1 + 1 謝謝@Thanks!
        jeanytonic + 1 + 1 呆萌新人,正是需要這樣的文章,謝謝
        macolma + 1 謝謝@Thanks!
        小兔一樣的小白 + 1 + 1 我很贊同!
        2595453382 + 1 用心討論,共獲提升!
        Snprszy + 1 + 1 期待樓主大作。
        musicer03 + 1 用心討論,共獲提升!
        dglbl + 1 + 1 熱心回復!
        china-ray + 1 + 1 用心討論,共獲提升!
        霧滿攔江 + 2 + 1 用心討論,共獲提升!
        媚眼的丹客 + 1 + 1 用心討論,共獲提升!
        lrv + 1 + 1 苦盡甘來,贈人玫瑰手留余香!
        朱朱你墮落了 + 1 期待樓主大作。
        smilingk + 1 + 1 用心討論,共獲提升!

        查看全部評分

        發帖前要善用論壇搜索功能,那里可能會有你要找的答案或者已經有人發布過相同內容了,請勿重復發帖。

        推薦
        Hmily 發表于 2020-6-23 09:55
        KongKong20 發表于 2020-6-23 09:50
        連文章怎么寫,都要管?對你來說是短,對別人不一定。

        如果文章段落都這樣拆分成一堆帖子,那版塊都會占滿了,影響閱讀其他文章,就跟軟件更新一個版本號發一個帖子一樣,為了刷帖子數和閱讀量就使勁更新版本號一個道理,雖然只是軟件區明令禁止這種行為,技術區沒做要求,但還是應該共同優化這種問題,作為管理確實要管,另外圖片的問題也得處理一下。
        推薦
         樓主| KongKong20 發表于 2020-6-23 10:19 |樓主
        Hmily 發表于 2020-6-23 09:55
        如果文章段落都這樣拆分成一堆帖子,那版塊都會占滿了,影響閱讀其他文章,就跟軟件更新一個版本號發一個 ...

        澄清下
        我只是單純分享,沒刷沒掛
        分章節,也是為了方便新手閱讀
        你站在管理的角度,防止刷帖沒毛病
        但是不是刷帖的標準,不應該是字數問題吧

        點評

        你先把圖片問題解決了行嗎  詳情 回復 發表于 2020-6-23 10:20
        沙發
        慵懶丶L先森 發表于 2020-6-22 11:29
        3#
         樓主| KongKong20 發表于 2020-6-22 11:53 |樓主
        慵懶丶L先森 發表于 2020-6-22 11:29
        通俗易懂,支持!期待更多的干貨

        參考資料可以先自行了解下,后續會用上的
        4#
        L__ 發表于 2020-6-22 13:07
        通俗易懂,期待更多的干貨,支持并點贊
        5#
        china-ray 發表于 2020-6-22 13:37
        大白話看明白了,感謝!
        6#
        musicer03 發表于 2020-6-22 14:15
        新的逆向教程越來越少了
        7#
        Snprszy 發表于 2020-6-22 15:44
        通俗易懂,支持!期待更多的干貨~
        8#
        薛定諤消失的弦 發表于 2020-6-23 00:36
        這是32位匯編內容?
        9#
        刀大喵 發表于 2020-6-23 08:06
        講的很好 小白福利 支持樓主
        10#
        Hmily 發表于 2020-6-23 09:31
        @KongKong20 圖片盜鏈無法顯示,上傳本地,另外你這些文章都很短,就別分那么多帖子了,合并成一個,分成段落就行了。
        您需要登錄后才可以回帖 登錄 | 注冊[Register]

        本版積分規則 警告:本版塊禁止灌水或回復與主題無關內容,違者重罰!

        快速回復 收藏帖子 返回列表 搜索

        RSS訂閱|小黑屋|聯系我們|吾愛破解 - LCG - LSG ( 京ICP備16042023號 | 京公網安備 11010502030087號 )

        GMT+8, 2020-7-13 01:42

        Powered by Discuz!

        Copyright © 2001-2020, Tencent Cloud.

        快速回復 返回頂部 返回列表
        快三开奖结果