对题目进行部分复现(有的自己写的脚本太丑了用的官方的,同时不会的题直接放了官方wp)
考点:
midi(音乐编程语言解密)
n2s(ipython下运行编译)
磁盘取证
VeraCrypt挂载加密容器
RGB通道信息查看
SSTV
deepsound
内存取证(主机密码爆破)
PNG文件结构的梳理
01转二维码
USB流量分析(键鼠)
螺旋矩阵变换
傅里叶盲水印
异或变换
silence(带密码的音频)
crc32爆破
emojiaes解密
pyc反编译(xor)
cloacked-pixel(带密码的lsb)(ciscn2022题用过)
brcrack的使用
垃圾邮件解密
流量分析
奇怪符号的解密
信息搜索能力
压缩包的各种方式
社工题(
Week1
奇怪的符号
垃圾邮件
Week2
babyre
pyc反编译得到源代码
import base64
def encode(str):
fflag = '0'
for i in range(1, len(flag)):
x = ord(flag[i]) ^ ord(flag[(i - 1)])
x += 30
fflag += chr(x)
return base64.b64encode(fflag)
flag = open('flag.txt').read()
enc = encode(flag)
print enc
就是将原flag的每位与上位异或再加30后base64加密
import base64
cipher=open(r"C:\Users\16334\Desktop\out.txt").read()
ccipher=base64.b64decode(cipher)
flag='0'
for i in range(1,len(ccipher)):
a=ccipher[i]-30
flag+=chr(ord(flag[i-1])^a)
print(flag)
(同样用官方脚本)
隔空取物(带带我)
不太普通的图片
stegsolve得到密码
cloacked-pixel转换
哥们在这给你说唱
silence提取得到密码
deepsound隐写
Week3
螺旋升天
由于之前看过套神博客所以有点印象。
同时题目hint压缩包也是
压缩包的大小是289,构造一个17*17的矩阵变换
(这里直接引用官方wp脚本)
def function(n):
matrix = [[0] * n for _ in range(n)]
number = 1
left, right, up, down = 0, n - 1, 0, n - 1
while left < right and up < down:
# 从左到右
for i in range(left, right):
matrix[up][i] = number
number += 1
# 从上到下
for i in range(up, down):
matrix[i][right] = number
number += 1
# 从右向左
for i in range(right, left, -1):
matrix[down][i] = number
number += 1
for i in range(down, up, -1):
matrix[i][left] = number
number += 1
left += 1
right -= 1
up += 1
down -= 1
# n 为奇数的时候,正方形中间会有个单独的空格需要单独填充
if n % 2 != 0:
matrix[n // 2][n // 2] = number
return matrix
import struct
s = function(17)
s = sum(s,[])
f = open('flag.zip','rb').read()
arr = [0]*289
for i in range(len(s)):
arr[s[i]-1] = f[i]
with open('fflag.zip', 'wb')as fp:
for x in arr:
b = struct.pack('B', x)
fp.write(b)
证取单简
深夜补blog所以懒得复现了(
一开始看回收站有个flag.txt还费了半天劲去恢复
Time To Live(第一步没做出来)
我也很异或呢(呜呜我是fw,异或都不会)
Week4
听首音乐?
midi,考虑Velato这种音乐编程语言进行解密
然后用一下n2s
ColorfulDisk
挂载vmdk可以发现四个文件
"1"为加密容器
使用VeraCrypt进行挂载(密码则是password中的)
提取一个图片"1.png"
因为题目说是RGB,所以查看(一把梭发现0-7通道都有信息)
stegsolve提取
提取出wave,发现是SSTV,扫描得到压缩包密码
走失的猫猫
挂载vmdk提取catcat.png,一眼猫脸变换
文件尾发现猫脸变换参数
使用脚本进行转换
SIMPLE_QR
一把梭直接扫出第一段
第二段
由于一个png里只有一个IEND块
因此是两张图放在了一起(打开010也会报错)
这一段是缺少png文件头的数据,00 00 01 64 则是宽高
补全后得到二维码
binwalk分出第三段,01转二维码
Comments | NOTHING