目录
11、Java逆向解密
根据标题提示,使用jadx打开class文件并分析代码,通过分析使用脚本求出flag。
12、[GXYCTF2019]luck_guy
exeinfope.exe查看文件是64位无壳,再使用IDA64搜索字符串。
跳转到伪代码部分并进行分析,switch中执行顺序为case 4、case 5、case 1。
使用脚本推算出f2,与f1组合得到flag。
13、[BJDCTF2020]JustRE
exeinfope.exe查看exe文件是32位无壳,IDA32进行搜索字符串。
进入伪代码并分析,将19999和0代入aBjdDD2069a4579中得到flag。
14、刮开有奖
使用exeinfope.exe查看是无壳文件,通过IDA打开搜索字符串。
跳转进入伪代码并进行分析。
分析代码:将v7~v16进行变换后为[51, 67, 69, 72, 74, 74, 83, 90, 90, 97, 110],得到String[0]=51+34='U',String[1]=74='J'。
v4是v18通过base64加密得来的,解密后v18=jMp,则String[5]=j,String[6]=M,String[7]=p。
v5同理可以得到String[2]=W,String[3]=P,String[4]=1。
将上述结果组合String=UJWP1jMp,即flag。
15、简单注册器
jadx打开apk文件,搜索flag{,对关键代码进行分析。
编写脚本得到flag。
16、[GWCTF 2019]pyre
使用pycharm先将pyc文件进行反编译得到py文件,通过分析代码求出flag。
17、[ACTF新生赛2020]easyre
exeinfope.exe查看文件带有壳,使用FFI.exe脱壳后放入IDA中搜索字符串。
进入伪代码并进行分析。
编写脚本得到v5,即v7、v8、v9,将字符连接起来为flag。
18、findit
jadx打开文件找到主要代码,并使用脚本复现,得到flag。
19、rsa
得到flag.enc和pub.key文件,根据标题提示,推测是RSA加密,使用RSA解密脚本破解pub.key文件得到公钥(n,e)。
网站http://www.factordb.com/求出n的p和q,再使用RSA解密求出flag。
20、[ACTF新生赛2020]rome
exeinfope.exe查看文件为无壳,使用IDA搜索字符串。
跳转进入伪代码并进行分析。
通过v12推导出最后v1的值,再编写脚本计算出v1,即v7、v8、v9,最后拼接得到flag。