Try   HackMD

本篇教學示範的只是簡單的說明而已,可以自己更改或延伸,不用完全一模一樣照抄
本次以 lab-basic 和 lab-grep 來示範

Writeup 撰寫示範 - SCIST Linux CTF

標題通常會使用該 CTF 名稱 + Writeup

Linux

通常會用類別分類 因為這個作業只有 Linux 類別 所以這裡的類別是 Linux
常見的類別有:Misc, Pwn, Reverse, Web, Crypto

lab-basic

這裡一般會是題目的名稱
接下來就是把你的解題過程記錄下來

首先按照題目指示把題目下載下來,進入 lab-basic 資料夾
發現當前目錄有一個 flag_part1cat 打開後得到第一段 flag

cat flag_part1

旁邊有個 wtf.sh 打開後發現這是一個自動建立一堆資料夾的 script

wtf.sh
#!/bin/bash base_dir="find_here" mkdir -p "$base_dir" current_dir="$base_dir" for i in $(seq 1 100); do current_dir="$current_dir/$i" mkdir -p "$current_dir" done echo "Done!"

使用 find 指令從那一堆資料夾中找出所有「檔案」

find find_here -type f

找到了 flag_part2flag_part3cat 打開就能得到完整的 flag 了

cat find_here/1/2/3/4/5/.,/flag_part3 cat find_here/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/34/35/36/37/38/39/40/41/42/43/44/45/46/47/48/49/50/51/52/53/54/55/56/57/58/59/60/61/62/63/64/65/66/67/68/69/70/71/72/73/74/75/76/77/78/79/80/81/82/83/84/85/86/87/88/89/90/91/92/93/94/95/96/97/98/99/100/.flag_part2

可以使用 --- 加上分隔線


lab-grep

進入 lab-grep 這個資料夾 一樣發現了一個 wtf.sh

wtf.sh
#!/bin/bash for i in $(seq 1 50); do mkdir "maybe_here" cd "maybe_here" echo '成大資安社是由社長葉東逸和其他五位夥伴——楊竣鴻、邱昱翔、蔡聿善、佘俊霖、文仁謙於 2023 年 9 月創立的「開源社團」。短短時間內,除了每週線下都有社課和活動外,線上也有直播和完整的課程資源供所有人免費觀看,社團 Discord 也已超過 900 人。' > maybe_here.txt echo '旗下的戰隊「B33F 50UP」更是活躍於各式各樣的資安競賽,並歡迎全臺灣不限年齡的駭客們加入一起學習,每個月也會定期舉辦讀書會分享彼此的研究成果和訓練表達能力。' >> maybe_here.txt echo '同時成大資安社也聯合臺灣各地大專院校資安社團創立了「臺灣資安社群聯盟」,影響力也從原本成大校內逐漸擴大到了全臺灣,而目前成員數來到了 18 所學校,並固定在每年的寒假期間舉辦全國性的 CTF 賽事 TSCCTF。' >> maybe_here.txt done echo "Done!"

分析後知道了這個 script 會重複建立很多個 maybe_here 資料夾和 maybe_here.txt 檔案
grep 指令搭配選項 -r 來搜尋資料夾內含有 flag 文字的檔案

grep -r 'flag' maybe_here

得到一半的 flag
因為 flag 的格式會是 flag{.*} 所以我們改爲搜尋含有 } 文字的檔案

grep -r '}' maybe_here

這樣就能得到另一半的 flag 了