逆向
文章平均质量分 54
个人水平有限!
比風更自由
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
buuctf——[ACTF新生赛2020]easyre1
格式必须是ACTF{}的,中间的部分在__data_start__放入虚拟机,upx -d 脱壳。这里记得把27h换成‘原创 2025-11-29 16:20:33 · 145 阅读 · 0 评论 -
buuctf reverse——刮开有奖
所以我们对这两个字符串解密就知道了string的后六位了,为什么是base64解密呢,直接用插件寻找加密,或者你跟进sub_401000再跟进里面的byte_407830,就知道了是base64了。2的是一个能让等式成立的字符4 * String[2] - 141 == 3 * v8 v8是83(s),但是v8也被处理了。0的String[0] == v7[0] + 34 但是v7[0]会被处理,v7[0]初Z)去看这个v7,此时的v7里的是我们处理完了的了,好了又变成这个闪了,可以看到jnz。原创 2025-11-27 22:58:11 · 274 阅读 · 0 评论 -
buuctf [BJDCTF2020]JustRE
意思就是,这一行灰色的就是flag,为什么呢,sprintf函数和printf函数不同,printf函数是直接输出到屏幕,是给你呈现的,但是是sprintf是存到内存里,sprintf的用法是。为什么知道要填到%d里,因为%d是c语言中的一个起到占位符的作用,就是告诉函数,这个位置给我留着,之后会有整数填到里面。那么就对应到了后面的19999和0,放进去就行了。sprintf(目标缓冲区, 格式化字符串, 要填充的值1, 要填充的值2, ...)我们双击跟进,然后选中这段,按ctrl + x寻找交互。原创 2025-11-27 20:18:56 · 118 阅读 · 0 评论 -
buuctf reverse 1-10(持续更新)
复制到str2里,然后用户输入str1,对比,所以这就是答案。这里遍历了str2 并且将所有字符o替换成0 (ASCII码)加壳了,upx.exe,直接到kali里用自带的工具脱壳。用IDA64位打开,搜索main函数(在逆向工程中,(Entry Point),也是分析的起点和核心。少了个大括号就是前面的7Bh,按r解码就行了。老样子搜索main函数按tab查看伪代码。这里将flag遍历并且将i和r替换成1。跟进flag看看是多少然后修改。查壳,64位无壳直接分析。先看一下,64位无壳。原创 2025-11-23 18:40:47 · 235 阅读 · 0 评论 -
buuctf reverse luck_guy
关键来了,get_flag会进行五次随机,并尝试打印flag,要想得到flag必须有一次随机到了case1,但是你即使抽到了case1,但是case4和case5会动态的修改,所以你还是得不到flag。根据分析得到顺序就是case4——case5——case1,case1是最后一步,对case1分析得到。将s先初始化,然后把f1拼接到s末尾,然后再把f2拼接到s里,此时s已经有f1了,所以s=f1+f2。我们看看f1和f2里面有啥没,GXY{do_not_这是f1的,icug`ofF7x是f2的。原创 2025-11-26 22:08:25 · 145 阅读 · 0 评论
分享