reverse
reverse
prettyX
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
XCTF RE:IgniteMe
查看基本信息,无壳 尝试运行 IDA F5 通过字符串“Congratulations”,我们发现重要函数sub_4011C0(),查看 分析正如上图中注释的一样,对v8的变换在for循环中,在if判断条件中,使用快捷键R即可将数值转换为字符,可以看到,是一个大小写转换的逻辑 来查看byte_4420B0 查看sub_4013C0() 根据上述的分析,我们写如下代码 #include "stdafx.h" #include <stdio.h> #in..原创 2020-12-04 16:46:04 · 256 阅读 · 0 评论 -
XCTF RE:Shuffle
拿到附件,先查基本信息,无壳,ELF32 尝试运行,输出的是随机字符串,和提示一样 IDA F5,通过分析,s应该是一个char型数组的首地址,直接转换为ASCii码即可 SECCON{Welcome to the SECCON 2014 CTF!} 比较基础,练手: ) ...原创 2020-12-04 14:32:01 · 271 阅读 · 0 评论 -
攻防世界xctf reverse:no-strings-attached
先查基本信息,ELF程序,无壳 尝试运行 拽入IDA中,shift F12未发现有价值信息,F5 经过查看,authenticate()为重要函数,通过下面代码分析,S2即为我们需要的flag s2是由decrypt()函数产生的,来看一下decrypt()函数 查看汇编代码,decrypt的返回值在eax中 gdb动态调试,在decrypt()处下断点,随后读取eax中的值,获取s2 查看.text段的函数 objdump -t -j .text 554e0...原创 2020-11-24 15:20:09 · 908 阅读 · 3 评论 -
攻防世界xctf reverse:open-source
附件为源码,如下 #include <stdio.h> #include <string.h> int main(int argc, char *argv[]) { if (argc != 4) { printf("what?\n"); exit(1); } unsigned int first = atoi(argv[1]); if (first != 0xcafe) { printf("you are wr..原创 2020-11-23 22:06:36 · 365 阅读 · 1 评论 -
攻防世界xctf reverse:Hello, CTF
先查基本信息,无壳 尝试运行原创 2020-11-23 21:28:23 · 449 阅读 · 0 评论 -
攻防世界 reverse 新手区:re1
先查基本信息,没有加壳 尝试运行 拽入IDA中原创 2020-11-23 17:11:44 · 450 阅读 · 0 评论 -
攻防世界 reverse 新手区:python-trade
附件下载下来,是一个.pyc文件 很多厂商为了防止源码外泄,经常会采用把*.py源码文件编译后删除,完全使用*.pyc文件运行自己的产品,起到了源码保护的作用原创 2020-11-23 00:28:06 · 447 阅读 · 0 评论 -
《0day安全:软件漏洞分析技术》读书笔记2:第2章
第2章 栈溢出原理与实践 这一章,我们将做3个实验 通过栈溢出,修改邻接变量 通过栈溢出,修改函数返回地址 通过栈溢出,让进程执行输入数据中植入的代码 实验1:修改邻接变量 P47,研究源码如下 #include <stdio.h> #define PASSWORD "1234567" int verify_password(char *password) { int authenticated; char buffer[8];//add local buffe原创 2020-11-11 11:51:42 · 464 阅读 · 0 评论 -
攻防世界 reverse003:insanity
提示:菜鸡觉得前面的题目太难了,来个简单的缓一下 先看一下基本信息 拽入IDA,F5 shift+F12 好吧,发现flag了原创 2020-11-06 23:26:32 · 370 阅读 · 0 评论 -
攻防世界 reverse002:logmein
提示是一个基本的算法逆向 先给文件权限 chmod 777 文件名 再尝试运行一下 拽入IDA,main函数F5 void __fastcall __noreturn main(__int64 a1, char **a2, char **a3) { size_t v3; // rsi int i; // [rsp+3Ch] [rbp-54h] char s[36]; // [rsp+40h] [rbp-50h] int v6; // [rsp+64h] [rbp-2Ch]原创 2020-11-06 23:09:05 · 293 阅读 · 0 评论 -
攻防世界 reverse001:simple-unpack
提示是一个被加壳的二进制文件 我们使用一款查壳工具Exeinfo PE,下载地址:https://down.52pojie.cn/Tools/PEtools/ 查看文件如下,是ELF 64位文件,UPX的壳 然后使用命令在Kali下 upx -d原创 2020-11-06 22:01:03 · 337 阅读 · 0 评论 -
《0day安全:软件漏洞分析技术》读书笔记1:第1章
第1章 基础知识 P29实验 目的:对密码验证部分实现破解 #include <stdio.h> #define PASSWORD "1234567" int verify_password(char *password) { int authenticated; authenticated=strcmp(password,PASSWORD); return authenticated; } main() { int valid_flag=0;原创 2020-10-30 23:42:29 · 354 阅读 · 1 评论
分享