BaseCTF2024新生赛 Reverse week2 (下)

目录

世界上最简单的题目

Ezpy

最简单的编码

RivestCipher


世界上最简单的题目

打开文件发现有混淆

 记事本替换后的代码,

a1 =[1 ,1 ,1 ,3 ,1 ,1 ,1 ,3 ,1 ,1 ,1 ,3 ,1 ,1 ,3 ,1 ,1 ,3 ,1 ,1 ,3 ,1 ,3 ,1 ,3 ,1 ,3 ]#line:6
f1 =[101 ,102 ,117 ,120 ,119 ,108 ,102 ,124 ,100 ,109 ]#line:7
def o1 ():#line:13
    return input ("please input your flag: ")#line:14


def p1 (aaa1 ):#line:20
    return list (aaa1 )#line:21


def main ():#line:27
    aaa2 =o1 ()#line:28
    a111 =1 #line:29
    a000 =0 #line:30
    if len (aaa2 )!=len (f1 ):#line:36
        print ("Input length does not match.")#line:37
        exit ()#line:38
    aaa5 =p1 (aaa2 )#line:44
    for aaa7 in range (len (a1 )):#line:50
        if a1 [aaa7 ]==1 :#line:51
            aaa5 [a000 ]=chr (ord (aaa5 [a000 ])^a111 )#line:57
            a111 +=1 #line:58
        elif a1 [aaa7 ]==3 :#line:59
            a000 +=1 #line:60
    for aaa6 in range (len (f1 )):#line:66
        if f1 [aaa6 ]!=ord (aaa5 [aaa6 ]):#line:67
            print ("nooooo")#line:68
            exit ()#line:69
    print ("yes, your flag is")#line:75
    print ("BaseCTF{"+''.join (aaa2 )+"}")#line:76


if __name__ =="__main__":#line:82
    main ()#line:83

很容易写出解密脚本 

a1 =[1 ,1 ,1 ,3 ,1 ,1 ,1 ,3 ,1 ,1 ,1 ,3 ,1 ,1 ,3 ,1 ,1 ,3 ,1 ,1 ,3 ,1 ,3 ,1 ,3 ,1 ,3 ]#line:6
f1 =[101 ,102 ,117 ,120 ,119 ,108 ,102 ,124
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值