Crypto
散乱的密文
8fd4a@4c9@4gf15{50}l72d3
提示了2 1 6 5 3 4,我们直接横向排列
2 | 1 | 6 | 5 | 3 | 4 |
---|---|---|---|---|---|
8 | f | d | 4 | a | @ |
4 | c | 9 | @ | 4 | g |
f | 1 | 5 | { | 5 | 0 |
} | l | 7 | 2 | d | 3 |
按顺序竖着抄下来fc1l84f}a45d@g034@{2d957
,然后栅栏解密,注意这里是W型栅栏解密,行数6
flag:flag{52048c453d794df1}@@
综合解密
596d687162534268643252344948686b5a6e5967636a56355a79426b636d6432
先16进制转字符串,再base64解码得到bhjm awdx xdfv r5yg drgv
,这些字母在键盘上围起来的字母取出来就是flag
flag:flag{nsctf}
rsa1
直接给了公钥和密文,先解析公钥
分析n,得到p和q
脚本跑跑跑
1import gmpy2
2import rsa
3
4e = 65537
5n = 86934482296048119190666062003494800588905656017203025617216654058378322103517
6p = 285960468890451637935629440372639283459
7q = 304008741604601924494328155975272418463
8
9phin = (q - 1) * (p - 1)
10d = gmpy2.invert(e, phin)
11
12key = rsa.PrivateKey(n, e, int(d), p, q)
13
14with open("C:\\Users\\Mr.Wu\\Desktop\\rsa1\\flag.enc", "rb+") as f:
15 f = f.read()
16 print(rsa.decrypt(f, key))
flag:nsfocus{seay_rsa}
Misc
剧情大反转
十六进制打开
看到最后有b405,题名也叫反转,50 4b是压缩包文件头,所以这里把字符串反转,直接复制下来放在线网站上即可。
把反转后的十六进制数据保存为zip文件,然后打开zip文件出现图片。
先水平翻转,再180度旋转出现flag
flag:flag{99f0fd18f89e6b73f05c139b0a9e4c98}
五彩斑斓的青春~
下载是个未知文件,名字叫zip,解码文件头50 4b,应该就是zip文件了,加上zip后缀解压打开,里面只有一个html文件,打开如图
每句话都有RGB颜色,把负数去掉拼接起来3166393233623939323338643634306262386461643739613263343338626433
,16进制转字符串1f923b99238d640bb8dad79a2c438bd3
flag:flag{1f923b99238d640bb8dad79a2c438bd3}
流量分析~
这题经过lewiserii大佬指点
附件解压是个pcapng文件,用wireshark打开,搜索相关文件,如zip、doc、txt、rar等,这里搜索到666.zip
跟踪下面那条200数据的TCP流
pk头说明是压缩文件,导出为zip,打开后有6个txt文件
打开第一个发现是8950开头,应该是png的十六进制,转为png发现只是一部分二维码。所以将6个txt里的字符串拼接起来转为png图片,然后识别二维码即可
flag:flag{3819169573b7a37786d2ea39c6daef76}
misc1-bwm
bwm盲水印,地址在这:盲水印,一种图像隐写方式,把两张图使用脚本进行反解,注意python3版本的脚本和python2的原理一样的,但是python3与python2的random算法不同,使用python3脚本需要在命令后加--oldseed
我的python3脚本名称为bwm.py,我将两张图进行反解,将解出的水印图保存为C.png。命令如下:
python bwm.py decode B2.png 2.png C.png --oldseed
水印如图
flag:nsfocus{EasyBwm}
misc2-weight
解后里面是一张无法打开的png图片,十六进制打开。非常明显的IDAT缺失
补上,图片如下
宽高有问题,把高改成与宽一样
识别,即可出flag
flag:nsfocus{f5b7e4b23076f925ab0fd214e58aa675}
Reverse
re1
64位,无壳,拖IDA里看看
进第一行字符串里看看
把这两段拼起来,16进制转字符串
flag:nsfocus{674cc15823d087192c6f3ae919b8ce78}
Game
按顺序输入1-8直接出flag,摸索着玩一会也会出
正常解法:等我写出来再搞
re2
64位无壳,拖进IDA
伪代码大致就是满足if里的条件进入s0_such(Str)
里,跟进去
近百条case语句,真的flag应该是其中某一条,这里的switch里是v2,我们看到v2=a1[6]-3
,刚才的伪代码里str[6]=83,所以这里v2为80,flag里base64解码
flag:nsfocus{Th4_A11-Know1ng_K1ng}
Web
签到喽~
网络响应头里
Myself~
自己的电脑,XFF欺骗,修改请求头X-Forwarded-For即可,这里推荐使用ModHeader插件
从主页跳转,修改Referer为靶机主页
得到flag:flag{15cc8eee88302965c61497c147e6ca4c}
php是……
读代码,伪协议绕过
payload:?ac=1&fn=data:,1
flag:flag{5592f1a9fa885a77ba55497e501a101a}