自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(27)
  • 收藏
  • 关注

原创 buuctf【HDCTF2019】-Maze

发现有明显花指令特征 jnz/jz short ----- +1。因为jnz跳转到的是2E+1 的位置,把标红的位置按U重定义。双击进入(aHereIsTheFlagF)找到类似迷宫的东西。按ida提取数据的格式把迷宫画出来,用python脚本。把2F以后的按C转换成代码,再把剩下的汇编nop掉。让它到F的位置就是下下左左左下左左下下右右右上。先查壳,发现有upx壳,用upx.exe脱壳。nop掉后找到main函数按P重新定义为函数。然后再反汇编就可以看到伪代码了。'+'的位置就是(7,0)

2026-06-15 17:07:34 264

原创 buuctf-luck_guy

这里基本意思是输入一个幸运数字v4,然后执行patch_me函数,进入patch_me。分析伪代码,flag就是f1+f2,f1给出来了,f2需要用case5自己求。这里s给出来了,但是这里要注意是小端序存储,用的时候要反过来,编写脚本。拖入ida找到main函数。

2026-05-25 20:15:58 22

原创 BUUCTF simplere

按d/D进入decry,q/D退出。

2026-05-22 14:09:46 18

原创 [HNCTF 2022 WEEK2]e@sy_flower

因为上面函数是short near ptr loc_4010D4+1,所以把第一个字节改成90。# 2. 逆序执行交换逻辑(代码里是 i 从0开始交换 2*i 位置)# 交换 data[pos] 和 data[pos+1]print("✅ 正确flag:", flag)在汇编窗口找到标红函数,判断是花指令。找到main函数,右键重新定义为函数。# 1. 先异或 0x30 还原。拖入ida,发现反汇编不成功。# 程序校验的目标字符串。# 得到最终flag。

2026-05-19 20:04:16 23

原创 攻防世界-reverse-for-the-holy-grail-350

当v11=0和1时,执行else,v10 *=*v5,这里最主要的是v10 *= *v5,即执行了两次, v10初始值是1,执行完两次后,v10=*v5(第0号) X *v5(第1号),那么如何得到v5数组呢?这里当v11=2时v5=thirdchar的内容,执行完后变成0,也是3个一循环,所以第2,5,8,11,14,17为thirdchar的字符。然后用flag分别对应异或它之后就得到了v5数组,v5数组再用来3个一组爆破求出flag 的下标为1,4,7,11,14,17元素值。

2026-05-18 22:21:16 335

原创 攻防世界——echo-server(花指令)

mov ax, 5EBh后ax=5EBh,之后xor eax, eax结果eax=0置ZF=1,最后jz short near ptr loc_8048851+1跳转到loc_8048852,一直重复这个过程。在test函数里面test的结果=1,ZF=0(test eax,eax 只有eax=0时ZF=1,其他不为0时ZF=0)接下来注意这两行代码,这里xor eax eax ,jz是必定执行的,会跳转到loc_804881C+1。右键.text:080487F4这行,从这开始转化为代码(快捷键C)

2026-05-14 22:17:05 366

原创 攻防世界-reverse-IgniteMe

逻辑就是将GONDPHyGjPEKruv{{pj]X@rF和byte_4420B0中的每个数据异或,然后再经过sub_4013C0函数处理后,然后如果为小写就转为大写,令标志位1,然后看标志为0和是否为大写,是就转为小写。xor1 = ord(c) ^ k # 直接异或16进制字节。xor2 = sub ^ u_ascii # 异或'U'sub = xor1 - 72 # 减72。阅读代码,进入sub_4011C0。# 字符'U'的ASCII码。# 拼接 + 大小写互换。

2026-04-28 20:54:21 47

原创 攻防世界-reverse-srm

分析伪代码可知v11+src就是登录成功了,但是题目提示flag是有效的序列号,即v11。拖入ida32,shift+Fn12找到关键字符串“registeration”if(语句刚好告诉v11长16,将下面几个字符按顺序拼接就是flag)

2026-04-27 21:18:36 26

原创 攻防世界-reverse-mysterious

这行代码里的函数是 ,它是一个 Windows C 运行时库函数(itoa),作用是把整数转换成字符串。MessageBoxA 弹出最终flag{123_Buff3r_0v3rf|0w}strcat(Text, &v5);转字符串 strcat(Text, "{");分析代码,大致是v5的值拼接字符得到flag。拖入ida找到主函数。继续进入函数xtoa。

2026-04-26 21:35:10 27

原创 攻防世界-reverse-debug

得到"flag{967DDDFBCD32C1F53527C221D9E40A0B}"小结:在程序关键位置下断点,运行程序,随便输入,再在程序下方寻找你想要找的字符串。在左侧找到主函数,发现flag,在下方判断代码行if(a=b)下断点。发现是.net文件,拖入dnSpy。

2026-04-23 21:01:21 46

原创 攻防世界-reverse-crypt

tmp = [0] * len(byte_14013B000)#名为 tmp 的新列表,其长度与 byte_14013B000 列表相同,并且将所有元素初始化为 0。decrypt_data = rc4_decrypt(data, key) # RC4解密。所以解题思路就是byte_14013B000和0x22异或后得到密文,再进行CR4解密。tmp[i] = byte_14013B000[i] ^ 0x22#存储密文。程序做的是v7 RC4加密后,与0x22异或,再跟byte_14013B000比较。

2026-04-22 23:23:14 210

原创 攻防世界-reverse-elrond32

提取出来值 0F 1F 04 09 1C 12 42 09 0C 44 0D 07 09 06 2D 37 59 1E 00 59 0F 08 1C 23 36 07 55 02 0C 08 41 0A 14。代码上面这里刚好8个元素,太显眼了肯定就是a1了iendagsr,但是下面对a1修改了循序。然后再找a1,因为i%8所以猜测a1位8位字符串。state=0 → 必须输入 i。state=7 → 必须输入 s。state=1 → 必须输入 e。state=4 → 必须输入 d。

2026-04-21 22:06:45 326

原创 攻防世界-reverse-catfly

拖入exeinfope.exe 无壳。拖入ida.64,Fn5反编译。看看异或的sub_62B5()在上上图中找到off_E120。阅读伪代码,找到关键部分。进入sub_6314。

2026-04-20 21:24:54 385

原创 xctf-simple-crackme

逻辑是用户输入的第 v1 个字符(ASCII 码)与byte_402130进行异或,然后与数组dword_402150进行比较。我们输入一个长度位42的字符串,然后让key叠加,然后与输入的字符串异或得到加密后的数据,也就是dword_402150。找到oep(原始程序入口),然后点击插件scylla,dump,修复。在左下角栈顶(esp下断点),硬件断点访问,32位所以是(D)点进去,ctrl+x查看引用,找到main函数,F5反编译。再按F9,在发现jmp有大跳转的时候按F7跟进,直到。

2026-04-08 23:08:46 65

原创 IDA使用

我直接给你最精简、最实战、CTF 逆向必用的 IDA 找 flag 流程,你照着点就能做题,不用背理论。4. 找 cmp 、 strcmp 、 memcmp → 这就是 flag 验证点。- 函数窗口搜: main 、 start 、 WinMain。- 双击字符串 → 按 X 看在哪被使用 → 直接跳到验证逻辑。二、IDA 核心快捷键(只记这 6 个)- F5:反编译成 C 伪代码(最有用)- X:查看谁调用了这个函数(交叉引用)四、最简单的改跳转过验证(Patch)一、打开程序后,只做这 4 步。

2026-03-04 21:26:43 156

原创 逆向汇编指令基础

这份是CTF 逆向 x86 汇编「只背这些就够」精简版,完全为读汇编、做逆向准备,不用学写代码。- cmp a, b :比较 a 和 b,只改标志位,不改变值。- for/while → 顶部/底部 jmp 循环。- test a, b :按位与,常用于判断是否为 0。- jge / jle :大于等于 / 小于等于 跳。- jne / jnz :不相等 / 不为0 跳。2. je / jne / jmp —— 这是分支。- mov a, b :把 b 赋值给 a。

2026-03-04 21:19:05 887

原创 寄存器栈的小结

2026-02-16 09:16:59 78

原创 寄存器debug指令

2026-01-31 09:43:56 103

原创 【无标题】x86-16位所含有的寄存器 

变址寄存器:SI(Source Index)、DI(Destination Index)指针寄存器:SP(Stack Pointer)、BP(Base Pointer)ESP:栈指针,始终指向当前栈顶,PUSH/POP操作会自动调整。存储CPU状态标志,如零标志位(ZF)、进位标志(CF)等。位宽限制:所有寄存器均为16位,无法直接处理32位数据。EBP:基址指针,用于建立栈帧,访问函数参数和局部变量。示例:ADD指令执行后,若结果为0则ZF位自动置1。段寄存器:CS、DS、ES、SS等。

2026-01-22 12:25:21 38

原创 【无标题】x86-16位所含有的寄存器

变址寄存器:SI(Source Index)、DI(Destination Index)指针寄存器:SP(Stack Pointer)、BP(Base Pointer)ESP:栈指针,始终指向当前栈顶,PUSH/POP操作会自动调整。存储CPU状态标志,如零标志位(ZF)、进位标志(CF)等。位宽限制:所有寄存器均为16位,无法直接处理32位数据。EBP:基址指针,用于建立栈帧,访问函数参数和局部变量。示例:ADD指令执行后,若结果为0则ZF位自动置1。段寄存器:CS、DS、ES、SS等。

2026-01-22 12:22:56 52

原创 volatility基础使用

vol.py dumpfiles -f 镜像文件.raw --offset 文件偏移 -D 输出目录。vol.py imageinfo -f 镜像文件.raw。vol.py filescan -f 镜像文件.raw。vol.py pslist -f 镜像文件.raw。

2025-12-23 17:29:16 114

原创 流量分析题

1. HTTP: http (全量筛选)| http.request (仅请求包)| http.response (仅响应包)| http.request.method==POST (仅POST传参包)| http.request.uri contains "flag" (含敏感关键字的请求路径)6. ICMP: icmp (全量筛选)| icmp.type==8 (请求包)| icmp.type==0 (响应包)| icmp.data.len > 32 (异常大载荷,藏数据专用)

2025-12-22 16:57:31 272

原创 rar文件头组成

2025-12-18 16:05:39 322

原创 Volatility 入门常用命令清单

注:命令基本格式为 volatility -f [内存镜像文件] --profile=[系统配置文件] [插件命令] , profile 需匹配镜像的系统版本(如 Win7SP1x64 )命令: volatility -f [镜像文件] --profile=[profile] memdump -p [进程PID] -D [输出目录]命令: volatility -f [镜像文件] --profile=[profile] dumpfiles -D [输出目录]

2025-12-16 16:31:53 310

原创 ICMP协议,DNS协议,http协议流量分析

发现有相同的数据(英文一个ICMP协议的request和relay的数据长度相同),利用请求标准type过滤所有ICMP协议的其中的relay,只保留request。flag3为http协议,在http协议里面搜索}的base64编码就可以找到隐藏的ipg照片,base64转码就可以得到flag3。之后在用tshark提取所有数据-Y ICMP.type==0并将提取的数据交给cyperchef就可以得到一半flag。用tshark分析ICMP协议的数据后 ,发现没有收获,可以观察每个数据的长度。

2025-12-15 21:46:41 176

原创 【学习笔记】Linux文件操作命令清单

cp 源文件 目标路径 复制文件(例:cp file.jpg ~/Downloads → 复制文件到下载目录)mv 源文件 目标路径 移动 / 重命名文件(例:mv old.jpg new.jpg → 重命名文件)cd 路径 切换到指定目录(例:cd /home/kali)pwd 显示当前工作目录的完整路径(确认自己 “在哪里”)rm 文件名 删除文件(rm -r 目录名可删除目录)cat 文件名 查看文件的全部内容(适合小文件)ls -a 显示所有文件(包括隐藏文件)cd - 切换到上一次所在的目录。

2025-12-05 16:19:01 203

原创 入驻博客第一天

今天了解了网安专业要学习的知识框架。

2025-11-18 23:58:02 246

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除