二进制CTF
文章平均质量分 68
Air_cat
keep go on
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
DASCTF 2024 10月 Reverse 完成笔记 附题目
题目链接:https://github.com/Airrcat/long_long/tree/main/DASCTF_2024_10查PE32位无壳开始分析看起来很像加壳了字符串未有暴露信息,但是段中有一个themida发现是一个壳,直接去找脱壳机一些脱壳工具(Magicmida)是动态启动后脱壳,会被程序的反调试检查到后来发现了这个静态脱壳工具unlicensemain函数默认反编译不了,有个花处理一下把jmp地址的e8 patch成90即可上头一个cipher,底下两个处理函数然后原创 2024-11-21 14:53:50 · 974 阅读 · 2 评论 -
DASCTF X GFCTF 2024|四月开启第一局 —— re前三题wp
DASCTF X GFCTF 2024|四月开启第一局 re前三题writeup原创 2024-04-21 21:11:30 · 1227 阅读 · 0 评论 -
DASCTF NOV - re - babytea - writeup
DASCTF NOV X联合出题人2022年度积分榜争夺赛逆向题babytea的writeup原创 2022-11-28 12:20:09 · 798 阅读 · 0 评论 -
GACTF2020 - Wannaflag wp
GACTF2020 - Wannaflag题目链接十分传统的一个winapi逆向。最近也很少见了,对新人有难度但有趣。本篇的一些细节之处省略截图,但我会把步骤写明白。若复现不出来可评论或私信。程序拿到手还有点大,443kb同时附带了一个flag.bin 进去,打开发现是可读的一串字符串。很显然是被加密过了。查pe,32位无壳 vs编译(这里我用的exeinfo)ida一打开就定位到了WinMain。这里很容易看出来其只调用了两个自定义函数 – 背景音乐(1b20),消息处理(2280)进消息原创 2020-12-30 23:17:37 · 372 阅读 · 0 评论 -
AWD 一个RE手的PWN机防守有感
AWD 一个RE手的PWN机防守有感①遇到free,不要犹豫,直接patch,我再说一遍,直接patch,全patch,通通patch②不要试图去干涉数值,除非你十分做好了check down的心理准备原创 2020-12-12 21:00:27 · 1886 阅读 · 2 评论 -
HITCTF2020 -- re1 HelloReverse wp
程序分析打开,没什么用的input flag:ida 打开,定位到main函数:作为一道基础re,前面的内容都没什么好说的,输入,长度校验。但后面的内容就开始诡异了起来。首先是给v8赋值的那个变量嗷,不对劲啊不对劲:想来应该是在入口点进行初始化了,一看果然是。打开看看完事一半嗷在比赛的时候想的是先不管他,看看底下的程序一个逻辑我好像看懂了,但其实没看懂的变换。简单的来说是输入串异或来以获去,然后还要和上面那个很迷幻的玩意进行一个比较。这个很迷幻的玩意进行了左移操作,但这个左移菜菜原创 2020-12-11 21:38:40 · 528 阅读 · 0 评论 -
2020 ciscn 东北分区赛 re题解
唉,居然没师傅出re题,悲伤此题考点在于抓取或解密出迷宫,这里我用的原函数进行生成,改改几个定义就可以输出迷宫了:#include<stdio.h>#include<string.h>#include<windows.h> #include<string.h>#include<tchar.h>#include<stdint.h >//#+OXJ xnB1 QWT4 9cnW cGFB ZOjn yfZo ZV1m 7+/原创 2020-09-19 21:35:19 · 512 阅读 · 0 评论 -
BUUCTF逆向题练习记录(wp) --(4)(偷懒三题
[GKCTF2020]BabyDriver简单win驱动。拖ida仔细分析即可。注意寻找关键函数。[FlareOn6]Overlong这题个人认为非常有意思考察的点在于①发现数组长度远大于给的长度参数0x1c②通过动调直接得出结果。这一题还给了一个附件,提示运用正确的方法进行解密可以很快得到flag,而我们知道,ctf的re题中,最快的解密往往就是动调一把梭。需要大胆猜想,大胆尝试。[WUSTCTF2020]Cr0ssfun额,无脑拼接嗷...原创 2020-09-18 21:59:26 · 613 阅读 · 0 评论 -
BUUCTF逆向题练习记录(wp) --(3)WUSTCTF2020&&level1-4已完成
注:funnyre待我搞懂angr后来解WUSTCTF2020-level1解密嗷hexData = [0, 198, 232, 816, 200 , 1536 , 300 , 6144 , 984 , 51200 , 570 , 92160 , 1200原创 2020-08-28 11:56:27 · 605 阅读 · 1 评论 -
BUUCTF杂项(misc)题练习记录 -- (2)
你竟然会赶我走010拉到底嗷,从大小看是藏东西了,结果漏了flag:flag{stego_is_s0_bor1ing}乌镇峰会种图010拉到底嗷,又漏了flag:flag{97314e7864a8f62627b26f3f998c37f1}rarrar包,win可用ARCHPR爆破 链接:acat密码8795flag:flag{1773c5da790bd3caff38e3decd180eb7}qr直接扫,签到题flag:flag{{878865ce73370a4ce607d21ca01原创 2020-08-22 14:35:29 · 633 阅读 · 0 评论 -
2020国赛部分re -- wp
re1:idapy 扒校验数组:from __future__ import print_function#支持py2使用py3的函数from __future__ import print_function#支持py2使用py3的函数sea = 0x404020for i in range(sea,sea+0xa8,4): print('0x%x'%(Byte(i+1)),end="") print(('%x'%Byte(i)+','),end="")注意部分元素补0from z原创 2020-08-21 19:05:26 · 763 阅读 · 0 评论 -
记那些我做逆向题常用到的idapy脚本
解密重覆盖:sea = ScreenEA()end =str = "123"# d = 0for i in range(sea,end): PatchByte(i,(Byte(i)^str[d%3])) d += 1输出十六进制数组:from __future__ import print_function#支持py2使用py3的函数from __future__ import print_function#支持py2使用py3的函数sea = ScreenEA()fo原创 2020-08-21 12:21:02 · 653 阅读 · 0 评论 -
BUUCTF逆向题练习记录(wp) --(2)
注:常规处理,如upx脱壳不注明。[GWCTF 2019]xxor主要代码1: for ( i = 0; i <= 5; ++i ) { printf("%s", "input: ", (unsigned int)i); __isoc99_scanf("%d", (char *)&v6 + 4 * i); // 每个存四个字符 } v11 = 0LL; v12 = 0LL; v13 = 0LL; v14 = 0LL; v15 = 0LL;原创 2020-08-06 16:48:54 · 1034 阅读 · 0 评论 -
BJDCTF2020 --逆向题练习记录(题解wp)
[BJDCTF2020]JustRE题拿到了,看起来这种点一万次的东西可能会藏东西在资源文件里,Resources Hacker看了看没东西。那正常来看看,Exeinfo 32为VC6无壳。查串(其实直接在处理函数那边看一眼就看到了)后在处理函数里找到猫腻,这里需要点20000次,跟我连点器比划比划?(x)其实直接可以读出来,这里的flag是19999,0拼接那个明文。BJD{1999920690a45792d233ac}[BJDCTF2020]easy起手几个步骤就先忽略,,开头就被“Ca原创 2020-07-30 09:23:15 · 737 阅读 · 0 评论 -
CTF解题小记--心得记录1
CTF解题笔记 (Aircat)RSA题没什么好说的,解析后分解大素数,py脚本解密。(逆向不会考高难rsa吧,,大概)参buu还是xctf的某一题import gmpy2import rsa e=65537n=86934482296048119190666062003494800588905656017203025617216654058378322103517p=285960468890451637935629440372639283459q=30400874160460192449432原创 2020-07-27 09:11:14 · 649 阅读 · 0 评论 -
论解RSA题所需的gmpy2和rsa的安装与使用事项
折腾了差不多一个晚上终于算是把环境配好了,这里列出几点经验谈:一、正常的pip安装不行的时候,gmpy2可以安装其2.0.8版本的安装包,在gmpy2下直接能跑二、rsa如果提前安装好了之后,似乎不太能安装py2的版本,会使得py2不支持rsa。三、想要让环境同时安装好gmpy2和rsa,还是得用离线安装的方式,并且是对特定工程离线安装(能否全局支持这里我没做尝试)。那么这里就得在pychram的工程目录里的venv\Scripts下进行安装,比如我的是E:\PY\5\venv\Scripts。这是就原创 2020-05-16 00:51:08 · 857 阅读 · 0 评论 -
Bugkuctf--逆向第三题游戏过关题解
题目链接:https://ctf.bugku.com/challenges先让我们来打开文件既然题目都说是游戏过关了,那就玩玩这个游戏呗(雾游戏还是很简单的,但显然这道题应该用逆向的思维来做(废话正式部分: 逆向的题拿到手一般能考虑的工具(方法)就是通过ida(静态分析)或者通过od(动态分析),因为ida还搞不太懂(菜鸟),然后看了下盲猜...原创 2019-04-01 22:12:23 · 2234 阅读 · 0 评论 -
南邮ctf题解--逆向第一道Hello,RE!
题目链接:http://ctf.nuptzj.cn/challenges# 先总结一下,南邮的题横向对比一下真的是简单(第一次自己做出来的题,泪目)。下载了源程序之后,题目都明示了用ida,那就用ida呗 可以看到printf的那部分地下是一大堆字符串,很明显flag就在这里,不过是用ascii码的形式而已,接下来有两种方法,一个是照着这个翻译(比较蠢),另一个就是利...原创 2019-04-02 17:40:41 · 2306 阅读 · 0 评论 -
BugkuCTF逆向EASY_RE题解
题目链接:https://ctf.bugku.com/challenges#Easy_Re港道理,这道题对逆向新人来说有一个比较奇特的点,虽然很简单,但想必开始的时候会难到不少新朋友,我们就来看看这题是怎么回事这种题盲猜是用od跑,那么用od(记住是中文搜索)打开试试:很显然我们要对付的就是头顶那些代码了!那么和我们之前做的水题不同,首先这里我们看不到flag存储的地方,然后跳进去看看:...原创 2019-06-17 23:21:55 · 2445 阅读 · 0 评论 -
中学生CTF--RE--部分WP
EASY_RE题目连接:http://ctf.klmyssn.com/files/de060b939e8b90deb34d86025aee13ee/task_easy_re.exe逆向解题思路大致有两种–解密和调试,这里我习惯先查看字符串看看(一般用od和ida一起查,这题只用ida也一样):那么这里就看到了高亮处的哪一个字符串,很显然要求是对这串字符串解密了(双击进去查看确实存在加密)。...原创 2019-08-14 17:30:55 · 2068 阅读 · 2 评论 -
BugKuCTF逆向--love 题解
题目地址:https://ctf.bugku.com/files/0306fd73281571871e48b6e836d507bd/reverse_3.exe跑一下,随便输入一个数字,关闭了。那么用od载入试一试:哦?那么这题应该就不是od调试的问题了,而该用ida静态分析解密。用ida载入:显然Dest是我们通向flag的大门,这里对Dest进行了一个简单的加密,但根据前面得到的那...原创 2019-08-21 11:25:21 · 1120 阅读 · 2 评论 -
杭电ctf--Beat our dice game and get the flag
题目连接:http://sec.hdu.edu.cn/upload/attachment/2018/9/41b825e7-0b96-405d-b709-0292c292b3d0.rar首先,这道题拿到手中,先在od和ida中分别加载,查串一次;而在od中就可以看到比较明显的提示:可以推断,这题的目的应该是让我们通过动态调试而达到最后的3-1-3-3-7的结果(即掷出这些点数的色子)。而通...原创 2019-08-22 22:20:03 · 691 阅读 · 0 评论 -
南邮ctf非正式题解 -- 逆向maze (方向的判断函数解析)
南邮的maze我以前做过两遍,第一遍是完全看题解都看不懂,第二遍是勉强做完之后隔了差不多几周的时间再去做一遍,又看了题解,感觉对哪些判断函数稍稍懂了一些了,但还是对判断上下左右这一点十分迷惑,因为网络上的题解都没有讲到这一点的,这次是因为在刷xctf的新手题,其中最后一道就是这到maze,正好把我的疑惑自己解答了,这里放出对方向的判断的分析报告。这里前面的函数我们也只提一下,其它的题解基本都有对...原创 2019-09-24 16:53:53 · 1043 阅读 · 0 评论 -
关于c/c++的各种编译器的调用约定(更新中)
调用约定简述:–通过在不同的IDE里编译程序,观察各个IDE的调用约定的细节与差别。一、压栈规则/调用约定:首先,在c/c++中,printf的本质是一个在<stdio.h>中所具有的函数,所以实际上里面的一些参数的传递,实际上也是遵守编译器所自使用的调用约定的。在这里,我们举一个例子:int i=3;printf("%d,%d,%d,%d,%d,%d,%d",i++,+...原创 2019-09-28 20:22:26 · 658 阅读 · 1 评论
分享