[FlareOn3]Challenge1

下载题目

先看文本是什么

没什么用

查程序的壳

32位无壳程序

用IDA打开

F5查看反编译

可以看出sub_401260对输入内容进行了加密处理

点进去看看

看一下最后的byte_403000

一眼base64换表

这里的表是:

ZYXABCDEFGHIJKLMNOPQRSTUVWzyxabcdefghijklmnopqrstuvw0123456789+/

正常的base64表是:

ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/

上exp进行解密

import base64

encoded_flag = "x2dtJEOmyjacxDemx2eczT5cVS9fVUGvWTuZWjuexjRqy24rV29q"

#ZYXABCDEFGHIJKLMNOPQRSTUVWzyxabcdefghijklmnopqrstuvw0123456789+/
#ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/
_list = list("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/")

_flag = ""

for i in encoded_flag:
    if (ord(i) <= ord('W') and ord(i) >= ord('A')) or (ord(i) <= ord('w') and ord(i) >= ord('a')):
        _flag += chr(ord(i) + 3)
    elif i == 'X':
        _flag += 'C'
    elif i == 'Y':
        _flag += 'B'
    elif i == 'Z':
        _flag += 'A'
    elif i == 'x':
        _flag += 'c'
    elif i == 'y':
        _flag += 'b'
    elif i == 'z':
        _flag += 'a'
    else:
        _flag += i

print(_flag)

print(base64.b64decode(_flag).decode())

运行可以得到flag:flag{sh00ting_phish_in_a_barrel@flare-on.com}

提交

得分

参考exp[BUUCTF]REVERSE——[FlareOn3]Challenge1-优快云博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值