![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
BUUCTF 逆向题解
PlumpBoy
这个作者很懒,什么都没留下…
展开
-
BUUCTF Reverse [ACTF新生赛2020]easyre WriteUp
easyre-WP打开后先查查有无壳,发现是UPX加密kali直接脱壳,命令为upx -d easyre.exe脱完壳直接放入IDA查看反汇编代码int __cdecl main(int argc, const char **argv, const char **envp){ _BYTE v4[12]; // [esp+12h] [ebp-2Eh] BYREF _DWORD v5[3]; // [esp+1Eh] [ebp-22h] _BYTE v6[5]; // [esp+2Ah]原创 2021-09-11 16:15:23 · 439 阅读 · 0 评论 -
BUUCTF Reverse rsa WriteUp
rsa-WP打开文件,发现有有两个文件,拖入HxD发现一个是公钥一个是密文,那么本题的目标就是求解私钥进行解密。先将公钥放入在线工具:http://ctf.ssleye.com/pub_asys.html解析得到e=65537n=86934482296048119190666062003494800588905656017203025617216654058378322103517然后打开RSA-Tool2,将n填入n处,点击Factor N即可分解,但是大数分解特别慢,建议使用在线工具:h原创 2021-09-11 16:15:05 · 489 阅读 · 0 评论 -
BUUCTF Reverse [GWCTF 2019]pyre WriteUp
pyre-WP首先发现是pyc文件,使用在线工具进行反编译,得到源码#!/usr/bin/env python# visit http://tool.lu/pyc/ for more informationprint "Welcome to Re World!"print "Your input1 is your flag~"l = len(input1)for i in range(l): num = ((input1[i] + i) % 128 + 128) % 128 c原创 2021-09-11 16:14:47 · 248 阅读 · 0 评论 -
BUUCTF Reverse 简单注册器 WriteUp
简单注册器-WP一个apk文件,直接用jdax-gui打开定位到核心加密部分,将其复制出来,写一个c的解密程序#include <iostream>using namespace std;int main(){ char x[] = "dd2940c04462b4dd7c450528835cca15"; x[2] = (char)((x[2] + x[3]) - 50); x[4] = (char)((x[2] + x[5]) - 48); x[原创 2021-09-11 16:14:30 · 253 阅读 · 0 评论 -
BUUCTF Reverse [BJDCTF2020]JustRE WriteUp
JustRE-WP首先打开看看,发现有个getflag标签,点击会显示现在点了多少次。拖入IDA中,按shift+F12查看字符串,发现一个很像flag的值双击转到地点,再双击转到汇编窗口再按F5显示反汇编代码INT_PTR __stdcall DialogFunc(HWND hWnd, UINT a2, WPARAM a3, LPARAM a4){ CHAR String[100]; // [esp+0h] [ebp-64h] BYREF if ( a2 != 272 )原创 2021-09-11 16:14:10 · 185 阅读 · 0 评论 -
BUUCTF Reverse findit WriteUp
findit-WP下载发现是一个APK文件,直接丢进jadx-gui进行反编译,查看源码发现两个奇怪的数组final char[] a = new char[]{'T', 'h', 'i', 's', 'I', 's', 'T', 'h', 'e', 'F', 'l', 'a', 'g', 'H', 'o', 'm', 'e'};final char[] b = new char[]{'p', 'v', 'k', 'q', '{', 'm', '1', '6', '4', '6', '7', '5',原创 2021-09-11 16:13:51 · 131 阅读 · 0 评论 -
BUUCTF Reverse [GXYCTF2019]luck_guy WriteUp
luck_guy-WP首先用hxd打开看一下,发现是elf文件,直接拖入ida64中F5反编译。进入patch_me进入get_flagunsigned __int64 get_flag(){ unsigned int v0; // eax int i; // [rsp+4h] [rbp-3Ch] int j; // [rsp+8h] [rbp-38h] __int64 s; // [rsp+10h] [rbp-30h] BYREF char v5; // [rsp+18h原创 2021-09-11 16:13:32 · 263 阅读 · 0 评论 -
BUUCTF Reverse 内涵的软件 WriteUp
内涵的软件先打开看一看,发现不管输入啥都报错退出。拖到x32dbg中,执行到exe本体中,搜索字符串找到每次输出语句,向上看一看,发现flag原创 2021-09-10 18:36:52 · 156 阅读 · 0 评论 -
BUUCTF Reverse reverse2 WriteUp
reverse_2拖入HxD中看见ELF,linux平台的程序,但是懒得开虚拟机了,顺手搜索了一下,看见了一个很像flag的字符串,结果提交试了下,错误的,那么应该是程序对这个字符串做了一些操作。拖入IDAv8 = __readfsqword(0x28u); pid = fork(); if ( pid ) { waitpid(pid, &stat_loc, 0); } else { for ( i = 0; i <= strlen(&f原创 2021-09-10 18:35:53 · 164 阅读 · 0 评论 -
BUUCTF Reverse reverse1 WriteUp
reverse_1先打开软件看一看,是一个要求输入flag的题目。拖入x64dbg,先从dll执行到本身,然后查找字符串,flag拿到了,注意是0不是o!!原创 2021-09-10 18:34:37 · 217 阅读 · 0 评论 -
BUUCTF Reverse Java逆向解密 WriteUp
java逆向解密-WP扔进jd-gui中进行反编译,得到源代码import java.io.PrintStream;import java.util.ArrayList;import java.util.Scanner;public class Reverse{ public static void main(String[] args) { Scanner s = new Scanner(System.in); System.out.println("Please i原创 2021-09-11 16:12:57 · 207 阅读 · 0 评论 -
BUUCTF Reverse SimpleRev WriteUp
simplerev-WP使用exeinfope查看发现没壳,扔入IDAint __cdecl __noreturn main(int argc, const char **argv, const char **envp){ int v3; // eax char v4; // [rsp+Fh] [rbp-1h] while ( 1 ) { while ( 1 ) { printf("Welcome to CTF game!\nPlease input d/原创 2021-09-10 18:44:08 · 728 阅读 · 0 评论 -
BUUCTF Reverse 不一样的flag WriteUp
不一样的flag-WP首先双击打开,发现4个选项对应4个操作,猜测是走迷宫放入IDA查看,通过以下两部分判断出*为我们当前位置,1不能走,#为出口又直接看出第一步是向下走,且这里面有25个成员,应该是5x5的大小,最后的得到迷宫图* 1 1 1 10 1 0 0 00 1 0 1 00 0 0 1 01 1 1 1 #最后得到flagflag{222114411222}...原创 2021-09-10 18:43:23 · 162 阅读 · 0 评论 -
BUUCTF Reverse reverse3 WriteUp
reverse3-WP首先扔到IDA里面,解析出主函数如下int __cdecl main_0(int argc, const char **argv, const char **envp){ int v3; // ebx int v4; // edi int v5; // esi int v6; // eax const char *v7; // eax size_t v8; // eax char v10; // [esp+0h] [ebp-188h] char v原创 2021-09-10 18:42:24 · 513 阅读 · 0 评论 -
BUUCTF Reverse helloword WriteUp
helloword-WP将apk直接放入jadx-gui点击函数直接看见了flagflag为flag{7631a988259a00816deda84afb29430a}原创 2021-09-10 18:41:18 · 124 阅读 · 0 评论 -
BUUCTF Reverse xor WriteUp
xor-WP首先吧xor文件扔进IDA里面int __cdecl main(int argc, const char **argv, const char **envp){ int i; // [rsp+2Ch] [rbp-124h] char __b[264]; // [rsp+40h] [rbp-110h] BYREF memset(__b, 0, 0x100uLL); printf("Input your flag:\n"); get_line(__b, 256LL);原创 2021-09-10 18:40:36 · 520 阅读 · 0 评论 -
BUUCTF Reverse 新年快乐 WriteUp
新年快乐-WP首先放入ExeinfoPE,查出来是UPX的壳放入kali脱壳upx -d 1.exe脱壳后扔入IDA__main(); strcpy(Str2, "HappyNewYear!"); Str1 = 0; memset(v6, 0, sizeof(v6)); printf("please input the true flag:"); scanf("%s", &Str1); if ( !strncmp((const char *)&Str1,原创 2021-09-10 18:39:52 · 1000 阅读 · 0 评论 -
BUUCTF Reverse easyre WriteUp
easyre拿到题目先打开看看,输入两个值后会执行完毕,看不见信息,那么只能确定有两个输入。拖IDA看看代码就出来了。原创 2021-09-10 18:33:01 · 173 阅读 · 0 评论