skidophrenia.ctfd.io 逆向

By:0x584A

0x01 题目:RE

  • 10分

提示: A lil' confidence boost for the RE newbies.

这题比较简单,将crackme0x00附件下下来之后,对其strings了一下,发现一串写有Password的字符串.

skidophrenia.ctfd.io 逆向_第1张图片
1_1.png

随后,用binaryninja载入后查看.

skidophrenia.ctfd.io 逆向_第2张图片
1_2.png

程序接收外部输入参数,并指向0x804858c,随后将其与0x804858f进行strcmp()函数.

strcmp()函数又是C/C++中的字符串比较函数.

代码原形应该是:

if ($var_40 == "250382"){
    printf("Password OK!:)\n");
}else{
    printf("Invalid Password!\n");
}

提交250382过关.

0x02 题目:RE

  • 10分

提示:无

这题也比较简单,下载附件re0x02binaryninja载入之后看代码.是一个不等于的判断,关键位置0x149a.

skidophrenia.ctfd.io 逆向_第3张图片
2_1.png

十六进制转10进制后是5274.

代码原形是if输入参数不是5274则提示密码错误,正确执行shell.

0x03 题目: RE

  • 20分

提示:无

下载附件re20,看代码.

skidophrenia.ctfd.io 逆向_第4张图片
3_1.png

不难理解,接收外部一个参数,然后调用test()函数.

这题很简单能解掉,两种方式。

  1. IDA F5看伪代码
skidophrenia.ctfd.io 逆向_第5张图片
main函数
skidophrenia.ctfd.io 逆向_第6张图片
test函数
  1. binaryninja打开后,十六进制转十进制
skidophrenia.ctfd.io 逆向_第7张图片
re0x02.png
skidophrenia.ctfd.io 逆向_第8张图片
3_2.png

持续更新中...

你可能感兴趣的:(skidophrenia.ctfd.io 逆向)