随笔分类 - 刷题记录
二进制菜狗的逆向,希望有好心人收留我这个菜狗
摘要:# [GDOUCTF 2023]Tea * 无壳,64位程序 程序执行回显如下: 我们要输入8个8字节的数据,经过校验
阅读全文
摘要:# 江苏工匠杯bad_python ### Python逆向 拿到附件是一个pyc文件,按照我们常规的python逆向思路,肯定是先试一试能不能uncompyle6反编译. 放IDA中继续分析:
阅读全文
摘要:先查壳,发现是32位程序 丢ida继续分析,发现存在vm_opread函数,根据以往做题经验来看,这个题像是虚拟机保护的题目。 这里首先是将opcode_table(我自己命的名字)复制前456个字节给v4,然后再把v4和114传入vm_opread. 我们可以去看看opcode_table表里面有
阅读全文
摘要:这个题目赛后看了看wp,感觉是能做出来的,第一题的checkin脱完魔改的upx壳,最后卡在数据那块了。 打开遗失的物品发现是一个apk文件. 我们来复习一下apk文件的文件结构 一个APK文件内包含被编译的代码文件(.dex 文件),文件资源(resources), 原生资源文件(assets),
阅读全文
摘要:一个老八把我整不会了,看其他师傅的wp才知道,这个是C#和unity开发的游戏,所以我们用dnspy进行反编译 下面是复现过程 看到是unity程序,上网查了相关参考,一般是用js或者c#进行开发的,c#偏多 net的核心代码在\TPH\TPH_Data\Managed\Assembly-CShar
阅读全文
摘要:前言:争取寒假养成一天一篇的博客的习惯 ELF64,无壳,丢ida继续分析 找到了main函数,是一道输入型的题目 可以看到main函数只有一个关键的函数sub_78A,同时也把我们输入的s字符串传入了进去. 继续跟进 可以看到一开始是有WEMJ的四种情况,有点类似迷宫,但是不确定,但我们可以通过每
阅读全文
摘要:老样子,无壳64位。 然后丢ida继续分析. 在函数列表中找到Main函数,继续分析 一开始是让你输入6个int类型的数,并存入到v6数组中 在外层的循环中,出现了LODWORD和HIDWORD,这里就是指的高位字节,和地位字节。 而为什么上面的dword_601078不用LODWORD呢?这里我是
阅读全文
摘要:老样子,先查壳,ELF64而且发现Upx壳. Tips:现在只会最基本的upx -d 脱壳,虽然现在不会OEP定律法,以后还是要面对的捏 丢kali里面进行脱壳即可 丢IDA继续分析 首先看字符串窗口发现有input your flag字样 跟进函数继续查看 整体函数的逻辑很简单,就是对多个变量输入
阅读全文
摘要:老样子,先查壳 无壳,ELF64位,丢IDA继续分析即可 首先看下字符串表,发现有一大串字符,还有很像Base64索引表的字符串 来到主要逻辑函数 首先发现,v12,v13,v14是一个大数组,不过被IDA拆分成了多个小数组。而通过后面的if语句判断==36也能知道,通过v12,v13,v14这几个
阅读全文
摘要:老样子先查壳。 64位无壳。 丢IDA里面分析 main函数输入字符串,然后将字符串传入flag函数里面去. 然后到flag函数里面去看看 通过在WSL中执行该文件,发现需要我们输入一串字符,然后来判断。 flag的前半段函数我一开始没看懂,到后面才了解到这个是C语言中库函数string.h的伪代码
阅读全文
摘要:二进制菜鸡的逆向入门
阅读全文