20230909日报 今天上午帮同学搞个自动预约自习室座位的代码,等到晚上开抢时,效果不是很好,学校服务器太垃圾的,登录请求都需要好久!感觉连手动抢都比不过,确实需要进一步优化脚本。 下午写了些nssctf上的mobile专题,感觉上面的题目没啥质量啊,都是简单的题目,也就有一个题目提及到了加壳脱壳。apk的壳还没试过,这一点需要学习学习。 之后就是给科研打工,不过也好在发现了某小程序的越权行为,感觉只有挖到洞才是这孤 2023-09-09 日报 > 2023年09月 #日报
20230908日报 今天是跟着书籍学习了 JNI 原理,写了相应的学习笔记。有一点我不满意的是,每次写这种类型的博客,我都会花上非常久的时间来完成,每次写得都咬文嚼字,总担心哪里写的不太对,想根据自己的心得写,但又怕是错误的,很是痛苦! 我觉得这是一种病!作为初学者,写的学习笔记存在错误是可以理解的,等学习一段时间后,回过头来看,如果哪里写的不对,更改就行了,干嘛非得这样呢! 直接把原本用于科研的时间给占用了。唉! 2023-09-08 日报 > 2023年09月 #日报
20230907日报 今天在nssctf上写了一些mobile专栏的题目。都是一些比较简单的,有点意思的还得是[羊城杯 2021]Ez_android,因为这道题需要用到jadx动调,修改smali语言,这些知识虽然之前学过,但都差不多忘光了,因为那时连笔记都没有做(这个是需要反思的)。更有意思的是[SWPU 2019]easyapp这道题,native层实现加密函数, JNI动态注册该函数,无法动调(可能是手机版本问 2023-09-07 日报 > 2023年09月 #日报
nssctf-mobile专题(一) [CISCN 2022 东北]crackme_Android整个分析如下图所示: 很简单。就是将38bytes的flag去掉格式后,每4bytes一组进行md5加密,得到的结果组成一个字符串,并于已知字符串比较。所以我们只需要将已知字符串分好组拿到https://www.cmd5.org/上解密即可。分组代码如下: 12345678md5string = '8393931a16db5a 2023-09-07 Reverse #Reverse #Android
20230906日报 刚到一部nexus6p手机,下了同样的版本刷机包,没刷机直接root,发现这手机有avb验证,在开机的时候会验证boot.img是否被修改,于是乎卡在启动界面进不去,fastboot半天,结果发现根本没进bootloader模式(本以为会向之前的手机一样直接在bootloader界面),还是靠汪佬发现的。后面尝试解avb锁,可惜连对应的文件都没有!索性放弃了。 之后就是将昨天晚上问汪佬的问题重新复 2023-09-06 日报 > 2023年09月 #日报
IDA动调SO文件 步骤一:将 android_server 文件 push 到手机中并执行复制IDA目录下的\dbgsrv目录下的android_server和android_server64到真机中并执行: 12345678//复制到真机中adb push android_server /data/local/tmpadb push android_server64 /data/local/tmp//修改应用权限 2023-09-06 Reverse #Reverse
WMCTF2020-easy_re 运行程序有”please input the flag:”提示,但是使用IDA静态分析并没有发现该字符串,说明该字符串是动态生成的。那么就使用x64dbg动调一下。虽然找到了字符串,但是该字符串所在的汇编代码完全看不懂,就比如打印字符串的函数都没见着。很明显,我不会! 看看别人的wp吧。原来这个名字是一种语言。这个题目利用perlapp将perl程序压缩放在资源里面了,执行的时候才会解压出来。 也 2023-09-04 Reverse #Reverse
UTCTF2020-babymips 整个程序是用C++编写的,但不难看出代码的意思,且逻辑简单,整个分析都在图中。 对应解题代码如下: 12345678910111213141516171819202122232425#include <stdio.h>int main(){ //len = 78 unsigned char a1[] ={ 0x62, 0x6C, 0x7F, 0x76, 0x 2023-09-04 Reverse #Reverse
GUET-CTF2019-encrypt 比对RC4加密算法(CRYPTO-RC4加密 - 知乎 (zhihu.com)),可以确认是RC4加密。然后还有一个魔改base64,就是编码的时候给每位数 +61。 题目难就难在初始识别RC4加密,解密过程是很简单,脚本如下: 123456789101112131415161718192021222324252627282930313233from Crypto.Cipher import A 2023-09-04 Reverse #Reverse
WUSTCTF2020-funnyre 分析elf文件,__libc_start_main函数启动 main 函数,init 函数中执行了三个函数,但对我们要求解的flag无影响,影响的是byte_603049,对应main函数中最后的 puts(s) 中的 s 变量。(废话咯) 直接来看 main 函数,发现存在花指令,如下图所示: 第一处很明显,两个跳转都几乎是零距离跳转且第二个指令永假(根本不会执行),nop掉这两个指令。然后是 2023-09-04 Reverse #Reverse