逆向複習
1.開啟ida匯入檔案(其實首先要放入exeinfo pe中檢視資訊)
2.shift+f12搜尋關鍵字串 如
實際上,跟進下面sub_1400118c0位址,就能找到函式所在。(已然是框圖顯示)
f5檢視loc_140011948的偽**(改正:其實f5已經結合整個框圖)
int64 sub_1400118c0()
for( j =0;
;++j )
sub_1400111d1
("input the flag:");
sub_14001128f
("%20s"
,&str1)
; v3 =
j_strlen
(str2);if
(!strncmp
(&str1, str2, v3)
)sub_1400111d1
("this is the right flag!\n");
else
sub_1400111d1
("wrong flag\n");
sub_14001113b
(&v5,
&unk_140019d00)
;return
0i64;
}
根據 if ( !strncmp(&str1, str2, v3) ) 可以明白,這是讓str1和str2比較。
跟進str2可以發現,flag就是
但根據上面的**,會發現str2被處理過。
大意就是,從str2字串第一位開始遍歷到最後一位,如果是111,則變成48.
111和48是什麼? 其實是ascii碼,選中後按r即可變成字母。(感謝之前瞎玩的經驗)
所以很明顯,實際上的flag就是flag。
思考:有無用dbg進行動態分析的方法?能不能直接從start函式跳轉進目標函式?看偽**其實是種捷徑,但我連這種方法都忘了,並且這裡面還有許多不懂的。
1.什麼是data xref
2.這個rdata的位址命名有什麼含義
這個感覺,就好像直接右鍵記事本開啟檔案,然後搜尋flag一樣莫名其妙。大概就是要這樣不斷積累經驗吧。
data xref
2.這個rdata的位址命名有什麼含義
這個感覺,就好像直接右鍵記事本開啟檔案,然後搜尋flag一樣莫名其妙。大概就是要這樣不斷積累經驗吧。
ps:還有個致命問題,開啟檔案提示0xc000007b錯誤,無法開啟,導致我不能放進dbg動態分析。想解決,為此浪費了許多時間,但都無果。
Django 從零開始
方法1 pip install django 1.6.5 測試是否安裝成功 python import django 1,6,5,final 0 django 使用了 python 標準的 distutils 安裝法,在 linux 平台可能包括如下步驟 tar xzvf django tar.gz...
HTML從零開始
一 標籤 1.使用小寫 2.開始標籤常被稱為開放標籤 opening tag 結束標籤常稱為閉合標籤 closing tag 有效 示例 i reallystrong mean thatem 無效 示例 invalid i reallyem mean thatstrong 二 屬性 1.開始標籤包含...
vim 從零開始
相信大家一開始接觸linux時肯定不知道為什麼要用vim這個奇怪的東西,有各種奇怪的模式,還不如直接用gedit,簡單快捷。有關這個問題大家可以去看知乎大神,今天我在這裡只想記錄一下自己使用vim的過程。雖然vim很強大,但是如果沒用配置最初的狀態是很醜也不怎麼好用的。在配置的過程中,我參考了一下幾...