自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 buuctf Youngter-drive

buuctf Youngter-drive拿到题目,查壳(upx),首先脱壳,(不会脱壳自行百度,很多教程),脱壳之后是不能运行的,好像是因为文件重定向,但是不影响ida静态分析,ida打开分析,多线程,最近刚好在学多线程,第一个线程h0bject会执行StartAddress函数,第二个线程v2执行sub_41119f函数,然后挨个分析打开StartAddress函数会出现这种情况,原因是堆栈不平衡利用ida调堆栈就好,在红色部分用alt+k,打开![在这里插入图片描述]把原来的0x-4改成

2020-10-31 15:26:05 2523 3

原创 xctf BABYHOOK

xctf BABYHOOK好几天没写了,该水一篇了查壳(无壳,查过了),看ida,主函数没有任何可疑的地方,但是因为添加了线程,所以猜测在线程中调用了核心函数,开始用ida动调,发现可疑的地方在文件读取的地方调用了一个奇怪的函数在动调看汇编的过程中发现这个函数会...

2020-10-27 22:05:26 249

原创 xctf windows_reverse1

xctf windows_reverse1日常水一波这道题是有加壳的(upx),用010分析就知道了脱壳之后找到动态调试不行,经大佬讲解,发现win7之后加入了ALSR,然后这个文件不支持ALSR,所以动态调试不行,只能用ida打开乍一看,v4和v6没有任何关系,但是查看汇编把v4的地址放入了ecx,然后看调用的函数v1的保存值就是ecx,所以思路就出来了。v1的值就是main函数的v4的值然后通过地址相减(仔细看上图会发现是个负数),然后地址的差值作为另一个的索引,这里用了溢出,然后找到

2020-10-24 12:53:58 382

原创 xctf crackme

xctf crackme文件用ida打开发现有壳,查壳发现nspack壳我用工具没有成功,没办法只能手脱脱壳参考这位大佬脱壳成功逻辑简单最后贴上我的payloada= [ 0x00000012, 0x00000004, 0x00000008, 0x00000014, 0x00000024, 0x0000005C, 0x0000004A, 0x0000003D, 0x00000056, 0x0000000A, 0x00000010, 0x00000067, 0x000000

2020-10-22 20:17:31 267 1

原创 buuctf easyRE

buuctf easyRE[2019红帽杯]简单总结一下,一般说是easy的都不简单加载ida查看字符串,找到主要函数,第一组数据解出Info:The first four chars are flag然后看下面,打开函数发现是base64加密,加密十次,然后比较,把字符串解密十次,发现给了一个网址(不好意思,网址给关了,不想再解密10次了,就口头描述一下),打开网址,发现是…然后看大佬博客,才知道是个迷惑我们的函数,真正的核心函数在上图所示函数的下一个(wdnmd)口吐芬芳然后利用”f

2020-10-18 10:37:22 1066 2

原创 xctf hackme

xctf hackmelinux执行文件,话不多说直接ida找到main函数,不会的先查字符串,然后找函数,这个就不教了。看图主要逻辑就是在循环里,这个代码逻辑还是比较简单的,循环找v17,然后异或,我刚开始也认为很简单,但是有小细节要注意,注意 注意 注意 重要的事说三遍看v13的数据类型,是一字节,v17是四字节类型,之后的结果要&0xff,(这个我开始也忘了,导致得不到结果,看了其他大佬的wp才明白)最后贴上自己的wpa = [ 0x5F, 0xF2, 0x5E,

2020-10-16 10:34:16 434 1

原创 xctf Mysterious

xctf Mysterious一道水题,记录一下,毕竟难题也不会看代码找函数,其他都没用,只用看这个主要的代码这个很简单,通过逻辑,只要找到v5就行了,v5应该在_itoa()函数,查看函数两个函数调用一样,随便进入一个查看代码逻辑,主要核心代码在19-27,其他的都是赋值,这个循环的主要作用就是把数字转换为字符串,然后就懂了,v5就是字符串:123,然后加上去就可以了。...

2020-10-14 20:38:22 315 1

原创 xctf lgniteMe

xctf lgniteMe简单题记录一下(本菜鸡也只能记录一下简单题了)看源代码前面的我也没看懂,直接看判断函数sub_4011c0()打开函数逻辑简单先把大小写转换一下(大写转小写,小写转大写),之后先进入sub_4012c0()函数,然后数据异或,看函数简单加密直接贴出expa = [ 0x0D, 0x13, 0x17, 0x11, 0x02, 0x01, 0x20, 0x1D, 0x0C, 0x02, 0x19, 0x2F, 0x17, 0x2B, 0x24, 0x1F,

2020-10-13 22:23:42 143 1

原创 xctf BABYRE

xctf BABYRE第一次做smc类型题目,利用idapython把源代码补全首先确保idapro里有python插件(一般都有的),打开文件int __cdecl main(int argc, const char **argv, const char **envp){ char s; // [rsp+0h] [rbp-20h] int v5; // [rsp+18h] [rbp-8h] int i; // [rsp+1Ch] [rbp-4h] for ( i = 0; i &

2020-10-10 19:05:09 551 1

原创 buuctf pyre

buuctf 逆向pyre最近看到不少py逆向,记录一道题下载原件发现是pyc文件,先利用uncompyle生成py文件(之前用py3.8.6的版本下载死活不行,在老学长的帮助下发现uncompyle库不支持最新版本,没办法含泪删掉重下)下载指令pip install uncompyle下载成功后生成py文件,比如想把1.pyc 生成 2.py文件用指令uncompyle6 1.pyc > 2.py一般都可以成功,看这道题,用上面的方法得到py文件# uncompyle6 ve

2020-10-10 17:03:03 793 1

原创 buuctf luck_guy

buuctf 逆向luck_guy文件无壳,ida打开找到主函数int __cdecl main(int argc, const char **argv, const char **envp){ int v4; // [rsp+14h] [rbp-Ch] unsigned __int64 v5; // [rsp+18h] [rbp-8h] v5 = __readfsqword(0x28u); welcome(); puts("_________________"); put

2020-10-10 16:53:22 1217 5

原创 buuctf crackrtf

buuctf 逆向 crackrtf首先查壳,没壳。ida打开,发现主函数代码如下int __cdecl main_0(){ DWORD v0; // eax DWORD v1; // eax CHAR String; // [esp+4Ch] [ebp-310h] int v4; // [esp+150h] [ebp-20Ch] CHAR String1; // [esp+154h] [ebp-208h] BYTE pbData; // [esp+258h] [ebp-1

2020-10-10 16:41:13 889 3

原创 buuctf 逆向 findit

buuctf 逆向 findit第一次做这种题,记录一下文件下载后发现是apk逆向,用jeb打开发现字符串,字符找到规律,比如第五个数据是“{”的asscii,最后一个是“}”的ascii,所以大胆猜想一下,这串数据和flag有关,用脚本跑出字符串,贴上脚本。a=[ 0x70,0x76,0x6B,0x71,0x7B,0x6D,0x31, 0x36,0x34,0x36,0x37,0x35,0x32,0x36, 0x32,0x30,0x33,0x33,0x6C,0x34,0x6D,

2020-10-06 18:10:13 991 1

原创 buuctf 逆向 xor

buuctf 逆向 xor题逻辑比较简单,但是中间有点小插曲,等会再说,先打开软件,没壳(我查过了),然后打开ida,如图逻辑很简单,就是把下一个和之前的一个异或,然后保存。然后比较坑的地方就来了。点开global,出现如图所示这里的数据比较奇怪了,既有数据,又有字符。所以不要单纯的复制下来,要转换为ascii码,然后进行异或,最后贴上脚本。a= [0x66, 0x0A, 0x6B, 0x0C, 0x77, 0x26, 0x4F, 0x2E, 0x40, 0x11, 0x78, 0

2020-10-05 21:58:34 3479 1

原创 buuctf逆向 8086

buuctf逆向 8086    下载文件后看是可执行pe文件,尝试执行,然后发现不可执行,放入010查看,发现是未知的文件格式,最后百度,发现是doc文件,可以用ida打开(第一次接触,学了一手),ida打开后不能转换成c语言(屁话),没办法只能看汇编    注意,红色部分原来不是汇编,是一串数据,那条红线是start(画的有点丑,没办法,这个图片编辑器没有直线),红色是数据区的部分利用ida转化为汇编(不会的自行百度,

2020-10-04 22:42:00 301 1

原创 xctf parallel-comparator-200

parallel-comparator-200先贴源代码,之后详细解析借鉴这位大哥的wp关于这道题的解析#include <stdlib.h>#include <stdio.h>#include <pthread.h>#define FLAG_LEN 20void * checking(void *arg) { char *result = malloc(sizeof(char)); char *argument = (char *)a

2020-10-02 21:45:51 272 1

原创 xctf Reversing-x64-Elf-100简单解析

Reversing-x64-Elf-100(怎么突然发现xctf中的逆向题难度突然降低了)下载文件,然后ida打开,发现数据对比函数,进入函数内部代码逻辑比较简单的,左边v3的顺序是D,p,e,f,`,U,b,m,l,f,s,t(为什么是这个顺序,请仔细分析这个循环结构体),然后每个都比要输入的数大一,代码分析完毕,最后贴出我的wpa=["D","p","e","f","`","U","b","m","l","f","s","t"]s=''for i in range(12): s+=

2020-10-02 10:54:03 238 1

原创 xctf pwn when_did_you_born

XCTF when_did_you_born  第一次写博客,写的不好,请多指教。首先,看ida代码(当时因为比较简单就没看汇编)   看代码,v4和v5之间只差8字节,利用栈覆盖,用8个数据填充v4,然后把第一次的v5覆盖掉(第一次v5可以是除了1926的任意数,第二次输出v4的时候利用栈覆盖,把原来的v5覆盖成1926)最后贴出萌新的脚本from pwn import *io=remote("220.249.52.133",31846)io.recvuntil("What's You

2020-09-29 21:37:50 146 1

空空如也

空空如也

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

TA关注的人

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