萌新赛-抱我

admin 2022年1月5日23:05:16CTF专场评论9 views512字阅读1分42秒阅读模式

>

>

萌新赛-抱我

yuchoxuuan

下载下来之后是一个py的加密程序,外加一大坨密文
先看他的加密程序

cstring = 'abcdefghijklmnopqrstuvwxyz{}_0123456789'
key = 'flag{********}'
length = 300
def encode():
    res = ''
    for i in range(1, length):
        c = random.randint(0, 36)
        res += cstring[c]
        for n in range(10):
            c = random.randint(0, len(key) - 1)
            res += key[c]
    return res

很简单,加密有两个要点
1.每隔10个字符扔一个随机的字符进去进行干扰
2.干扰字符之间的那十个字符是用flag填充的,但是是打乱顺序的flag
所以接下来就简单了
1,扔掉所有的干扰字符,
2,排列组合得到可能的flag

因为密文实在太长了,贴出来有碍观瞻,所以干脆截图算了
可以看出来 明文是由dfl3{6ga} 几个字符组成的,而且各个字符字频基本相等,所以不存在某个字符被用两次以上的可能了。
那么除去 flag{} 就只剩下 d 6 3 三个字符构成flag体
结合群主的爱好,很容易就知道flag是啥了


特别标注: 本站(CN-SEC.COM)所有文章仅供技术研究,若将其信息做其他用途,由用户承担全部法律及连带责任,本站不承担任何法律及连带责任,请遵守中华人民共和国安全法.
  • 我的微信
  • 微信扫一扫
  • weinxin
  • 我的微信公众号
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年1月5日23:05:16
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                  萌新赛-抱我 http://cn-sec.com/archives/719862.html

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: