CTF-Reverse | .re文件求flag-x64Elf-100

获得该文件,扩展名为(.re)

使用Exeinfo PE 查询得到如下信息

 NOT Win EXE - .o - ELF executable [ 64bit obj. Exe file - CPU : AMD x86-64 - OS: unspecified ] 

-> Compiler : GCC: (Ubuntu 4.8.4-2ubuntu1~14.04) 4.8.4

使用IDA-64 永乐汉化版,打开此文件 ,选择ELF64 forx86-64(Executable)[elff.dll]

IDA View-A 窗口中发现如下关键点

按下F5,查看伪代码,得到如下伪代码

双击下图红圈地方,进入该函数查看相应伪代码

得到结果如下:

分析if里面的内容

if ((&v3)[i % 3][2 * (i / 3)] - * (char *)(i + a1) != 1 ):

左右交换位置

(&v3)[i % 3][2 * (i / 3)] - 1 !=  * (char *)(i + a1)

此时,左边为计算,右边为结果,右边的结果是char型,则左边进行运算完毕之后,应当转为char型

翻译成python代码

v3 = "Dufhbmf"
v4 = "pG`imos"
v5 = "ewUglpt"
v=[v3,v4,v5]
for i in range(12):
   res=chr( ord( v[i % 3][2 * int(i / 3)] )- 1 )
   print(res,end="")

int(i/3) :是为了防止有小数(索引无小数)

运行可得到结果:

Code_Talkers

本题文件下载地址:CSDN下载  所需积分:0 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

萌狼蓝天

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值