符合加密文件的解密方法以及思路文件的思考(附件在文章内)

本次解题思路是以我校的校赛的部分题目为来源(文章发出来的时候校赛已经结束,所以不用担心泄密的问题,为了保护文件,我就不提供校赛网站网址了)

BabySighin.exe

文件链接:

链接: https://pan.baidu.com/s/1bHruZBudsa44JAfq-VhE-g?pwd=w3j4

提取码: w3j4 

这个是reverse的第一道题目

我们下载之后可以知道,这个题目经过了pyinstaller的加工处理(由py文件转变为了exe文件),所以我们要进行反向操作-即将exe文件通过解包的形式进行处理变为py文件的形式

经过加个处理

我们得到了一个py文件

具体方法

首先,你得有pyinstxtractor.py文件

下载链接我放在这里了

链接: https://pan.baidu.com/s/1sp1hj2FxAXBG5hX0FXsTRA?pwd=4f7f 提取码: 4f7f

将文件下载了之后,记得在所在文件夹的位置的地址栏上方输入cmd

这个需要下载一个环境来实现

在弹出来的方框上输入以下内容:

pip install uncompyle6

先进行安装

其次,确保你下载的exe文件和pyinstxtractor.py文件

然后,输入命令

  Python pyinstxtractor.py BabySignin.exe

我们就会得到以下的文件夹,只要能出现以下的界面就说明运行成功了

打开文件夹,我们得到如下的pyc文件

这个时候就需要用到另外一个工具了,将pyc文件转为py文件

Pycdc.exe文件,这个是之前学长给我们的,具体的逻辑我也不是很明白

注意,pyc文件如果是直接进行打开的话会发现根本就打开不了

只能通过pyc操作之后进行处理,但是只能识别出原先py文件的代码

我们现在发现

def getstr():

    data = 'h+dkhBHncQLzc6P/nRhfnOp3l4oMc38OnOx0tAlvpBlInP9/tAkNsQkx8i4x8i5X'

    string1 = '0123456789abcdefghijklmnopqrstuvwxyz+/ABCDEFGHIJKLMNOPQRSTUVWXYZ'

    string2 = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'

    bytes = base64.b64decode(data.translate(str.maketrans(string1, string2)))

    result = bytes.decode()

    return result

我们发现了这里是base64加密的范畴

但是如果我们要是仔细观察的话会发现

这个是base64的改表

使用赛博厨子的方法进行

得到上方的例子

所得flag为:

FCTF{W3lc0me_tO_FCTF2024_H@ve_fun_Reve3se!!!!!!}

解题完毕

  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值