DASCTF 2025下半年赛 RE wp
DASCTF 2025下半年赛 RE wpezmac简单逻辑 12345enc = [0x7d,0x7b,0x68,0x7f,0x69,0x78,0x44,0x78,0x72,0x21,0x74,0x76,0x75,0x22,0x26,0x7b,0x7c,0x7e,0x78,0x7a,0x2e,0x2d,0x7f,0x2d]key_start = 0x39 # 57flag = ''.join(chr(b ^ ((key_start + i) & 0xFF)) for i, b in enumerate(enc))print(flag) DASCTF{83c720da35436cc0} androidfile hacker截获了某公司的重要数据包和RSA公私钥,请你帮助他提取藏在数据包中的flag。 RSA Java 层 生成两个 16 字节随机串作为 keyStr 和 ivStr(代码里就是 A() 生成的)。 用 RSA 公钥加密 keyStr、ivStr,分别前缀成 enkey_eniv_,整体作为输入传给 native a_p,得到...
Frida 学习(Frida-Labs)
Frida 学习(Frida-Labs)不能当Ai高手,还得学学 练习项目地址:DERE-ad2001/Frida-Labs: The repo contains a series of challenges for learning Frida for Android Exploitation. Frida 0x1i是random出来的,我们要向输出可以重新调用check 1234567Java.perform(function(){ let MainActivity = Java.use("com.ad2001.frida0x1.MainActivity"); MainActivity["check"].implementation = function (i, i2) { console.log('check is called' + ', ' + 'i: ' + i + ', ' +...
AWDP FIX 及妙妙小工具
AWDP FIX 及妙妙小工具AWDP是一种综合考核参赛团队攻击、防御技术能力、即时策略的攻防兼备比赛模式。 每个参赛队互为攻击方和防守方,充分体现比赛的实战性、实时性和对抗性,对参赛队的渗透能力和防护能力进行综合全面的考量。 AWDP一般分为两个板块,Break(自己的payload打通)和Fix(让主办方的payload打不通)。 AWDP FIX参考了一大堆博客,来不及一一致敬了 0.0 修补示例update.sh 123#!/bin/shmv pwn_fix /home/ctf/pwnchmod 777 /home/ctf/pwn 打包命令 1tar zcvf update.tar.gz update.sh pwn_fix 通用脚本如果目标目录非/home/ctf/可以自行修改。 update.sh 123#!/bin/shcp pwn /home/ctf/pwnchmod 777 /home/ctf/pwn 格式化字符串避免格式化字符串的形式无非两种:一种是"%s",...
Android实战-逆向某li某li视频APP
Android实战-逆向某li某li视频APP当然不是bilibili,是某不良视频APP,没想到不良软件都能上梆梆加固企业版了,因此xposed模块编写失败,被检测了,进修后再来看看吧 Frida hook分析MT看了下是梆梆加固企业版(不知道真假),先看看能不能一把梭 frida-dexdump出现了点问题 JavaScript agent(Frida 注入脚本)在执行过程中被目标进程销毁/结束,导致 RPC 调用失败。 为什么RPC会失败? 原因是: JS Agent 已经死亡,但 Python 还在尝试 RPC 调用。 12345searchdex → RPC 调用 ↓Frida JS agent 被杀死(反调试 / 崩溃) ↓script has been destroyed RPC = 电脑端调用 Frida 注入手机里的 JS 函数。 JS 崩溃 → RPC 失败 → InvalidOperationError。 在安卓中,应用大多运行在不同的进程中,彼此不能直接访问对方的内存。于是 Android 设计了...
RCTF 2025 RE wp
RCTF 2025 RE wpchaos RCTF{AntiDbg_KeyM0d_2025_R3v3rs3} chaos2 有花指令 全patch了 patch要注意下 如main中 不仅红框部分需要nop,绿框也需要 再修改下函数边界即可(不会的话可以问我),然后UCP即可 恢复逻辑,是个rc4 main调用 EnumUILanguagesA 触发所有反调试回调,随后通过 rc4_init / rc4_apply 对 128 字节密文表解密并输出 flag。 0x401440在模块中搜索标记 0x12345678,找到后记录其后 0x80 字节的地址(0x402818),这里存放 RC4 key,初始为 flag:{Th1sflaglsG00ds}。 每个反调试函数都在未检测到调试器时把 key 的一个字节修正成正确值,使其最终变成 flag:{ThisflagIsGoods}: check_PEB_BeingDebugged (0x401090) 把 key[8] 从 ‘1’ 改成 ‘i’。 check_ProcessDebugPort...
某习惯app的脱壳分析与破解
某习惯app的脱壳分析与破解参考了下面的博文学习 某习惯app的Signature分析与vip破解 | twogoat/showmakerの小站 需要app名联系我 几种常见的脱壳相关工具反编译: Jdax:https://github.com/skylot/jadx 同时支持命令行和图形界面,能以最简便的方式完成apk的反编译操作。 jd-gui:http://jd.benow.ca/ 类似jadx Dex2jar:http://sourceforge.net/projects/dex2jar/files/ 类似jadx ApkTool :https://bitbucket.org/iBotPeaches/apktool/downloads/ ApkTool 的最重要的两个作用是解包和打包 ; 解包 : 拿到 APK 文件 , 如果按照 zip 格式解压出来 , xml 文件都是乱码 ; APK 文件打包时 , 会将 xml 文件进行压缩转为二进制文件 , 以减小体积 ; 解包时 , 必须使用 ApkTool 解包工具 , 将二进制数据格式的...
某节拍APP逆向+XPosed模块编写
某节拍APP逆向+XPosed模块编写看文章无意看到了https://twogoat.github.io/2025/04/09/%E8%AE%B0%E6%9F%90%E8%8A%82%E6%8B%8D%E5%99%A8app%E7%9A%84%E4%B8%80%E6%AC%A1%E7%AE%80%E5%8D%95%E7%A0%B4%E8%A7%A3/,这个想着android还没怎么深入实战下,因此写了个这玩意儿 想知道是哪个软件可以联系我 只含java层逆向,软件中含pro字样吗 ctrl+shift+f搜一下搜到isPro,判断是否是pro会员 123456789101112131415function main(){ Java.perform(function () { var UserCache = Java.use("com.eumlab.prometronome.baselib.util.UserCache"); // Hook isPro() ...
华为杯第四届中国研究生网络安全创新大赛 Megrez RE WP
“华为杯”第四届中国研究生网络安全创新大赛 Megrez RE WP本次研究生赛我们排名第6,解出8题成功晋级这是与我相关的一些题目 ReverseYJS-GoEncIDA 打开,直接转到main函数看逻辑 main_main中的逻辑校验 如图,并且选择前16位作为key main_encryptWithAES看出来为AES加密,并且为CBC模式 最后进行Base64编码 密文为base64的串交叉引用即可找到 key在这里做了变换 exp: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051import base64from Crypto.Cipher import AESKEY_SOURCE = bytearray(b"MySecretKey123451234567890abcdef/proc/self/auxv")STATE_BYTES = bytes([ 0xAA, 0xBB,...
NSSCTF 2025 re wp
NSSCTF 2025 re wpez_teaez_tea不ez 没改附件版本: 动调有几个地方需要绕过 对isDebuggerPrensent进行交叉引用,对isDebuggerPrensent的绕过方法基本是改zf标志位,此外还有一个地方绕过需要把0x70改成0x71修改寄存器 此题别用patch方法,因为上面那个0xcccc貌似是crc校验 同时看到这有个exit也交叉引用下 这里也有个exit 绕过后经过动调发现,这个方法会对key进行修改,我们可以断再fmt这个方法上就可以发现dst的地址是key的地址 这块如何修改的key? 是tea_encrypt_wrapper这个方法的机器码值+78然后patch到了key 另一种发现hook的方法,当你写了解密脚本发现不对,可以到处交叉引用看看 可以返现这个方法被神奇的其它地方交叉引用了 最后写解密脚本 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647delta =...
IDA e语言逆向初探-以一道CTF题为例
IDA e语言逆向初探-以一道CTF题为例题目附件可以留言找我拿 IDA易语言反编译插件E-Decompiler - 吾爱破解 - 52pojie.cn e语言逆向,安装这个插件然后运行IDA分析 转到可疑函数 url解码后是HXB{YAO-YAO-QIE-KE-NAO} 假的 还发现 这几个串 交叉引用过去 有点像校验了 sub_404196应该是加密函数 有点像rc系列的加密,不知道是不是Rc4,可以猜测它为流加密的算法 如果是流加密的算法最好的解密方式就是再跑一边,看看动调能不能出 x32dbg打开,直接断点到这个大函数调试 调试可能有反调试,注意开下sharpod这个插件 基于假设我们可以试试看直接把密文patch回去 可以看到我输入的123 下面在ebp-4的地方是密文 在内存中修改为下面那段,注意的是patch记得别把最后的00字节给删了 要修改的字节粘贴进去这个串 一开始patch错了patch的第一个字符是88,后面也没保存结果所以是HXB{HAHA-HEHE-HEIHEI-HUOHUO-XIXI} 12345enc =...




