ida
wallacegen
这个作者很懒,什么都没留下…
展开
-
攻防世界WP-reverse-湖湘杯2018-Replace
首先查壳,upx壳,直接upx -d脱掉。放入ida,查看伪代码,结构比较简单就不多说了。关键是下面这个函数,return 1,则成功。signed int __fastcall sub_401090(int a1, int a2){ int v2; // ebx int v4; // edx char v5; // al int v6; // esi int v7; ...原创 2020-04-25 11:46:10 · 4728 阅读 · 0 评论 -
攻防世界WP-reverse-school-ctf-winter-2015-parallel-comparator-200
这个题目直接给了C的源码,引入了pthread.h库,所以我们在linux下编译运行。gcc test.c -o test -lpthread其实编译运行也行。直接看源码。#include <stdlib.h>#include <stdio.h>#include <pthread.h>#define FLAG_LEN 20void * chec...原创 2020-04-23 15:29:16 · 194 阅读 · 0 评论 -
攻防世界WP-reverse-school-ctf-winter-2015-simple-check-100
内有三个文件,一个exe,两个elf。其中exe有坑,ida伪代码后有一个参数和解md5有关,但是又解不出来。所以直接看elf文件。关键函数为interesting_function((__int64)&v7);int __fastcall interesting_function(__int64 a1){ int *v1; // rax unsigned int v3; /...原创 2020-04-20 09:54:13 · 310 阅读 · 0 评论 -
攻防世界WP-reverse-alexctf-2017-re2-cpp-is-awesome
废话不多说,无壳直接拖入IDA。关键代码 for ( i = std::__cxx11::basic_string<char,std::char_traits<char>,std::allocator<char>>::begin(&v11); ; sub_400D7A(&i) ) { v13 = std::__cxx11::bas...原创 2020-04-19 09:43:37 · 224 阅读 · 0 评论 -
攻防世界WP-reverse-BUUCTF-2019-Mysterious
直接看伪代码GetDlgItemTextA(hWnd, 1002, &String, 260); strlen(&String); if ( strlen(&String) > 6 ) ExitProcess(0); v10 = atoi(&String) + 1; if ( v10 == 12...原创 2020-04-18 16:17:22 · 653 阅读 · 0 评论 -
攻防世界WP-reverse-re1-100
ELF文件。F5查看伪代码(感觉没有伪代码就不行关键的地方贴出来。if ( numRead ) { if ( childCheckDebugResult() ) { responseFalse(); } else if ( bufParentRead[0] == 123 ) { ...原创 2020-04-18 10:42:07 · 224 阅读 · 0 评论 -
Base64编码与解码(含C++代码)
上午做了一个逆向的题目,有一个函数看了半天没看明白,后来一查WP,才知道是BASE64解码。所以将BASE64编码与解码的过程自己整理整理。Base64编码与解码编码原理C++代码实现编码原理比如我们需要对字符串abcd进行BASE64编码,我们可以直接搜索一个编码网站,得出结果是YWJjZA==。下面我们看看具体算法是如何操作的。首先将abcd转成ASCII码对应的二进制表示形式...原创 2020-04-17 10:10:43 · 1259 阅读 · 0 评论 -
攻防世界WP-reverse-suctf-2016-srm-50
这个题目很简单直接贴上部分伪代码GetDlgItemTextA(hDlg, 1001, &String, 256); GetDlgItemTextA(hDlg, 1002, v11, 256); if ( strstr(&String, "@") && strstr(&String, ".") && strstr(&Str...原创 2020-04-16 10:14:45 · 201 阅读 · 0 评论 -
攻防世界WP-reverse-Reversing-XCTF 3rd-GCTF-2017-hackme
其他的不说了,查看伪代码__int64 sub_400F8E(){ char v1[136]; // [rsp+10h] [rbp-B0h] int v2; // [rsp+98h] [rbp-28h] char v3; // [rsp+9Fh] [rbp-21h] int v4; // [rsp+A0h] [rbp-20h] unsigned __int8 v5; // ...原创 2020-04-15 17:53:08 · 321 阅读 · 0 评论 -
攻防世界WP-reverse-Reversing-x64Elf-100
无壳,64位elf程序。直接拖入IDA。发现Nice字符串,双击进去。F5查看伪代码。signed __int64 __fastcall main(__int64 a1, char **a2, char **a3){ signed __int64 result; // rax char s; // [rsp+0h] [rbp-110h] unsigned __int64 v5; /...原创 2020-04-15 11:13:11 · 211 阅读 · 0 评论 -
攻防世界WP-reverse-getitcsaw2013reversing2
打开之后弹乱码第一步还是查壳,没有。第二步拖入IDA,直接看伪代码吧int __cdecl __noreturn main(int argc, const char **argv, const char **envp){ int v3; // ecx CHAR *lpMem; // [esp+8h] [ebp-Ch] HANDLE hHeap; // [esp+10h] [eb...原创 2020-04-14 11:45:02 · 155 阅读 · 0 评论 -
攻防世界WP-reverse-SharifCTF 2016-getit
这个题目也属于新手入门区,但是卡在一个地方不懂,就是伪代码中的几个参数,后来去看别人的WP,才知道。如下所示:int __cdecl main(int argc, const char **argv, const char **envp){ char v3; // al __int64 v5; // [rsp+0h] [rbp-40h] int i; // [rsp+4h] [rb...原创 2020-04-14 09:01:11 · 420 阅读 · 0 评论 -
攻防世界WP-reverse-RC3 CTF 2016-logmein
logmein直接看算法注意代码直接看算法因为比较简单所以我们直接看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]...原创 2020-04-13 10:59:28 · 400 阅读 · 0 评论 -
攻防世界WP-reverse-simple-unpack
这个比较简单就简单写点吧第一步还是查壳upx壳,在upx的官网下载程序,然后程序里面附有文档。用upx -d来脱壳。脱壳完成之后拖入IDA,flag字符串能够直接看到。没了。...原创 2020-04-13 09:47:54 · 867 阅读 · 0 评论 -
攻防世界WP-reverse-SHCTF-2017-crackme
SHCTF-2017-crackme1.查壳2.用OD脱壳3.找到算法4.写解密程序总结1.查壳发现是nsPack壳,这个脱壳的原理我不是很清楚,照着网上一步步做就成功了,具体细节以后再研究。2.用OD脱壳网上说的ESP定律什么的,下硬件断点,F5,来到这里这个地方有点没搞清楚的是,OEP为什么在第一个JMP之后,也就是图中00401336的位置。注意,下面的操作是错误的,我开始看到了p...原创 2020-04-11 11:23:36 · 504 阅读 · 0 评论