2018 HEBTUCTF Sudoku&Viginere
题目给了一个word 一个数独然后 Viginere
rry55t1r13
15_1t_3a5y
分别尝试提交,最后确定flag为:HEBTUCTF{15_1t_3a5y}
栅栏密码
最总flag{76d6207ceb064719cdf7b8d6168fefda}
4进制
查看题目
四进制很明显有三个前面的零省略了补上,转16,再转文本试一下
看到666心里就有谱了
最终flag{Fourbase123}
Ook
查看题目
ook编码在线解密
最终flag{1c470f09af4c86b7}
2018 AFCTF Morse
查看题目
摩斯密码解密
提交不对
十六进制转文本试一下
最终 afctf{1s’t_s0_345y}
CRC32 BOOM!
查看题目
先crc32碰撞 在明文攻击
得到密码为bugku_newctf
解压出flag.jpg。结果无法打开。
用文本打开,可以看到flag就在文件尾部:
最终flag{Crcrcrcrc_32_BOOM}
2018 HEBTUCTF 社会主义接班人
查看题目
在线解密就完了
最终HEBTUCTF{ejvovdasfjfvmrfmsdemxj}
查看题目
栅栏解密得到
栅栏中的base
查看题目
把这些 base16 base32 base64挨个转
再栅栏
最终flag{0939_F2A_BACD0}
2018 AFCTF 可怜的RSA
得到两个文件(中间那个公钥的也可以直接分解得到ne,然后分解n得到pq也是可以的)
不说了直接上脚本
from Crypto.PublicKey import RSA
from gmpy2 import *
from Crypto.PublicKey import RSA
from Crypto.Cipher import PKCS1_OAEP
from base64 import b64decode
from Crypto.PublicKey import RSA
f = open('D:\\pycharm\\venv\\mima\\gongyao\\public.key', 'rb').read()
pub = RSA.importKey(f)
n = pub.n
e = pub.e
p = 3133337
q = 25478326064937419292200172136399497719081842914528228316455906211693118321971399936004729134841162974144246271486439695786036588117424611881955950996219646807378822278285638261582099108339438949573034101215141156156408742843820048066830863814362379885720395082318462850002901605689761876319151147352730090957556940842144299887394678743607766937828094478336401159449035878306853716216548374273462386508307367713112073004011383418967894930554067582453248981022011922883374442736848045920676341361871231787163441467533076890081721882179369168787287724769642665399992556052144845878600126283968890273067575342061776244939
d = int(invert(e, (p-1)*(q-1)))
from Crypto.PublicKey import RSA
from Crypto.Cipher import PKCS1_OAEP
from base64 import b64decode
key_info = RSA.construct((n, e, d, p,