合勤 榮耀資戰 CTF 初賽 Write-up
日誌分析
01
Log為誘捕系統連線資訊,請分析在此份log中,駭客最感興趣的前三名服務。flag為前三名服務 port 號,依序合併後的SHA1加密值(小寫)。
範例: 前三名服務 [80,5060,21] -> sha1('80506021') -> eeeb577554eeba6a9481f7e0306a514105724fca
答案格式:flag{port號合併後的SHA1加密值}
寫腳本來計算,python 腳本如下
with open('exam1.txt', 'r') as f:
line = f.readlines();
counter = [0 for i in range(65537)]
for i in range(len(line)):
port = int(line[i].split()[3].split(':')[1])
counter[port] += 1
print('{}: {}, counter[{}]: {}'.format(i, port, port, counter[port]))
biggest = [counter.index(x) for x in sorted(counter, reverse=True)[:3]]
print(biggest)
# flag{0e2c3e4dd79f9a26e591728c8af4e8347403127a}
02
Log為誘捕系統連線資訊,請分析在此份log中,攻擊次數最多的IP,flag為IP的SHA1加密值(小寫)
答案格式:flag{IP的SHA1加密值}
寫腳本來計算,python 腳本如下
with open('exam2.txt', 'r') as f:
line = f.readlines();
ips = []
for i in range(len(line)):
print(i)
ips.append(line[i].split()[1].split(':')[0])
iplist = []
aplist = []
for ip in ips:
if iplist.count(ip) != 0:
continue
print('processing...')
iplist.append(ip)
aplist.append(ips.count(ip))
print('sorted...')
biggest = [aplist.index(x) for x in sorted(aplist, reverse=True)[:3]]
for i in biggest:
print('{}: {}'.format(iplist[i], aplist[i]))
# 94.102.49.91: 26444
# 176.122.7.93: 16786
# 79.124.62.34: 11017
#
# flag{ffd04754ddf2b714d0779f4d415530550b4e4b91}
03
此份Log記錄者駭客入系統的軌跡,駭客似乎在某個公共服務中下載惡意程式,裡面藏有flag。
答案格式:flag{惡意程式裡面藏的flag}
隊友 in0de 解的
有個command 是git clone
裡面是一張照片
binwalk解開看到shell
by in0de
封包分析
01
請分析題目所給網路封包檔案,判斷攻擊者使用了什麼攻擊手法
範例:CVE-2020-0606
答案格式:flag{CVE-XXXX-XXXX}
裡面看起來比較可疑的是某幾個 DNS 封包
在回應 query zonetransfer.me 的 answer 中,有幾個可疑的項目,例如
- cmdexec.zonetransfer.me
- Type 是 TXT
- TXT 內容是
; ls
- xss.zonetransfer.me
- Type 是 TXT
- TXT 內容是
'><script>alert('Boo')</script>
感覺是類似植入惡意的 DNS 項目的攻擊
Google 搜尋的關鍵字先用 DNS Attack zonetransfer.me
試試看
就找到了 Zone Transfer CVE-1999-0532 - 古老的 DNS 資安議題
原來這個攻擊是指:如果任何人都能對 DNS Server 做 zone transfer,企業底下的所有網址就都被列出
所以剛剛的情境中,那些可疑的項目本身就像是企業底下的網址,受害者主機為 34.225.33.2,直接為不明來源 IP 做 zone transfer
flag{CVE-1999-0532}
02
某公司的資料疑似外洩,這期間剛好錄製了相關的網路行為。請嘗試著分析這中間所發生的行為,並嘗試著尋找外洩的機密檔案。
答案格式為:flag{機密檔案內容}
簡單先從各種協議下手,如 HTTP、SMB、FTP
最終在 FTP 有收穫
看看這個封包前後傳了什麼,就能找到一個 FTP-DATA 封包
flag{7a0f7e5ee037244f6dbb6caf464b56}
03
這是某公司的電腦,使用者發現電腦怪怪的,似乎被駭客入侵了。試著分析一下這台電腦發生了什麼事情,請協助找到後門使用來登入的帳號 。
答案格式為:flag{後門登入帳號}
這次連線有點多
思路是以 Statistics->Endpoints 來一一檢查每個連線的 IP
192.168.77.22 應該是主機本身,故跳過
而後面幾個 IP 中,有個 192.168.88.10,因為是 private address,所以比賽當下,當我前 2 個 IP 連線看完沒收穫後,就直接跳過來看這個 IP
開了後門,常常想下指令 whoami 確認一下權限,所以我就先嘗試搜尋 whoami
挖到寶,這個 IP 蠻確定是攻擊者了,看看他都下了什麼指令
net user he11ow0rld9487 /add
flag{he11ow0rld9487}