攻防世界---->流浪者

做题笔记。

下载 查壳。

32ida打开。

程序运行状态:

一开始以为,,,base62 去解密 不对。。哈哈哈。

跟进看看。

动调一下发现,input不在这个函数里面。

对函数进行跟踪。

逆推就好。

先通过密文,逆推密文在abcd_62的v5也就是index。

再通过恒等式逆推input。

脚本:

encode = "KanXueCTF2019JustForhappy"

abcd_62 = "abcdefghiABCDEFGHIJKLMNjklmn0123456789opqrstuvwxyzOPQRSTUVWXYZ"

for i in encode:
    v5 = abcd_62.index(i)
    # print(v5,end=' ') # index: 19 0 27 59 44 4 11 55 14 30 28 29 37 18 44 42 43 14 38 41 7 0 39 39 48

    if 0 <= v5 < 10:  # ASCII码 (48-48) ~ (57-48) = 【0,9】
        print(chr(v5 + 48), end='')
    elif 10 <= v5 < 36:  # ASCII码 (97-87) ~ (122-87) = 【10,35】
        print(chr(v5 + 87), end='')
    else:                       # 同上。
        print(chr(v5 + 29), end='')

    # flag{j0rXI4bTeustBiIGHeCF70DDM}


flag{j0rXI4bTeustBiIGHeCF70DDM}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值