攻防世界 REVERSE 新手區/game

下載得到附件
用IDA32位打開
先找下main函式

找到后按下f5進行反匯編

跟進main0 繼續跳轉

看到一個if陳述句,以及判斷的條件推測這就是得到flag的條件

跟進sub_457AB4()

繼續跳轉,看到提示,flag就在這里

根據演算法寫出腳本

#include <stdio.h>
#include <stdlib.h>
int main(void)
{
int a[] = {18,64,98,5,2,4,6,3,6,48,49,65,32,12,48,65,31,78,62,32,49,32,
1,57,96,3,21,9,4,62,3,5,4,1,2,3,44,65,78,32,16,97,54,16,44,
52,32,64,89,45,32,65,15,34,18,16,0};
int b[] = {123,32,18,98,119,108,65,41,124,80,125,38,124,111,74,49,
83,108,94,108,84,6,96,83,44,121,104,110,32,95,117,101,99,
123,127,119,96,48,107,71,92,29,81,107,90,85,64,12,43,76,86,
13,114,1,117,126,0};
for (int i = 0; i < 56; ++i)
{
b[i] ^= a[i];
b[i] ^= 0x13;
printf("%c",b[i]);
}
return 0;
}
運行,得到flag

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/272170.html
標籤:其他
