buu 刮开有奖
一.查壳,

二.拖入ida,分析
直接搜字符串完全没头绪,在看了大佬的wp才找到了,关键函数。

明显那个String就是我们要求的flag,要开始分析程序。
字符串长度为8,同时这个函数对字符串进行了处理,点击进去,贼复杂,拖入编译器执行,看看

#include<bits/stdc++.h>
using namespace std;
char a[]={'Z', 'J','S','E','C','a','N','H','3','n','g'};
int sub_4010F0(char a[], int a2, int a3)
{
int result; // eax
int i; // esi
int v5; // ecx
int v6; // edx
result = a3;
for ( i = a2; i <= a3; a2 = i )
{
v5 = 4 * i;
v6 =a[4*i];
if ( a2 < result && i < result )
{
do
{
if ( v6 > a[4*result] )
{
if ( i >= result )
break;
++i;
a[v5] =a[4*result];
if ( i >= result )
break;
while (a[4*i] <= v6 )
{
if ( ++i >= result )
goto LABEL_13;
}
if ( i >= result )
break;
v5 = 4 * i;
a[4*result] = a[4*i];
}
--result;
}
while ( i < result );
}
LABEL_13:
a[4*result] = v6;
sub_4010F0(a, a2, i - 1);
result = a3;
++i;
}
return result;
}
int main()
{
sub_4010F0(a,0,10);
for(int i=0;i<10;i++)
{
printf("%c",a[i]);
}
}
执行后,发现变成了这个
3,C,E,H,J,N,S,Z,a,g
三.分析下一个函数。

这几行是将字符串的345位和678位字符串进行base64的编码,所以熟悉加密算法是很有必要的。
四.看if

根据这句话,基本能得出7位字符串,JWP1jMp
第一位的字符不知道,但是可以爆破啊,就26个字母是吧,是U,提交就ok
了
buu 刮开有奖的更多相关文章
- BUUOJ reverse 刮开有奖
刮开有奖 这是一个赌博程序,快去赚钱吧!!!!!!!!!!!!!!!!!!!!!!!!!!!(在编辑框中的输入值,即为flag,提交即可) 注意:得到的 flag 请包上 flag{} 提交 拖到id ...
- [BUUOJ]刮开有奖reverse
刮开有奖 这是一个赌博程序,快去赚钱吧!!!!!!!!!!!!!!!!!!!!!!!!!!!(在编辑框中的输入值,即为flag,提交即可) 注意:得到的 flag 请包上 flag{} 提交 1.查壳 ...
- [BUUCTF]REVERSE——刮开有奖
刮开有奖 附件 步骤: 例行检查,无壳,32位程序 32位ida载入,shift+f12检索程序里的字符串,看到了一个base64加密的特征字符串,猜想这题用到了base64加密 从main函数开始看 ...
- BUUCTF 刮开有奖 WriteUp
题目链接 https://buuoj.cn/challenges#%E5%88%AE%E5%BC%80%E6%9C%89%E5%A5%96 题解 用IDA打开,按F5反编译,双击进入DialogFun ...
- BUUCTF--刮开有奖
文件链接:https://buuoj.cn/files/abe6e2152471e1e1cbd9e5c0cae95d29/8f80610b-8701-4c7f-ad60-63861a558a5b.ex ...
- 服务端性能测试工具校验v1.1
服务端性能测试工具校验v1.1 更新说明: 1.精简CRT运行库支持. 2.添加响应模拟测试,校验压力测试工具的响应时间统计准确性. 3.大并发请求请降低延迟时间 WEIMJSAM原创,转载请注明出处 ...
- 服务端性能测试工具校验v1.0
性能测试工具对服务端进行并发测试时,如果工具本身问题或异常就会造成真实并发与实际并发有差距,要测试10000/S并发的性能结果实际到达服务端的并发达不到95%,这样的测试无效. 所以给大家共享,我做的 ...
- Visual.Studio.2013.IDE+visual.studio.15.preview5 编译器
硬盘版Visual.Studio.2013.IDE + visual.studio.15.preview5 编译器 使用前注意以下事项: 1.右键-管理员权限安装,VS15补丁.exe,补丁是VS15 ...
- 测试工具之Charles视频教程(更新中。。。)
应群里小伙伴学习需求,录制新版 Charles V4 系列教程,后续内容抽空更新,测试工具系列带你上王者...(ノ°ο°)ノ前方高能预警 链接:http://pan.baidu.com/s/1c16P ...
随机推荐
- Python将PDF转为TXT
PDFMiner----python的PDF解析器和分析器 1.官方文档:http://www.unixuser.org/~euske/python/pdfminer/index.html 2.特征 ...
- VMware虚拟机CentOS磁盘扩容
版本信息: VMware Workstation 15 Pro 15.5.2 build-15785246, CentOS7 原虚拟机默认20G,安装东西多了,磁盘空间不够用, docker mys ...
- Lua时间互转
1. 时间戳转成格式化字符串 直接利用函数os.date()将时间戳转化成格式化字符串. local timestamp = 1561636137; local strDate = os.date(& ...
- RMAN-06172: no AUTOBACKUP found or specified handle is not a valid copy or piece
问题描述:将备份集从一台主机拷贝到另外一台主机后,在通过RMAN将数据库恢复到同类机异机的时候,restore spfile一直报RMAN-06172: no AUTOBACKUP found or ...
- AI框架类FAQ
AI框架类FAQ 数据处理 问题:如何在训练过程中高效读取数量很大的数据集? 答复:当训练时使用的数据集数据量较大或者预处理逻辑复杂时,如果串行地进行数据读取,数据读取往往会成为训练效率的瓶颈.这种情 ...
- 系统芯片(SOC)架构- Aviral Mittal
系统芯片(SOC)架构- Aviral Mittal System on Chip Architecture-Aviral Mittal 此技术是在设计片上系统时考虑体系结构级别的因素.同样,范围是围 ...
- 蓝牙mesh网络技术的亮点
蓝牙mesh网络技术的亮点 The highlights of Bluetooth mesh networking technology 导言 蓝牙是当今最主要的低功耗无线技术之一,对无线设备用户和开 ...
- mybatis 实现增删改查(CRUD)
如何创建项目,注入依赖,编写核心配置文件.工具类.实体类这里就不详细说了,具体可以参考下边这条博文 https://www.cnblogs.com/bear7/p/12491937.html 这里将详 ...
- vue3.0的变化
初涉vue3.0,下面是我在demo中遇到的一些问题(我是用的vue-cli进行开发) [1]main.js中配置 第一个变化 vue2.x === Vue.prototype.$baseURL= ...
- Spring FactoryBean和BeanFactory 区别
1 BeanFactory 是ioc容器的底层实现接口,是ApplicationContext 顶级接口 spring不允许我们直接操作 BeanFactory bean工厂,所以为我们提供了App ...