zoukankan      html  css  js  c++  java
  • bugku-就五层你能解开吗WP

    如题:

    链接: http://pan.baidu.com/s/1i4TQoz7 密码: w65m

    提示:第一层:CRC32 碰撞

    第二层:维吉尼亚密码

    第三层:sha1 碰撞

    第四层:md5 相同文件不同

    第五层:RSA

    第一层crc32碰撞:

    不多说直接上脚本,这里告诉一下如果自己直接用python写脚本跑的话会很慢,用github上的脚本跑会很快出来的,下面是我跑的结果

    选出看起来有意义的字符(也可以写脚本爆破),可以看到_CRC32_i5_n0t_s4f3组合起来看起有意义

    得到解压密码,进入第二关维吉尼亚密码

    可以看到一条密文和多个密钥(只有一个是正确的),写个python吧

    from pycipher import Vigenere
    b=open('pwd.txt','w')
    a=open('ciphertext.txt').read()
    for i in open("keys.txt"):
        i=i.replace('
    ','')
        flag=Vigenere(i).decipher(a)
        key=flag+'
    '
        b.write(key)
    b.close()
    print 'ok'
    

      

    一千条,难找啊,但是这题是维吉尼亚密码可以查找关键字如:vigenere,password,flag,key等关键字,查找password得到

    THEVIGENERECIPHERISAMETHODOFENCRYPTINGALPHABETICTEXTBYUSINGASERIESOFDIFFERENTCAESARCIPHERSBASEDONTHELETTERSOFAKEYWORDITISASIMPLEFORMOFPOLYALPHABETICSUBSTITUTIONSOPASSWORDISVIGENERECIPHERFUNNY

    可以从中看出password is vigenere cipher funny(空格可以从密文中看出),所以密码是vigenere cipher funny

    进入第三关,sha1 碰撞

    上python吧,代码如下

    import string
    import hashlib
    a=string.maketrans('', '')[33:127]#可以打印的字符
    for key1 in a:
        for key2 in a:
            for key3 in a:
                for key4 in a:
                    keys=key1+"7"+key2+"5"+"-"+key3+"4"+key4+"3"+"?"
                    sha1=hashlib.sha1(keys)
                    flag=sha1.hexdigest()
                    if "619c20c" and "a4de755" and "9be9a8b" and "b7cbfa5"and "e8b4365"in flag:
                        print keys
                        break
    

      

    不知道为什么我能跑出6个结果出来,一个一个试吧,发现 I7~5-s4F3? 是解压密码

    下一关,md5 相同文件不同

    这个百度了一下,下载了两个文件,这两个文件确实输出结果不同但是md5相同

    运行了其中一个发现这个是解压密码

    下一关,RSA

    用openssl求出N和e,发现n和e都非常大,这时候想到维纳攻击

    直接用github上的脚本跑得到d

    然后用rsatool生成私钥

    最后用openssl可求得flag

    flag如下

    这里flag打了马赛克,主要是为了你们不做伸手党,旨在动手实验。

     以上脚本都在这里了:链接:https://pan.baidu.com/s/1yeFJZ2nMeZI29gM10WXavA 密码:drif

  • 相关阅读:
    解决secureCRT数据库里没有找到防火墙 '无'问题
    关于mysql中int(1)中int后面的数字
    Mac下安装LNMP(Nginx+PHP5.6)环境
    MAC: Homebrew(代替yum)安装
    Mac下面的SecureCRT(附破解方案) 更新到最新的8.0.2
    如何在Macbook Pro搭建PHP开发环境
    MetaMask/metamask-inpage-provider
    MetaMask/safe-event-emitter
    mafintosh/end-of-stream
    MetaMask/sw-controller
  • 原文地址:https://www.cnblogs.com/Byqiyou/p/9410885.html
Copyright © 2011-2022 走看看