das202311
type
status
date
slug
tags
summary
category
icon
password
misc
帮着看了一眼,有一道题提出来的是一个upx打包的elf,简单分析发现用的
upx-4.2.1-amd64_linux
版本,直接官网找了再upx -d即可,里面base64变表,解出来即可re
letsgo
dll里面upx 3.94,自己
upx file
加一个dll壳,发现了三四个被修改了的标志位,修复即可upx -d
主程序没东西,有两个地方加载了dll,断点查看,这里是抽卡用的逻辑
里面有解压图片的操作
于是发现前面做的没有意义
那就只有这里了:
这里拿到key:
这里是啥呢:
画一下图发现是蒙特卡罗模拟π,下面
COERCE_UNSIGNED_INT64
强制将π解释为整数,然后作为seed生成一组xor用的随机数下面就是一个aes192,这里ida反编译不出来,看看汇编即可找到key和密文
最搞心态的一点是,这里的蒙特卡罗模拟是跑不出来的(而且本身模拟golang也是一个相当麻烦的操作),首先你得猜这里就是π,以及四舍五入的情况,进行一定量的爆破操作,结果这地方魔改源码在rand里面多加了一个异或!
给你逆天逆完了
脚本:
ezpython
...
反编译拿到:
反编译有问题,iv拿不到,但是就差八位
晚点出个完整的python各个版本应对策略(立flag&鸽)dis一下自己看
结合一下就加上
DASCTF{
呗,给他爆一位:DASCTF{D0_U_4ls0_l1k3_7uansH3n}
上一篇
arm初探
下一篇
强网拟态2023
Loading...