新手一枚,如有錯誤(不足)請指正,謝謝!!ida巨集定義
載入ida64位
找到main函式,f5反編譯
main()函式裡大概是這情況
其中sub_400690()函式
也就是四個方向鍵
『o』 左移
『o』 右移
『.』 上移
『0』 下移
控制這個,在』 『和』#『中走,不能走到』*'上面,當走到#成功,
在剛開始,申明了乙個 int64型別的v10,然後給v10賦值了0,此時v10的高位和低位可以看作成兩個int型別的變數,並且高位控制列,低位控制行
#define hidword(x) (*((_dword*)&(x)+1))
#define shidword(x) (*((int32*)&(x)+1))
//這兩個相同,都是取x(int64)的高位,因為dword是四位元組,int也是4位元組
剛開始高位和低位都是0,所以初始位置在這個二維陣列的左上角
好了現在開始解題
先取出asc_601060記憶體的字串,然後按照8列1行來排,
由於』 『和』#『還有』*'的寬度不同,所以將他們轉成ascii碼來手動畫路線圖
然後42是不能走的,最後達到35就成功
所以就是→↓→→↓↓←↓↓↓→→→→↑↑←←
然後轉換成對應的字元
替換好之後flag就為
nctf
攻防世界 RE 666
link 002wp 顯然是讓我們構造出flag ida pro,反編譯 key是12h也就是18,這樣就得到了flag的長度 然後就是encode這個函式 我們發現每三個字元為一組進行編碼 第乙個字元 a i 0 a i 0 6 key 第二個字元 a i 1 a i 1 6 key 第三個字元 ...
攻防世界 RE 三題WP
開啟看看,發現需要乙個引數。在ida裡查詢這個luck next time,交叉引用 再次交叉引用,發現到main函式。這裡就是關鍵的對比了,看起來像是v8經過某個處理後與明文表對比。動態除錯看看,下端點在v8,發現我們所輸入的字串沒有被處理過,那就更簡單了,直接最原始的明文對比。每次將執行到這裡會...
Buu 攻防世界re新手區
我。終於考完放假了!幾乎乙個月沒學逆向了嗚嗚嗚,這兩天惡補了一下,但也都是些超級基礎的題 新手村,師傅們請自行繞過 因為我太菜了。1 buu bjdctf2020easy 這道題看起來還是很難的,是偶然看到乙個大佬的wp,真的tql 主函式裡面。什麼都沒有。main函式上面那個 ques的函式應該才...