0%

BUUCTF 每日打卡 2021-4-4

BUUCTF 每日打卡 2021-4-4

引言

今天把数分作业肝完了,明天肝完高代,假期就过去了 MG正义到了(堆积+1)

RSA3

看到 c1, c2, e1, e2, n 就猜到是共模攻击 见 CTF Wiki Crypto 部分 非对称加密 RSA 模数相关攻击 在这里插入图片描述

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
from Crypto.Util.number import *
import gmpy2

c1 = 22322035275663237041646893770451933509324701913484303338076210603542612758956262869640822486470121149424485571361007421293675516338822195280313794991136048140918842471219840263536338886250492682739436410013436651161720725855484866690084788721349555662019879081501113222996123305533009325964377798892703161521852805956811219563883312896330156298621674684353919547558127920925706842808914762199011054955816534977675267395009575347820387073483928425066536361482774892370969520740304287456555508933372782327506569010772537497541764311429052216291198932092617792645253901478910801592878203564861118912045464959832566051361
n = 22708078815885011462462049064339185898712439277226831073457888403129378547350292420267016551819052430779004755846649044001024141485283286483130702616057274698473611149508798869706347501931583117632710700787228016480127677393649929530416598686027354216422565934459015161927613607902831542857977859612596282353679327773303727004407262197231586324599181983572622404590354084541788062262164510140605868122410388090174420147752408554129789760902300898046273909007852818474030770699647647363015102118956737673941354217692696044969695308506436573142565573487583507037356944848039864382339216266670673567488871508925311154801
e1 = 11187289
c2 = 18702010045187015556548691642394982835669262147230212731309938675226458555210425972429418449273410535387985931036711854265623905066805665751803269106880746769003478900791099590239513925449748814075904017471585572848473556490565450062664706449128415834787961947266259789785962922238701134079720414228414066193071495304612341052987455615930023536823801499269773357186087452747500840640419365011554421183037505653461286732740983702740822671148045619497667184586123657285604061875653909567822328914065337797733444640351518775487649819978262363617265797982843179630888729407238496650987720428708217115257989007867331698397
e2 = 9647291

print(GCD(e1, e2)) # 1

def exgcd(a, b): # 扩展欧几里得算法,求ua+vb=gcd(a,b)中的u,v
if b == 0:
u, v = 1, 0
return (u, v)
if a < b:
a, b = b, a
u, v = exgcd(b, a%b)
u, v = v, u - a // b * v
return (u, v)

u, v = exgcd(e1, e2)
print(u, v)
m = gmpy2.powmod(c1, u, n) * gmpy2.powmod(c2, v, n) % n
print(long_to_bytes(m))

得到 flag : flag{49d91077a1abcb14f1a9d546c80be9ef}

世上无难事

题目给了一串字符: VIZZB IFIUOJBWO NVXAP OBC XZZ UKHVN IFIUOJBWO HB XVIXW XAW VXFI X QIXN VBD KQ IFIUOJBWO WBKAH NBWXO VBD XJBCN NKG QLKEIU DI XUI VIUI DKNV QNCWIANQ XN DXPIMKIZW VKHV QEVBBZ KA XUZKAHNBA FKUHKAKX XAW DI VXFI HBN QNCWIANQ NCAKAH KA MUBG XZZ XEUBQQ XGIUKEX MUBG PKAWIUHXUNIA NVUBCHV 12NV HUXWI XAW DI XUI SCQN QB HZXW NVXN XZZ EBCZW SBKA CQ NBWXO XAW DI DXAN NB NVXAP DXPIMKIZW MBU JIKAH QCEV XA BCNQNXAWKAH VBQN HKFI OBCUQIZFIQ X JKH UBCAW BM XLLZXCQI XAW NVI PIO KQ 640I11012805M211J0XJ24MM02X1IW09 不知道是什么,猜想为替换密码,尝试爆破:https://quipqiup.com/ 得到结果: 在这里插入图片描述 flag 为 640E11012805F211B0AB24FF02A1ED09 再将大写字母替换成小写字母:

1
2
3
4
5
6
7
8
9
10
key = '640E11012805F211B0AB24FF02A1ED09'
flag = ''

for i in range(len(key)):

if ord('A') <= ord(key[i]) <= ord('Z'):
flag += chr(ord(key[i]) - ord('A') + ord('a'))
else:
flag += key[i]
print(flag)

结语

已经4号了,GO语言还没开始学(咕咕咕) 希望继续坚持

欢迎关注我的其它发布渠道

-------- 本文结束 感谢阅读 --------