BUUCTF Reverse/[FlareOn1]Bob Doge

2023-11-21 09:20
文章标签 buuctf reverse bob doge flareon1

本文主要是介绍BUUCTF Reverse/[FlareOn1]Bob Doge,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在这里插入图片描述

先看信息,64位程序,无壳

在这里插入图片描述

然后我用IDA打开看了半天,啥也看不出来

运行一下,发现是个安装程序

在这里插入图片描述

安装完成

在这里插入图片描述

安装后的程序为Challenge1.exe ,32位,用C#写的

在这里插入图片描述

点击DECODE会变成一个狗头

在这里插入图片描述
在这里插入图片描述

用IDA打开发现不行,无法反汇编,然后搜了下C#逆向,看到篇文章:推荐.Net、C# 逆向反编译四大工具利器

在这里插入图片描述

改用NET打开,这里可以看到DECODE!这个按钮,点进去查看这个按钮的事件

在这里插入图片描述

发现这里有三个for循环,取用了data_secret这个里面的资源

在这里插入图片描述

data_secret在Resources里面

在这里插入图片描述

写个脚本,

#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <math.h>
int main()
{int buffer[] = {0xA1,0xB5,0x44,0x84,0x14,0xE4,0xA1,0xB5,0xD4,0x70,0xB4,0x91,0xB4,0x70,0xD4,0x91,0xE4,0xC4,0x96,0xF4,0x54,0x84,0xB5,0xC4,0x40,0x64,0x74,0x70,0xA4,0x64,0x44,0};  //最后加个0,控制循环条件char str[50];for (int i = 0; buffer[i] != 0; i++){int num2 = buffer[i];str[i] =  ((num2 >> 4) | ((num2 << 4) & 240)) ^ 0x29;}printf("str = %s\n",str);char str2[50];for (int j = 0; j < strlen(str); j += 2){str2[j] =  str[j+1];str2[j+1] = str[j];}printf("str2 = %s\n",str2);char str3[50];for (int k = 0; k < strlen(str2); k++){char ch1 = str2[k];str3[k] =  ch1 ^ 0x66;}printf("str3 = %s\n",str3);return 0;
}

运行结果

在这里插入图片描述

根据hint可知第一个符合条件

在这里插入图片描述

最终flag:flag{3rmahg3rd.b0b.d0ge@flare-on.com}

这篇关于BUUCTF Reverse/[FlareOn1]Bob Doge的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/401377

相关文章

BUUCTF靶场[web][极客大挑战 2019]Http、[HCTF 2018]admin

目录   [web][极客大挑战 2019]Http 考点:Referer协议、UA协议、X-Forwarded-For协议 [web][HCTF 2018]admin 考点:弱密码字典爆破 四种方法:   [web][极客大挑战 2019]Http 考点:Referer协议、UA协议、X-Forwarded-For协议 访问环境 老规矩,我们先查看源代码

BUUCTF(34)特殊的 BASE64

使用pycharm时,如果想把代码撤销到之前的状态可以用 Ctrl+z 如果不小心撤销多了,可以用 Ctrl+Shift+Z 还原, 别傻傻的重新敲了 BUUCTF在线评测 (buuoj.cn) 查看字符串,想到base64的变表 这里用的c++的标准程序库中的string,头文件是#include<string> 这是base64的加密函数 std::string

【CTF Web】BUUCTF Upload-Labs-Linux Pass-13 Writeup(文件上传+PHP+文件包含漏洞+PNG图片马)

Upload-Labs-Linux 1 点击部署靶机。 简介 upload-labs是一个使用php语言编写的,专门收集渗透测试和CTF中遇到的各种上传漏洞的靶场。旨在帮助大家对上传漏洞有一个全面的了解。目前一共20关,每一关都包含着不同上传方式。 注意 1.每一关没有固定的通关方法,大家不要自限思维! 2.本项目提供的writeup只是起一个参考作用,希望大家可以分享出自己的通关思路

leetcode#541. Reverse String II

题目 Given a string and an integer k, you need to reverse the first k characters for every 2k characters counting from the start of the string. If there are less than k characters left, reverse all of

杨bob的技术之旅

杨bob今天正式入驻csdn,以后要把自己每一点滴写成文章,这也是冲高阶的毕竟之路

XTOJ 1168 Alice and Bob (记忆化搜索)

OJ题目 : click here ~~ 题意分析:给一个数n,Alice可取1,2 , 4 ……2的i次方 ,Bob可取1,3,9……3的i次方。Alice先取,后Bob。轮流来,每个人至少取1。求n变成0,至少需要取多少次。记忆化搜索 = 搜索 + dp 。 AC_CODE #define gril 0#define boy 1using namespace std;const

[LeetCode] 7. Reverse Integer

题:https://leetcode.com/problems/reverse-integer/description/ 题目 Given a 32-bit signed integer, reverse digits of an integer. Example 1: Input: 123Output: 321Example 2:Input: -123Output: -321Ex

[LeetCode] 190. Reverse Bits

题:https://leetcode.com/problems/reverse-bits/ 题目大意 将32位的数,二进制翻转。 解题思路 解法和 将int a =123,翻转的思路 相同。 int b= 0;while(a>0){b = b*10 + a %10;a /=10;} 将新数整体左移一位,然后 取每个数的第i位置,将该位放到 新数的最低位。循环32次遍可以得到翻转。

BUUCTF PWN wp--bjdctf_2020_babystack

第一步   checksec一下,该题是64位的,该题目大概率是一道栈溢出(因为题目里面提到了stack) 分析一下这个二进制保护机制: Arch: amd64-64-little 这表示二进制文件是为64位AMD处理器设计的,使用的是小端序(little-endian)格式。RELRO: Partial RELRO RELRO(Relocation Read-Only)是一种安全特性,旨

BUUCTF—[网鼎杯 2020 朱雀组]phpweb

题解 打开题目是这样子的。 啥也不管抓个包看看,从它返回的信息判断出func后面的是要调用的函数,p后面的是要执行的内容。 那我们直接执行个系统命令看看,可以看到返回了hack,估计是做了过滤。 func=system&p=ls 直接读取源码看看咯,可以看到过滤了好多函数,反正我认识的可以进行命令执行的函数都给禁了。 func=file_get_contents&p=ind