Forensic

1
2
Viblo - Forensic challenge
Tiến độ: 9/22

NetLab Warmup

:::success Start with a warmup to help you get acquainted with NetLab

netlab0.zip :::

Mở file pcap và lọc data thì mình thấy có chuỗi fomat khá giống flag

Decode theo ROT13

Flag: Flag{NetLab0_FTP_1s_n0t_s3cUr3333}


MS Word virus

:::success Be careful with the virus, always think wisely before open files.

MS Word virus.zip :::

Đầu tiên mình trích xuất file ẩn

Vào thư mục word và tìm file vbaProject.bin đọc ký tự đọc được trong file

Flag: Flag{b3_c4r3ful_w1th_m4cr0_d0cum3nt}


Stager

:::success Tuấn vừa mới khám phá ra được một kiểu nhắn tin khá độc đáo mà không ai biết, bạn có thể tìm được tin nhắn của Tuấn không. Thật tình cờ tất cả lưu lượng mạng đã được lưu lại.

capture.zip :::

Mở file pcap và lọc theo DNS

Ghép lại mình được flag image|60

Flag: Flag{ae6032eeeb5cedc1555940983435335b}


MS Word

:::success Find the secret message. Flag form: Flag{}

EAP.zip :::

Trích xuất file ẩn và mở file document.xml

Tới đây mình tưởng là có flag rồi nhưng không phải đây chỉ là 1 nữa của flag thôi kéo xuống để tìm phần còn lại

Vậy là mình có toàn bộ flag

Flag: Flag{h1dd3n_m3ss4g3_c4n_b3_4nywh3r3}


Stack image

:::success The somethings.png image has been encrypted by key.png. Can you get the flag?

image.zip :::

Bài này thì khá dễ cho 2 ảnh trong đó ảnh chứa flag bị chồng lên bởi 1 ảnh khác

Mình ghép 2 ảnh lại bằng stegsolve

Flag: Flag{x0r_w1th_1m4g3_1s_4m4z1ng_fun}


Wdiguess

:::success Attacker considers this file as treasure, why and what does it contain?

Related Resource: https://www.ired.team/offensive-security/credential-access-and-credential-dumping/dump-credentials-from-lsass-process-without-mimikatz

Wdiguess.zip :::

Mình dùng vol thì được thông báo là không có symbol table và kernel

Dùng lệnh thay thế pypykatz lsa minidump lsass.DMP

Flag: Flag{Ls4s5_duMp3r_M4st3R}


RegLab1: Suspected USB

:::success Chúng tôi đang điều tra một vụ vi phạm dữ liệu. Trong thời gian sự cố xảy ra, có một USB lạ đã được cắm vào máy chủ của chúng tôi. Hãy giúp chúng tôi tìm tên phân vùng của USB đó.

Related Resource: Wrap flag in format Flag{…}/Bọc tên USB bạn tìm thấy trong định dạng Flag{…}

RegLab1.zip

:::

Tìm theo đường dẫn

1
SOFTWARE\Microsoft\Windows Portable Devices\Devices\WPDBUSENUMROOT#UMB#2&37C186B&0&STORAGE#VOLUME#_??_USBSTOR#DISK&VEN_SANDISK&PROD_CRUZER&REV_1.20#20052243711926307992&0#

Flag: Flag{5usP3cted_USB_d3T3c73d}


NetLab1: Sharing

:::success A protocol that looks a bit strange. Do you know how to deal with it?

netlab1.zip :::

Lọc theo data thì mình thấy có đề cập đến giao thức SMB

Lọc theo smb thì mình tìm được 2 gói tin khả nghi smb2.cmd == 5 || smb2.cmd == 8 || smb2.cmd == 9 || smb2.cmd == 6

Sau đó mình xuất 2 file ra

Mở file password thì phát hiện trùng với gói data mình đã tìm thấy lúc nãy

Dùng password để mở file còn lại thì mình được file netlab1.db Sau đó mình mở file .db Mở bảng table và chọn flag Ghép lại mình có được flag

Flag: Flag{NetLab1_N0w_y0u_kn0w_SMB??}


SQL Time

:::success Let’s be a detective and uncover the secret lied in this pile of log, Gogogo!

sun.log.zip

:::

Mở file thì mình thấy đây là payload SQl để lấy mật khẩu

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
27
28
29
30
31
32
33
import re, datetime as dt
from urllib.parse import unquote

time_re = re.compile(r"\[(\d{2})/(\w{3})/(\d{4}):(\d{2}):(\d{2}):(\d{2}) \+0000\]")
mon = {'Jan':1,'Feb':2,'Mar':3,'Apr':4,'May':5,'Jun':6,'Jul':7,'Aug':8,'Sep':9,'Oct':10,'Nov':11,'Dec':12}
pat = re.compile(r"\),(\d+),1\)\)=([0-9]+),0,3")

def parse_time(line):
d, m, y, hh, mm, ss = time_re.search(line).groups()
return dt.datetime(int(y), mon[m], int(d), int(hh), int(mm), int(ss))

entries = []
with open("sun.log", "r", encoding="utf-8", errors="ignore") as f:
for line in f:
t = parse_time(line)
req = line.split('"')[1] # "GET ... HTTP/1.1"
_, path, _ = req.split()
dec = unquote(path)
m = pat.search(dec)
if m:
pos, val = map(int, m.groups())
entries.append((t, pos, val))

entries.sort(key=lambda x: x[0])
right = {} # pos -> val
for i in range(len(entries)-1):
t, pos, val = entries[i]
t_next = entries[i+1][0]
if (t_next - t).total_seconds() >= 3:
right[pos] = val

flag = "".join(chr(right[p]) for p in sorted(right))
print(flag)

Và mình có flag

Flag: flag{t1m3_b4s3d_sql_1nj3cti0n_l0g}


Stego

1
2
Viblo - Stego challenge
Tiến độ: 10/27

One True Pairing

:::info OTP is a couple that other people think matches the best!! :::


Author: @Nam Phạm

Có 2 ảnh là first và second nên mình nghĩ đễn việc ghép 2 thằng lại với XOR Mở ảnh xor

Flag: Flag{Dont_Reuse_Pad_in_OTP}


Đen - Lối Nhỏ ft. Phương Anh Đào

:::info Các bạn đã cùng chill cùng Đen trong MV mới chưa https://youtu.be/KKc_RMln5UY :::


Author: @Viblo CTF

Kiểm tra file thì thấy flag

Flag: Flag{D3nVau_Sh3rl0ck_H0lm3s}


FM Audio

:::info Tuan has just found a strange sounding file, can you listen to help Tuan? :::


Author: @Viblo CTF

Thêm layer spectogram

Flag: Flag{Hidd3n_t3xt_1n_aud1o}


MasterYi

:::info Master Yi’s Alpha Strike is very powerful. Do you believe it? :::


Author: @Bquanman

Dùng stegsolve thì ra luôn flag

Flag: Flag{I_h4t3_Tuy3t_k1_Alph4_VIBLO


Spongebob Spongebob

:::info Spongebob is hiding something. Can you find it for me? :::


Author: @Viblo CTF

Kiểm tra thì đây là file png chuẩn nên mình dùng zsteg để kiểm tra thì thấy có chuỗi base64

Decode chuỗi

Flag: flag{hidden_text_image_lsb}


PDF

:::info This seems to be a regular pdf file. But behind it it doesn’t seem that way. :::


Author: @Viblo CTF

Mở file với LibreOffice

Flag: flag{easy_show_flag_pdf_to_word}


Man On The Moon

:::info I just received this transmission, but I don’t have the necessary tools. Help! :::


Author: @Viblo CTF

Nhìn vào miêu tả và tên bài thì mình nghĩ bài này liên quan tới mặt trăng mà nói tới mặt trăng và file wav thì có vẻ liên qua tới việc truyền thông tin từ mặt trăng về trái đất. Mình tìm kiếm từ tài liệu của Nasa về việc truyền thông tìn từ mặt trăng về trái đất thì biết được đó là sóng vô tuyến RF (Radio Frequency)

Mình dùng website SSTV Decoder để chuyển đổi từ sóng vô tuyến về hình ảnh thì có được flag

Flag: Flag{M4k3_50m3_N01S3e3e3}


PDF File

:::info My PDF file is corrupt, can you fix it for me? :::


Author: @Viblo CTF

Check file thì thấy đây chỉ là data chưa nhận diện được là file pdf cộng với miêu tả thì có vẻ file này bị hỏng rồi

Kiểm tra dạng hex thì rõ luôn file này bị hỏng header rồi cụ thể là mất header

Vậy thì dùng HxD để thêm vào thôi

Lưu file và mở lên

Flag: Flag{ed1t_h3x_h3ad3r_pdf}


Eat “cơm”

:::info Do you like to eat “cơm”? :::


Author: @Viblo CTF

Kiểm tra ảnh có dữ liệu giấu không thì phát hiện có file nhúng trong steghide nhưng mình chưa biết pass

Mà không có pass thì mình crack thôi pass là ==superman==

Dùng pass tìm được để lấy file nhúng ra thì được secret.zip tưởng tới đây là ra rồi nhưng không

Cần pass cho file zip này nữa

Dùng john the ripper để crack mật khẩu thì tìm được là ==pictures==

Mở file txt

Flag: Flag{H1d3_t3xt_1n_p1ctur3}