ctfshow单身杯
# ctfshow 单身杯 # Crypto # The Dancing Men 跳舞的小人 照着对就好 # 古典 base 密文 YONOM3TTDjRJUlYmlzl4cNLMZ2DTCDhBR0UvhmxzdONMZ3CzzGt1ENZimtk9 栅栏加 base64 可以将 ctfshow{ base64 以下 Y3Rmc2hvd3s= 发现每个隔了 4 栅栏爆破一下 # TooYoungRSA 明文可控 La 佬博客里可参考 from hashlib import *import gmpy2from Crypto.Cipher import AESfrom pwn...
more...PWNHUB
# PWNHUB 思路,只要求出 seed,都可以解了 f=a∗seed∗seed+b∗seed+cf=a*seed*seed+b*seed+c %pf=a∗seed∗seed+b∗seed+c a,b,c,p 都已知 可知 seed1 和 seed2 高位 那么就可以用 coppersmith 求 得到 seed1,在解方程,得到两个解,验证一下 然后就可以爆破 sha256 了 题解 from hashlib import sha256from Crypto.Util.number import inverse, getPrimefrom tqdm import...
more...DASCTF Apr X FATE 防疫挑战赛
# easy_real import randomimport hashlibflag = 'xxxxxxxxxxxxxxxxxxxx'key = random.randint(1,10)for i in range(len(flag)): crypto += chr(ord(flag[i])^key)m = crypto的ascii十六进制e = random.randint(1,100)print(hashlib.md5(e))p =...
more...红明谷2022
# 红谷杯 2022 # CRYPTO # easy_ya from Crypto.Util.number import *import osfrom flag import flagdef gen(): e = 3 while True: try: p = getPrime(512) q = getPrime(512) n = p*q phi = (p-1)*(q-1) d = inverse(e,phi) return p,q,d,n,e except: continue returnp,q,d,n,e = gen()r = getPrime(512)m =...
more...文件上传
# 检测绕过 # 1.js 检测 一般网页会有 JavaScript 对文件名后缀进行黑名单或者白名单检测 可以用 bp 进行抓包改名字绕过 例题:pass-01 # 2.MIME 检测 MIME 是设定某种扩展名的文件用一种应用程序来打开的方式类型,当该扩展名文件被访问的时候,浏览器会自动使用指定应用程序来打开。 常见的信息头为: Content-Type: 上传文件的时候可能会检测文件的文件类型,一般会规定是图片类型,可能就要改成: Content-Type: image/jpeg 例题:pass-02 # 3. 文件头检测 对文件头进行检测,其实做 misc 的时候用 010...
more...虎符杯
# 虎符杯 # RRSSAA from Crypto.Util.number import getPrime, inverse, GCD, bytes_to_longfrom random import randintfrom secret import hint, flagdef seq(r, k): v = [r, 2] for i in range(1, k): v = [r * v[0] - v[1], v[0]] ret = v[0] if k != 0 else v[1] return retdef encrypt(m, e, n): while True: r =...
more...