技能1
很明显的提示,base base base 且字符串有等号,3次base64解码
import base64
str1 = "V20xNGFGb3pkRWRUTUZKTVZUQmFSVk5yZEUxV01GWllVbFpHUmxZd1pEaz0="
print(base64.b64decode(base64.b64decode(base64.b64decode(str1))))
得到flag
技能2
这个口令有、弱
WinRAR打开
发现注释是字典
拖到APRZ字典爆破
得到密码
发现图片,扔WinHex分析搜索发现flag
海绵宝宝派大星
直接社工
压缩包密码19860714
分离gif
普通音乐
高位0 低位1
110011011011001100001110011111110111010111011000010101110101010110011011101011101110110111011110011111101
105位,不能ASCII转换
但可被7整除,补零
01100110,01101100,01100001,01100111,01111011,01010111,00110000
01010111,00101010,01100110,01110101,01101110,01101110,01111001,
01111101
得flag
凯撒大帝
发现data img,由此利用网页打开此base64编码的图片
扫码可得
由题目提示,凯撒加密
得到flag
简单的RSA
先用分解大整数的网站分解出p,q
import libnum
from Crypto.Util.number import long_to_bytes
p = 138376604533530412400239558340424700312412702699022481119357799054715877829291635290832719835033140580690053865677079316241919169166375123691917675235979462772103681398725285808551041924624882840901583892858174270714471366531758975241868470938138238307005782651296179579961869801841395682782645916848523771439
q = 167807411649676462546661119644113081915542378755778327057156191284453150887662343414908916953154897183613548083558919410359642450001343644814021159828724844730881111955050992398535063409828169462180970629537792676998647880110463527555034040871485964361418080481113059959410616446772218038141157051007091689351
e = 65537
n = 23220619839642624127208804329329079289273497927351564011985292026254914394833691542552890810511751239656361686073628273309390314881604580204429708461587512500636158161303419916259271078173864800267063540526943181173708108324471815782985626723198144643256432774984884880698594364583949485749575467318173034467846143380574145455195152793742611717169602237969286580028662721065495380192815175057945420182742366791661416822623915523868590710387635935179876275147056396018527260488459333051132720558953142984038635223793992651637708150494964785475065404568844039983381403909341302098773533325080910057845573898984314246089
c = 9700614748413503291260966231863562117502096284616216707445276355274869086619796527618473213422509996843430296526594113572675840559345077344419098900818709577642324900405582499683604786981144099878021784567540654040833912063141709913653416394888766281465200682852378794478801329251224801006820925858507273130504236563822120838520746270280731121442839412258397191963036040553539697846535038841541209050503061001070909725806574230090246041891486506980939294245537252610944799573920844235221096956391095716111629998594075762507345430945523492775915790828078000453705320783486744734994213028476446922815870053311973844961
d = libnum.invmod(e, (p - 1) * (q - 1))
m = pow(c, d, n) # m 的十进制形式
string = long_to_bytes(m) # m明文
print(string) # 结果为 b‘ m ’ 的形式
得到flag的前半部分
同理得到后半部分
拼接得到flag
简单逆向
吐了,这题flag头没换,到最后才做出来
SoSoEasyReverse
不会了
你会画图吗
这题考完做出来的,吐了,附件我没搞明白哪个是哪个
from PIL import Image
img = Image.new("RGB", (500, 500))
values = []
with open(".\colorVector.txt", "r") as colorList:
for i in range(250000):
values.append(eval(colorList.readline()))
index = 0
for i in range(500):
for j in range(500):
img.putpixel((i, j), values[index])
index += 1
img.save("bb.png")
吐了
会画图的网站
也是比完做出来的
。。。
不知道是藏得深还是我眼睛不好使。。。
显然,url编码
难受。。。