周报2.0

在研究unity虚幻引擎怎么搞游戏,刷点buu吧

1.内涵的软件

64位

拖进去就有flag,嗯......

xor

输入b,进行异或后和字符串比较,点进global

逐次点进,提取数据,

main函数中的异或是i和i-1,我认为等效于i和i+1异或,但是不包括第一位元素,写脚本

2.reverse3

拖进ida(略微改了一下函数名)

逆向从后往前看,最后结果要和str2一样,提取str2的数据

最终结果是v4拷贝过来的,v4是输入的str进行了一个函数的操作,

点进sub_4110BE函数

找到了一个一看就不太对劲的数组,点进去

很有base64的感觉,基本判断是base64加密,也没有换表的操作

写解密异或

base64

3.helloword

apk,拖进jeb

4.不一样的flag

一眼迷宫

脚本秒了

5.SimpleRev

重点就是decry函数,点进去

src内容变成字符串,但是ida对eif文件有一个大小端序的问题,在函数题内的字符串要转一下,src内容就变成了

同理可得v9的值

分析代码,key是key1和src的拼接,

下面的for循环进行了加密操作

在64到90范围都加上32,实现了大写到小写的转换

key变成adsfkndcls

根据已知内容写脚本

6.[GXYCTF2019]luck_guy

点进关键函数

找到getflag函数

已知flag和f1f2有关系,f1可以直接提取

下面对f2进行了赋值,并进行了操作

搞了半天一直交不上flag,想起来eif文件的大小端序,所以s的内容要反过来写

两部分结合一下就是flag

7.Java逆向解密

class文件,拖进jadx

输入flag赋给str,将str转换为字符数组stringArr,并传递给Encrypt()函数。
Encrypt()函数中的第一个for循环,是将stringArr数组中每个字符的ASCII码加上@的ASCII码值,然后与32进行异或加密,再存放在Resultlist中。
第二个for循环是将 KEY中的每一个元素存放到 KEYList列表中。
所以KEYList就是加密后的flag,只需要对KEYList进行反向操作即可。即把KEY中的每个元素与32进行异或操作,再减去@的ASCII值。

8.[BJDCTF2020]JustRE

运行一下程序,看看有没有什么线索

拖进ida

字符串发现了一个跟程序运行有关的东西

点进去,交叉引用

找到函数

两个%d换成19999和0

(话说点19999下真给flag吗)

9.刮开有奖

刮不开

拖进ida

一点点点进去,发现了正确提示,就在这里开始向上分析,

输入了一个字符串

并且长度是八

v18取代了string的后六位,并通过函数赋值给了v4和v5

点进函数

找到一个数组,跟进

41h提取出来就是A,可以确定base64

第一二位和v7和v10有关,sub_4010F0函数对v7后十位进行了操作,几个参数位置是相连的(看大佬的wp)

点进函数,太长了选择动调

第一次直接给我退出了

一步直接跳到最后了,那就所有if下断点

找到函数结束后的位置,开始动调

搞修改zf的值改变方向

找到v7后的内容

可以知道v7[0]是3,v10也就是第五位是j

将四部分拼接得到flag

10.简单注册器

jeb打开,找到加密函数

11.[GWCTF 2019]pyre

指令将pyc变成py

从字符串 code 的倒数第二个字符开始逐步向前遍历到第一个字符。

12.findit

jeb打开

找到一个带{}的可疑字符串

看题解分析是凯撒密码,但是没找到key的值,用脚本进行爆破

得出key的值是14和flag

13.[ACTF新生赛2020]rome

拖进ida

shift加F12查找字符串

找到关键信息,

交叉引用定位到函数

可以知道flag前缀

有了字符串范围进行爆破

14.rsa

记事本打开key文件

RSA公私钥分解 Exponent、Modulus,Rsa公私钥指数、系数(模数)分解--查错网

脚本解密

15.[GUET-CTF2019]re

工具脱个壳(确实是文件不会手脱)

拖进ida

关键字符串交叉引用找到关键函数

sub_4009AE

算术题

拿脚本跑一下

第2位没有内容,但是把一加进去flag提交成功

flag{e165421110ba03099a1c039337}

16.[2019红帽杯]easyRE

有点意思的题

拖进ida,找到关键字符串,交叉引用到函数

可以看到有一个函数引用了十次,点进去

base64

在找到密文,蛮长的

解密十次

搞出一个网站

在评论区找到flag

17.[MRCTF2020]Transform

flag和一个已知数组进行异或,并打乱顺序了

提取出来两个数组长度不同,在短的那一个补零对齐(后来仔细一想该数组对应着数组顺序,确实确一个0)

18.相册

还有毒

jeb没有找到什么有用的信息,把后缀改成zip找到.so文件

拖进ida

反编译不了

但是可以查看字符串

找到三个疑似base64的密文

解密试一下,发现第二个是flag

19.[FlareOn6]Overlong

下载拖进ida,怀疑它有壳但是它没壳

分析代码

text进行了第6行的操作输出了,点进函数

对第二个参数进行了28位的操作,

点进参数

。。。。。

长度远超28

拖进x32dbg

断点处找到主函数入口

找到push,1c就是28,修改长度(4020B7-402080=AF)

注意要修改前面的,后面的会覆盖掉下面的push

二进制,编辑

修改成功,运行程序得到flag

20.特殊的 BASE64

一看名字猜是base64变表加密

拖进ida查看字符串

直接找到密文和新表,脚本解决

搞搞手动脱壳

21.[ACTF新生赛2020]easyre

upx壳,x32dbg打开

在断点处找到oep

运行到此处

F8*2

内存窗口转到,设置硬件访问断点

运行,利用插件脱壳

先把内容dump下来再修复

找到scy

拖进ida

找到关键字符串

追踪到函数

脚本解flag

22.新年快乐

之前做过的一个题,再手脱一下壳试试

通过断点找到oep

在内存窗口找到设置断点运行找到

利用插件dump和修复

第三个拖进ida

找到flag

总结:手脱在修复上还是有点问题,看着确实没有工具脱的舒服,但是还得练,以后遇见变种壳不能一直靠工具

23.xyctf 砸核桃

北斗壳好像是

x32dbg打开

手脱一下壳

拖进ida

24.xy喵喵喵的flag碎了一地

拖进ida查看提示

第一部分

第二部分

第三部分

25.[NSSRound#18 Basic]GenshinWishSimulator

搞个难的

我靠,原

找到关键,拖进dnspy

引用了sm4加密

脚本解密

编辑类修改内容

这里设定了抽卡概率

修改一下

概率没太搞懂,但是大概10是百分之十的概率,没有找到奖品库的位置

出金了

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值