BUU刷题
文章平均质量分 56
1ens
菜菜菜菜
展开
-
[ACTF新生赛2020]fungame
32位无壳简单异或,解出来是Re_1s_So0_funnybut没有那么简单,这里只有16字节。继续分析:这里出现了栈溢出: 4013BA函数的参数source 也就是v4(我们的flag) 大小为15字节 而Destination数组为12字节。最后三个字节被当作返回地址返回,所以调用了相应的函数找这个函数,看下面的全局变量x,交叉应用发现新函数函数名字 40233D就是溢出的字符,注意大小端序应该为3D 23 40 再加上base64解密得到fl...原创 2022-01-20 16:44:53 · 432 阅读 · 0 评论 -
BUU[SCTF2019]Who is he
unity用dnspy打开Assembly-CSharp.dll,分析主要加密分析加密函数,DES加密(key和vi一样),和Base64根据已知数据解密 ,但是在C#中,字符串默认是Unicode字符串,所以转成字节数组,在每个字符字节后都要加一个"\x00"from Crypto.Cipher import DESimport base64d_flag = b'1Tsy0ZGotyMinSpxqYzVBWnfMdUcqCMLu0MA+22Jnp+MNwLHvYuFT.原创 2022-01-19 21:32:20 · 290 阅读 · 0 评论 -
[SCTF2019]creakme (SEH异常处理机制,AES)
32位无壳,放入IDA GetModuleHandleW 获取当前应用程序模块首先分析一下 sub_402320函数,读取当前进程,匹配他的区段为 .SCTF查看第一个函数的汇编代码,发现call了一处函数。但是并没有反编译再来观察一下他的函数结构图,左半部分没有前驱调用,所以左半部分没有编译出来,查壳函数开头,发现_except_handler4 这是SEH异常处理的标志参考:SEH的反调试原理菜鸟版15pb调...原创 2022-01-19 19:30:16 · 1018 阅读 · 0 评论 -
BUU[SCTF2019]Strange apk
分析hello.c文件可以理解为安卓的SMC_0_ 函数,将读取的每一位与 “syclover”循环 异或_ 函数 将读取进行 _0_ 函数操作,并且写入一个新文件读取 getAssets下的文件。对 data 文件进行上述操作,并命名为apk 文件,加入线程中我们来分析对data进行操作,脚本:s = "syclover"count = 0with open('data', 'rb') as f: while (1): ...原创 2022-01-18 22:41:13 · 1786 阅读 · 0 评论 -
buu-[RoarCTF2019]polyre(控制流平坦化,虚假控制流程)
这题一开始拿到人看麻了(不会),写篇wp记录新题型这么一大大大串的函数图,是经过OLLVM 的控制流平坦化混肴.控制流平坦化(Control Flow Flattening)的基本思想主要是通过一个主分发器来控制程序基本块的执行流程,例如下图是正常的执行流程:经过控制流平坦化后的执行流程就如下图:混淆代码块之间的逻辑,将其之前的逻辑混肴成switch嵌套循环,增加分析难度。下面我们需要使用 angr符号执行去除控制流平坦化环境ubuntu20.4defalt.py脚本..原创 2022-01-16 20:05:54 · 2977 阅读 · 0 评论 -
BUU——WMCTF2020 - easy_re
无壳,64位PE程序,放入IDA64静态分析一波,看不出个所以然,IDA动调,没有找到相应的字符串。去查询题目名 perl一个比较小众的语言,我们这里应该是不带参数的情况。看雪文章解压call有字符串scriptx64dbg搜索 script直接点前三个 SCRIPTname就出来flag。。。flag{I_WAnt_dynam1c_F1ag}总结:注意题目的名称以及一切有用信息。动调多尝试od参考:https://blog.csdn...原创 2022-01-16 13:59:11 · 352 阅读 · 0 评论 -
BUU--[MRCTF2020]PixelShooter
第一次遇到的安卓题类型(不会写。。。一个小游戏。试着玩了会,没找到。jadx打开,看了好一会,没看出个所以然来,去IDA看了看so文件,也没有收获最后:看了其他师傅的wp这是一款安卓unity游戏,安卓unity游戏的核心逻辑一般位于assets\bin\Data\Managed\Assembly-CSharp.dll 用jeb打开搜索得到flagflag{Unity_1S_Fun_233}...原创 2021-11-18 19:26:44 · 3890 阅读 · 0 评论 -
BUUCTF——[ACTF新生赛2020]SoulLike——使用angr解
64位无壳。IDApro打开,查看main函数逻辑很简单,我们来查看sub_83A函数。点进去,toobig看了其他博客。我们需要将ida /ctg目录下的hexrays.cfg文件中的MAX_FUNCSIZE=64 改为 MAX_FUNCSIZE=1024改完看函数好长:看最后部分,一大堆异或,然后比较第一个想到了爆破,最近在学angr,尝试用angr解题脚本:import angrp = angr.Project('SoulLike')st = p...原创 2021-11-16 20:17:19 · 802 阅读 · 4 评论 -
BUUCTF-[网鼎杯 2020 青龙组]singal——angr学习记录
学习结合b站的视频环境配置:Ubuntu20.04+python3angr安装教程切换到angr环境:workon angr退出angr环境:deactivate什么是符号执行:符号执行 (Symbolic Execution)是一种程序分析技术。其可以通过分析程序来得到让特定代码区域执行的输入。使用符号执行分析一个程序时,该程序会使用符号值作为输入,而非一般执行程序时使用的具体值。在达到目标代码时,分析器可以得到相应的路径约束,然后通过约束求解器来...原创 2021-11-14 18:20:14 · 1739 阅读 · 1 评论 -
[BUUCTF]Reverse——[网鼎杯 2020 青龙组]jocker
网上大部分是动调,我尝试IDC解一下,无壳,32位,放入IDApro,查看main函数查看wrong和str函数,借出假的flaga=[0x66,0x6B,0x63,0x64, 0x7F,0x61,0x67,0x64, 0x3B,0x56,0x6B,0x61, 0x7B,0x26,0x3B,0x50, 0x63,0x5F,0x4D,0x5A, 0x71,0x0C,0x37,0x66]for i in range(24): if(i&1==0): a原创 2021-11-11 21:40:54 · 261 阅读 · 0 评论 -
BUUCTF crackMe
太菜了 做了好久没做出来,参考其他师傅的解答总结一下题目背景:老规矩,Ex PE打开,32位无壳程序,用IDApro打开;主程序如下:主体是一个while循环,如果我们想让while结束,我们就需要使得两个if成立;我们首先看跟v3有关的loc_4011A0,点进去,发现无法反编译,解决办法IDA无法反编译编译成功之后:发现v3的值一直为1;我们来看看sub_401830函数,主要由两个while构成,我们先来看第一个while主要是把输入的转换成数字并且..原创 2021-11-01 21:58:35 · 785 阅读 · 0 评论 -
BUUCTF firmware
新题型,记录拿到手的是bin文件,也就是二进制文件,其用途依系统或应用而定。一种文件格式binary的缩写。一个后缀名为".bin"的文件,只是表明它是binary格式。一安装binwalk $ sudo apt-get update $ sudo apt-get install binwalk binwalk解压固件binwalk -e firmware.bin(路径)得到下面的压缩包120200.squashfs是一个linux的压缩文件我们用fi.原创 2021-11-09 00:08:32 · 1233 阅读 · 0 评论 -
BUUCTF--[GWCTF 2019]re3学习记录
又是一道很操(没做出来)的题目,学习其他师傅的思路。第一步:常规操作,无壳64位,放入IDApro中。搜索找到main函数,出现红色提示栈存在问题,修改一下栈的值查看main函数,读取,mproct函数,一种保护函数,不是很重要。mprotect函数详解SMC自修改代码在真正执行某一段代码时,程序会对自身的该段代码进行自修改,只有在修改后的代码才是可执行的。在程序未对该段代码进行修改之前,在静态分析状态下,均是不可读的字节码,IDA之类的反汇编器无法识别程序的正常..原创 2021-11-10 21:49:19 · 2527 阅读 · 0 评论