1.派森
腐乳昂木 奥普瑞特儿 阴坡尔特 艾克斯奥尔
腐乳昂木 提克有第爱慕 阴坡尔特 ⭐
弗拉格 等于 布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉
印刻 等于 左中括号右中括号
佛儿 唉 因 梯软者左括号 零,楞左括号弗拉格右括号,四右括号冒号印刻。鹅潘德(艾克斯奥尔(奥尔德(弗拉格【唉】),奥尔德(弗拉格【唉加二】)))印刻。鹅潘德(艾克斯奥尔(奥尔德(弗拉格【唉加一】),奥尔德(弗拉格【唉加三】)))印刻。鹅潘德(奥尔德(弗拉格【唉加二】))印刻。鹅潘德(奥尔德(弗拉格【唉加三】))
普瑞因恩特左括号印刻右括号
井号[16, 29, 67, 84, 31, 75, 89, 48, 30, 111, 107, 48, 49, 52, 95, 67, 6, 2, 110, 51, 44, 69, 95, 118, 74, 45, 121, 95, 70, 84, 49, 49, 0, 0, 33, 33, 0, 10, 113, 125]
大致翻一下
from operator import xor
from 提克有第爱慕 import ⭐
flag = 布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉
ink = []
for i in range( 0,len(flag),4):ink.append(艾克斯奥尔(ord(flag[i]),ord(flag[i+2])))ink.append(艾克斯奥尔(ord(flag[i+1]),ord(flag[i+3])))ink.append(ord(flag[i+2]))ink.append(ord(flag[i+3]))
print(ink)
井号[16, 29, 67, 84, 31, 75, 89, 48, 30, 111, 107, 48, 49, 52, 95, 67, 6, 2, 110, 51, 44, 69, 95, 118, 74, 45, 121, 95, 70, 84, 49, 49, 0, 0, 33, 33, 0, 10, 113, 125]
直接脚本
c = [16, 29, 67, 84, 31, 75, 89, 48, 30, 111, 107, 48, 49, 52, 95, 67, 6, 2, 110, 51, 44, 69, 95, 118, 74, 45, 121, 95, 70, 84, 49, 49, 0, 0, 33, 33, 0, 10, 113, 125]
flag = ""
for i in range(0,len(c),4):flag = flag + chr(c[i]^c[i+2])flag = flag + chr(c[i+1]^c[i+3])flag = flag + chr(c[i+2])flag = flag + chr(c[i+3])
print(flag)
SICTF{Y0u_k0nw_Ch1n3s3_v3ry_we11!!!!qwq}
2.外星信号 Ultra
脚本解码文件
import random
random.seed(496534891)
out = b""
with open("data","rb") as f:data = f.read()out = bytes([byte^random.randint(10,20) for byte in data])
f = open("deepsea.wav","wb")
f.write(out)
f.close()
print("OK")
得到解压缩密码:9982443531668,解压缩文件,Base2048解码
SICTF{Extra7err3str1al_signals_h1dd3n_1n_APPLE!}
3.模型的秘密
解压缩得到密码字典,直接爆破
得到解压缩密码:haldaemon,直接解压缩
补全文件头部
工具blender打开
SICTF{fLAG1nTheM8deL}
4.Picture
根据题目反向写脚本
'''
from random import randint
from PIL import Image
flag = Image.open('flag.png')
width, height = flag.size
image1 = Image.new(mode="RGB", size=flag.size, color="white")
image2 = Image.new(mode="RGB", size=flag.size, color="white")
for i in range(width):for j in range(height):r,g,b = flag.getpixel((i,j))tr, tg, tb = randint(0, 254), randint(0, 254), randint(0, 254)image1.putpixel((i,j),(tr,tg,tb))image2.putpixel((i,j),(r-tr,g-tg,b-tb))
image1.save('flag1.png')
image2.save('flag2.png')
'''
from LazyImage import *
#获取图片尺寸
w_h = Get_Img_Width_Heigh("flag1.png")
#获取图片所有像素
flag1 = Get_Img_All_Pixers("flag1.png")
flag2 = Get_Img_All_Pixers("flag2.png")
n = len(flag1)
out = []
for i in range(n):tmp2 = flag2[i]tmp1 = flag1[i]#反向相加,再模255r = (tmp2[0] + tmp1[0])%255g = (tmp2[1] + tmp1[1])%255b = (tmp2[2] + tmp1[1])%255tmp = (r,g,b)out.append(tmp)
#print(out)
Write_Pixers_Image(out,"flag.png",w_h[0],w_h[1])
SICTF{e95385d2-0c9a-4f35-91d0-dd387e74925a}