摘要: 题目简介 题目给出程序 showyourflag 以及用该程序加密后的文件 yourflag。 可以通过命令行执行: showyourflag [infile] [outfile] 其中 infile 为输入文件,outfile 为输出文件。 加密分析 字节变换 程序首先对输入文件的内容进行逐字节变 阅读全文
posted @ 2021-10-26 05:50 Byaidu 阅读(41) 评论(0) 推荐(0) 编辑
摘要: 证书校验 @Override // javax.net.ssl.X509TrustManager public void checkServerTrusted(X509Certificate[] arg4, String arg5) { int v1 = 0; try { while (v1 < a 阅读全文
posted @ 2021-10-18 23:02 Byaidu 阅读(52) 评论(0) 推荐(0) 编辑
摘要: 众所周知,知名项目 OpenSSL 是教科书式的屎山,代码耦合程度高达 99%,项目结构和文档都混乱不堪,自从接口封装成 EVP 之后就彻底放弃治疗了,只有命令行还算好用一点。 当然其实也有更好的选择,比如简单强大的 mbedTLS(PolarSSL) 就深得我心,可惜学校课程要求使用 OpenSS 阅读全文
posted @ 2021-10-15 14:22 Byaidu 阅读(15) 评论(0) 推荐(0) 编辑
摘要: 日志分析 通过 EXCEPTION_ACCESS_VIOLATION 可以判断异常类型是非法内存访问。 触发异常的指令地址位于 EIP=A95A3399,指向非法内存区域。 栈帧底部地址位于 EBP=1127F7C4,可以帮助恢复函数调用栈的结构。 Type: EXCEPTION_ACCESS_VI 阅读全文
posted @ 2021-09-29 01:39 Byaidu 阅读(11) 评论(0) 推荐(0) 编辑
摘要: 日志分析 通过 EXCEPTION_ACCESS_VIOLATION 可以判断异常类型是非法内存访问。 触发异常的指令地址位于 EIP=6931A5CC,对应的汇编指令片段如下: mov eax, [esi] push dword ptr [eax+4] call sub_56BCA6A8 栈帧底部 阅读全文
posted @ 2021-09-14 00:51 Byaidu 阅读(41) 评论(0) 推荐(0) 编辑
摘要: 大概是用 Webpack 给 JavaScript 加了混淆和压缩,逆向还原即可。 原脚本 原脚本解密生成中间脚本,再通过 eval 执行。 eval(function(p,a,c,k,e,r){e=function(c){return(c<62?'':e(parseInt(c/62)))+((c= 阅读全文
posted @ 2021-09-07 22:06 Byaidu 阅读(24) 评论(0) 推荐(0) 编辑
摘要: 简介 由于其他几种恢复符号的方法不是特别可靠,所以就有了这个魔改 Rizzo 的项目。 在不开优化的情况下,STL 模板中大部分函数的二进制实现和具体的实例化类型无关,只要编译选项相同即可正常匹配。 在编译选项对应的前提下,用这个 Rizzo 脚本匹配的成功率大于 95%。 其他方案的缺点 Bina 阅读全文
posted @ 2021-07-15 15:35 Byaidu 阅读(80) 评论(0) 推荐(0) 编辑
摘要: 提取代码 运行 lalamblambdadambda.exe,提示输入 flag。 监控文件读写,发现程序在 AppData\Local\Temp 下创建了 _MEI62682 文件夹。 通过分析可知程序是通过 PyInstaller 打包的 Python 3.8 代码。 使用 pyinstxtra 阅读全文
posted @ 2021-07-06 00:29 Byaidu 阅读(113) 评论(0) 推荐(0) 编辑
摘要: 项目简介 VTIL 项目,代表 Virtual-machine Translation Intermediate Language,是一组围绕优化编译器设计的工具,用于二进制去混淆和去虚拟化。 VTIL 与其他优化编译器(如 LLVM)之间的主要区别在于,它具有极其通用的 IL,可以轻松地从包括堆栈 阅读全文
posted @ 2021-06-18 14:31 Byaidu 阅读(254) 评论(0) 推荐(0) 编辑
摘要: 工具准备 Apktool: https://ibotpeaches.github.io/Apktool/install/ Android SDK: https://developer.android.com/studio/releases/platform-tools 修改源程序 首先使用 apkt 阅读全文
posted @ 2021-06-14 01:37 Byaidu 阅读(89) 评论(0) 推荐(0) 编辑