2023SYCGeekchallenge

November 15, 2023 ·  ·

SYC yyds!除区块链以外,还差一题ak,太菜啦,qwq~~

2023SYCGeekchallenge

2023SYCGeekchallenge

Misc

cheekin

考点:LSB隐写

公众号发送flag,得到一张图片

检查为LSB隐写

2zahuAKp7Bx4iTI

ez_smilemo

考点:反编译,字符串搜索

发现存在data.win文件,搜索后发现反编译工具UndertaleModTool

检索后发现存在一段base字符串

ZegbPd1kE59r3h4

解密后得到flag

fECjwTMqQnR6BWu

下一站是哪儿呢

考点:文件分离,银河文字密码,信息搜集

猪猪侠图片分离出一张图片,银河文字密码解密出得到IWANGTOGOYTOLIQUORCITY

a4Jy6OXvd2EhnmI

然后搜索酒城得到泸州

查询8月25日航班得到答案

pnAdREa6PMzX7sC

Qingwan心都要碎了

考点:信息搜集

做题流程 下载附件,是个网页;点进去,可以看到Yxx发的朋友圈;保存下来,用百度识图;发现是重庆中国三峡博物馆

xqr

考点:文件分离,二维码xor

首先使用foremost分离得到了两张二维码

由于其中有一张是模糊的,刚开始愣生生把那张修复好,但是完全扫不出东西

后来有了hint,才恍然大悟

一张尺寸为15×15,一张为75×75

首先 将两张恢复到同一尺寸,然后使用stegsolve的image combiner功能进行XOR

oQXf1PbvkL7g2YE

得到的二维码用微信扫码就得到flag

bGOlcXa8ekYJ4FE

Tears of the times

考点:取证痕迹分析

发现可疑地址

gb6V9ZC1MYpeq7R

找到相应图片买得到flag

hLcjIl7mYRrz4Vx

extractMe

考点:crc32碰撞

crc32碰撞4字节的,结果看图

mxFMAk7o5NqtrQ6

DEATH_N0TE

考点:像素点提取,LSB隐写

给了一张图片,010打开发现末尾有一段base,解密后无用

lsb查看发现存在一段base,解密后得到前半段flag

同时stegsolve查看发现像素点异常,故尝试提取

最终在每隔5个像素点得到需要的图片

脚本如下

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
from PIL import Image
# 存放于同名文件夹之下
im = Image.open('start.png')
pix = im.load()
width = im.size[0]
height = im.size[1]
# 根据实际所需填写像素间隔
a = 5
new_width = width // a
new_height = height // a
# 创建一个新的图像对象
new_img = Image.new("RGB", (new_width, new_height))
for x in range(0, width, a):
    for y in range(0, height, a):
        rgb = pix[x, y]
        new_img.putpixel((x // a, y // a), (int(rgb[0]), int(rgb[1]), int(rgb[2])))
new_img.save('new_image.png')

nDFfAt9IH7wJ5pq

对照得到字符串

TkFNRV9vMnRha3VYWH0=

得到一半flag

还有一段藏在lsb隐写给的一长段base64中

yjqiaQmLWRSrAfb

DEATH_N1TE

考点:gaps拼图,sstv音频隐写

将图片分帧,gaps拼图,得到一半flag

ZehOUiNatAV1oM4

使用rx-sstv播放mp3文件获取第一部分flag

vTPGmZuJ7QMbX2q

SYC{H4xr0t0r_14_Ki114R}

DEATH_N2TE

考点:视频像素点提取

先视频分帧

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
import cv2
import os
cap = cv2.VideoCapture('kira.mp4')
output_folder = 'frames'
os.makedirs(output_folder, exist_ok=True)
frame_count = 0
while True:
    ret, frame = cap.read()
    if not ret:
        break
    frame_count += 1
    frame_filename = f"{output_folder}/frame_{frame_count:04d}.jpg"
    cv2.imwrite(frame_filename, frame)
    cv2.imshow('Processed Frame', frame)
    if cv2.waitKey(25) & 0xFF == ord('q'):
        break
cap.release()
cv2.destroyAllWindows()

提取所有白色的像素点

 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
26
import cv2
import numpy as np
import os
input_folder = './frames'
output_image = 'output_combined_image.jpg'
image_files = [f for f in os.listdir(input_folder) if f.endswith(('.jpg', '.png', '.jpeg'))]
max_x, max_y = 0, 0
for image_file in image_files:
    image_path = os.path.join(input_folder, image_file)
    image = cv2.imread(image_path)
    max_x = max(max_x, image.shape[0])
    max_y = max(max_y, image.shape[1])
combined_image = np.zeros((max_x, max_y, 3), dtype=np.uint8)
for image_file in image_files:
    image_path = os.path.join(input_folder, image_file)
    image = cv2.imread(image_path)
    gray_image = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
    _, binary_image = cv2.threshold(gray_image, 200, 255, cv2.THRESH_BINARY)
    white_pixel_coordinates = np.column_stack(np.where(binary_image == 255))
    for coordinate in white_pixel_coordinates:
        x, y = coordinate
        combined_image[x, y, :] = [255, 255, 255]  # 设置为白色
cv2.imwrite(output_image, combined_image)
cv2.imshow('Combined Image', combined_image)
cv2.waitKey(0)
cv2.destroyAllWindows()

得到flag:SYC{we1c0m4_T0_De@tH_W0r1d}

最后压缩一下像素点,是图片更清楚

KzQufGPXsp7LZWx

窃听风云

考点:NTLM协议破解

就是对捕捉的Ntlm协议进行解析

详细解析如下

渗透技巧——利用netsh抓取连接文件服务器的NTLMv2 Hash (3gstudent.github.io)

基本格式

NTLMv2的格式为:

1
username::domain:challenge:HMAC-MD5:blob

然后使用john和rockyou.txt破解

1
NETNTLMv2: jack::WIDGETLLC:2af71b5ca7246268:2d1d24572b15fe544043431c59965d30:0101000000000000040d962b02edd901e6994147d6a34af200000000020012005700490044004700450054004c004c004300010008004400430030003100040024005700690064006700650074004c004c0043002e0049006e007400650072006e0061006c0003002e0044004300300031002e005700690064006700650074004c004c0043002e0049006e007400650072006e0061006c00050024005700690064006700650074004c004c0043002e0049006e007400650072006e0061006c0007000800040d962b02edd90106000400020000000800300030000000000000000000000000300000078cdc520910762267e40488b60032835c6a37604d1e9be3ecee58802fb5f9150a001000000000000000000000000000000000000900200048005400540050002f003100390032002e003100360038002e0030002e0031000000000000000000

yKxAprDETQG3HiV

HM8U4bSsF6fjE1k

窃听风云-v2

考点:NTLM协议破解

这是仅有的没有做出来的一道题,qwq,其实不难的

基本原理同上,但是由于是使用的smtp协议,所以不能自动解析

1
jack::WidgetLLC.Internal:3e3966c8cacd29f7:ddd46fd8f78c262eae16918f66185497:010100000000000050fd26d235edd9011219408ccb8a364800000000020012005700490044004700450054004c004c0043000100100043004c00490045004e00540030003300040024005700690064006700650074004c004c0043002e0049006e007400650072006e0061006c000300360043004c00490045004e005400300033002e005700690064006700650074004c004c0043002e0049006e007400650072006e0061006c00050024005700690064006700650074004c004c0043002e0049006e007400650072006e0061006c000700080050fd26d235edd90106000400020000000800300030000000000000000000000000300000c78e803920758ec5672c36696ee163f6a4e61c8b5463c247daef8571677995a40a001000000000000000000000000000000000000900200053004d00540050002f0075006e007300700065006300690066006900650064000000000000000000

1sX2j3rEeZNofSw