BUUCTF--Reverse(11~20)

目录

11、Java逆向解密

12、[GXYCTF2019]luck_guy

13、[BJDCTF2020]JustRE

14、刮开有奖

15、简单注册器

16、[GWCTF 2019]pyre

17、[ACTF新生赛2020]easyre

18、findit

19、rsa

20、[ACTF新生赛2020]rome


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。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值