buuctf-1

1、JustRE

首先将文件放入exeinfope查看是否有壳

 

发现无壳,32位

放入ida32位查看

 

没找到什么有用的东西

按shift+f12查找字符串

 

发现一处类似flag的代码

 

按住ctrl+X

 

点击F5

出现伪c代码

sprintf(&String, aBjdDD2069a4579, 19999, 0);

输出两个值,对应前面那个疑似flag的代码

BJD{%d%d2069a45792d233ac}

将第一个%d替换成19999

第二个%d替换成0

最后得到flag

flag{1999902069a45792d233ac}

2、简单注册器

文件为apk,安卓文件放入jade查看

发现有个带flag名字的,点击其中的MainActivity

 

得到一串关键代码

dd2940c04462b4dd7c450528835cca15

 

根据图中代码分析

按照加密代码可以直接运行出flag

照着加密代码写出脚本

x = "dd2940c04462b4dd7c450528835cca15"

stx = list(x)

stx[2] = chr(ord(stx[2])+ord(stx[3])-50)

stx[4] = chr(ord(stx[2])+ord(stx[5])-48)

stx[30] = chr(ord(stx[31])+ord(stx[9])-48)

stx[14] = chr(ord(stx[27])+ord(stx[28])-97)

for i in range(16):

    stx[31-i],stx[i] = stx[i],stx[31-i]

print("flag{"+ ''.join(stx) + "}")

flag{59acc538825054c7de4b26440c0999dd}

3、[GUET-CTF2019]re

首先将文件放入exeinfope查看是否有壳

 

进行脱壳

 

再次放入pe

发现成功脱壳了

用ida64位打开

 

按shift+F12查看

 

 

点击F5

 

 

点击sub_4009AE

 

发现a[1]、a[2]、a[3]……都是可以通过相除得到

 

 

剩下一位a6可以通过爆破获得

 

根据网上大佬的爆破脚本(https://www.cnblogs.com/qsons/p/16904914.html ) 可得a6=1

flag为flag{e165421110ba03099a1c039337}

 
 
posted @ 2023-03-10 19:04  Mu_Chuan  阅读(61)  评论(0)    收藏  举报