reverse3题解

简介: reverse3题解

reverse3题解


1.查壳

是一个32位可执行文件,没有壳

2.拖入32位IDA静态分析

找到_main_0函数

按下F5反编译

函数稍有点复杂,可以先看看string窗口,看看有没有什么关键的字符串能帮助解题

找到一个标准的base64编码表,说明这个题应该用到了base64加密

base64加密有关内容

Base64编码和Python解码_光无影的博客-CSDN博客

带着这个获取到的信息继续有针对性地查看反编译的代码

sub_41132F("please enter the flag:");
  sub_411375("%20s", &Str);
  v3 = j_strlen(&Str);
  v4 = (const char *)sub_4110BE((int)&Str, v3, (int)&v12);
  strncpy(Dest, v4, 0x28u);

这个输入了flag,获取了长度

sub_4110BE可能就是对输入的Str进行了Base64加密,双击跟进查看

双击跟进sub_411AB0

这一段就是base64加密的特征代码,说明确实是对于这个输入的flag进行了base64加密

使用的应该是我们找到的标准base64编码表

返回主函数继续查看

 v4 = (const char *)sub_4110BE((int)&Str, v3, (int)&v12);
  strncpy(Dest, v4, 0x28u);
  v9 = j_strlen(Dest);
  for ( j = 0; j < v9; ++j )
    Dest[j] += j;
  v5 = j_strlen(Dest);

将加密后的字符串赋值给Dest,进行了一个for循环的操作

if ( !strncmp(Dest, Str2, v5) )
    sub_41132F("rigth flag!\n");
  else
    sub_41132F("wrong flag!\n");

然后将进行了这个操作后的字符串与Str2进行比较,相等就是正确的字符串,说明Str2中存储的就是加密并且for循环操作后的字符串

查看Str2,并且编写逆向脚本,先for循环减去for循环中加的数值,再对得到的字符串解密

双击跟进Str2,得到Str2

'e3nifIH9b_C@n@dH'

3.编写wp

import base64
tmp=""
Str2='e3nifIH9b_C@n@dH'
for i in range(0,len(Str2)):
    tmp+=chr(ord(Str2[i])-i)
flag=base64.b64decode(tmp.encode());
print(flag.decode())


相关文章
|
存储 容灾 云计算
经典网络建设方案案例
经典网络建设方案案例
564 0
经典网络建设方案案例
|
6月前
|
机器学习/深度学习 人工智能 边缘计算
AI 视觉识别技术在工业园智能安监中的应用实践
本文详解AI安监系统的技术架构、核心算法与工程化方案,展示其如何通过计算机视觉实现全场景风险主动防控。
397 0
|
9月前
|
人工智能 算法 数据管理
制作像素风《饥荒》类游戏的整体蓝图和流程
制作一个像素风《饥荒》类游戏的整体蓝图和流程
|
存储 索引 Python
一文让你搞懂 Python 的 pyc 文件
一文让你搞懂 Python 的 pyc 文件
774 10
|
SQL 关系型数据库 MySQL
0基础学习SQL注入之万能账号密码(BUUctf例题-[极客大挑战 2019]EasySQL1)
0基础学习SQL注入之万能账号密码(BUUctf例题-[极客大挑战 2019]EasySQL1)
20基础解决-buuctf-1.RSA1
20基础解决-buuctf-1.RSA1
|
人工智能 PyTorch 算法框架/工具
StableAnimator:复旦联合微软等机构推出的端到端身份一致性视频扩散框架
StableAnimator是由复旦大学、微软亚洲研究院、虎牙公司和卡内基梅隆大学联合推出的端到端身份一致性视频扩散框架。该框架能够根据一张参考图像和一系列姿态,直接合成高保真度且保持人物身份一致性的视频,无需任何后处理工具。本文详细介绍了StableAnimator的主要功能、技术原理以及如何运行该框架。
553 7
StableAnimator:复旦联合微软等机构推出的端到端身份一致性视频扩散框架
|
数据安全/隐私保护
BUUCTF [GXYCTF2019] CheckIn 1
BUUCTF [GXYCTF2019] CheckIn 1
634 0
|
安全 Linux 测试技术
Kali Linux渗透测试教程:解锁黑客之门
Kali Linux渗透测试教程:解锁黑客之门
1039 3