# BTLO - Piggy
簡單的WireShark題目

點Start開始調查

真的很貼心 還有網頁跳板給你用Linux(比HTB強多了 起碼不用自己連VPN(X)

上面有4個pcap,分別有對應的題目,點開pcap檔他就會自己打開wireshark了(但就是跑有點久就是了)
## PCAP One
PCAP One 有兩題
### 1. PCAP One) What remote IP address was used to transfer data over SSH? (Format: X.X.X.X)
:::info
透過 SSH 傳輸資料時使用什麼遠端 IP 位址? (格式:X.X.X.X)
:::
>好想載下來 真的卡的要死(X
>[name=羽澤]
因為題目提示是SSH,所以我直接按protoco過濾相似的排在一起,好孩子別學(X

>正常來說要這樣搜尋啦,哈哈啊哈
>
其實看就很明顯了啦,他對35.211.33.16進行雙向傳輸

這邊涉及到一個知識點,為什麼我會知道是35.211.33.16?
因為10.x.x.x是私有IP,是內網才會使用
:::warning
私有IP主要分三大類
Class A 10.0.0.0 - 10.255.255.255
Class B 172.16.0.0 - 172.31.255.255
Class C 192.168.0.0 - 192.168.255.255
還有不提供使用的IP位置
Class D 224.0.0.0 - 239.255.255.255 (用於多播及串流服務,Ex.Zoom)
Class E 240.0.0.0 - 255.255.255.255 (用於研究/保留/實驗,不公開提供使用)
特殊IP分類
169.254.0.0 - 169.254.255.255 (自動專用 IP 位址(APIPA),如果抓不到DHCP會顯示)
127.0.0.1 - 127.255.255.255 (網路測試位址(也稱為環回位址)。這些是虛擬 IP 位址,它們不能指派給裝置。)
:::
35.211.33.16不屬於他們之中的任意一項,所以算是公共IP,所以可以得知這是內跟外部傳輸資料的SSH
:::success
Ans: 35.211.33.16
:::
### 2. PCAP One) How much data was transferred in total? (Format: XXXX M)
:::info
總共傳輸了多少資料? (格式:XXXX M)
:::
前面這些地方其實都不是重點,這邊只是SSH建立連線,然後再進行金鑰認證的部分

主要注意的是這些地方

>其實通常是會這樣追資料流啦,但這題藏了多筆SSH傳輸,這樣追反而會比較麻煩
可以直接從統計報表來觀察傳輸量

點TCP的位置,有兩筆跟35.211.33.16連線的紀錄,把Byte欄位加起來就是了

:::success
Ans: 1131
:::
## PCAP Two
PCAP Two 只有一題
### 1. PCAP Two) Review the IPs the infected system has communicated with. Perform OSINT searches to identify the malware family tied to this infrastructure (Format: MalwareName)
:::info
檢查受感染系統通訊過的 IP。執行 OSINT 搜尋以識別與該基礎設施相關的惡意軟體家族(格式:MalwareName)
:::
一樣透過統計去抓出這一封包內的所有IP之後,一個一個去公開的情資網站搜尋

188.120.241.27 有偵測到惡意利用,曾被用於Trickbot

>但其實我覺得這題出的不好,資訊太少,而且我們鑑識人員不會有這種美國時間一個一個去找,如果這裡有100個以上的IP怎麼辦? 而且大多IP因為是動態所以會誤報
>(畢竟除了固定IP以外,有些區段的IP會被ISP業者透過NAT派發給某區域的使用者使用,所以在這之中有特定的人執行惡意行為,被回報上去之後這IP就會有惡意紀錄了)
>
>算了 只是學習用的CTF就別太認真了,畢竟只是給人學習的
>[name=羽澤]
:::success
Ans:Trickbot
:::
## PCAP Three
PCAP Three 有三題
### 1. PCAP Three) Review the two IPs that are communicating on an unusual port. What are the two ASN numbers these IPs belong to? (Format: ASN, ASN)
:::info
檢查在異常連接埠上進行通訊的兩個 IP。這兩個 IP 屬於哪兩個 ASN 編號? (格式:ASN,ASN)
:::
一樣從統計資訊中尋找,可以看到194.233.171.171:8080跟104.236.57.24:8000非常特殊

:::warning
8000跟8080雖然也是HTTP的服務,但平常根本不會有人去用
8000常見於python的http.server套件使用
8080則是Apache/Nginx作為代理使用
:::
>這就是為什麼很多攻擊者都會把流量隱藏,走443或是53的原因了
>[name=羽澤]
把兩個IP丟到VT上,AS那一欄就是他的ASN了


:::warning
ASN(Autonomous System Number)用於標識「自治系統(Autonomous System, AS)」的編號,自治系統是一個由單一管理者控制的一群 IP 網路(就是哪一個ISP業者管理)
Ex:中華電信是一個AS,Google是一個AS
:::
:::success
Ans:63949,14061
:::
### 2. PCAP Three) Perform OSINT checks. What malware category have these IPs been attributed to historically? (Format: MalwareType)
:::info
執行 OSINT 檢查。從歷史上看,這些 IP 屬於哪種惡意軟體類別? (格式:MalwareType)
:::
這題是要找出這兩個IP的MalwareType
有點尷尬的是上面一堆別人的WriteUp,不能看,母湯阿

從這邊找吧

搜尋 litesolo.org可以得知這是一個挖礦服務的IP位置

然後另一個就直接跟你說他是Miner了

:::success
Ans:Miner
:::
### 3. PCAP Three) What ATT&CK technique is most closely related to this activity? (Format: TXXXX)
:::info
哪種 ATT&CK 技術與此活動最密切相關? (格式:TXXXX)
:::
其實這題有點尷尬,因為你要先知道Miner這個惡意類型的全名是啥
如果直接搜尋會變這樣(X

這不是我們要的,所以你還要先去搜尋Miner的全名

這邊使用 Cryptocurrency miner、Cryptomining Malware 兩個都搜尋的到,但Cryptocurrency miner會比較正確
然後再去搜尋就有答案了

:::warning
T1496可以自己參考 [Resource Hijacking](https://attack.mitre.org/techniques/T1496/)
簡單來說就是資源劫持,因為挖礦會占用系統資源
:::
>用Cryptomining Malware的搜尋結果會是這個
>
>
>其實也不是不行,因為都是T1496下面的分類,只是對ATT&CK不熟的話,可能會被後面的子技術編號搞混
::: success
Ans:T1496
:::
## PCAP Four
PCAP Four 有三題
### 1. PCAP Four) Go to View > Time Display Format > Seconds Since Beginning of Capture. How long into the capture was the first TXT record query made? (Use the default time, which is seconds since the packet capture started) (Format: X.xxxxxx)
:::info
選擇 View > Time Display Format > Seconds Since Beginning of Capture. 捕獲後多久進行了第一次 TXT 記錄查詢? (使用預設時間,即封包擷取開始後的秒數)(格式:X.xxxxxx)
:::
跟著題目點應該不難(?

這邊是老手的第一印象,TXT查詢通常包含在DNS Query中,所以這邊直接下`udp.port == 53` 來結束這回合,答案是Time欄位的8.527712

:::warning
DNS Query 的型別很多種,以下只整理一些常用的型別,其他的可以自己去翻WIKI
* A record:查詢一個網域的 IPv4 位址。例如查詢 example.com,回傳 93.184.216.34。只會提供 IPv4(格式如 123.45.67.89)
* AAAA record:和 A record 類似,但查的是 IPv6。回傳像是:3001:0db7:3c5d:0024:0000:0000:1a2f:3c1b
* CNAME record: 將一個網域名稱 轉向另一個網域名稱。例如:shop.example.com 是 example.com 的別名,不會直接指向 IP 位址,而是轉交給另一個網域去解析
* NS record:指定一個網域要由哪幾台 DNS 伺服器 來管理。NS記錄會告訴大家:「我這個網域的 DNS 是哪一台伺服器負責處理的?」,大部分人不會自己架 DNS,而是交給專門的 DNS 提供商(像 Cloudflare、Google、GoDaddy 等)代管,所以會看到:
```
example.com → ns1.provider.com、ns2.provider.com
```
也就是說:「請去 provider.com 那邊的伺服器查我的 DNS 資訊。」,一個網域通常會有兩台以上的 NS,避免單點故障。
* MX record:定義該網域的 郵件伺服器位置。比如寄信到 someone@example.com,就會根據 MX 記錄找到正確的 Mail server,紀錄會長這樣
```
10 mail1.example.com
20 mail2.example.com
```
* SOA record:每個網域的「DNS 區域」都會有一筆 SOA 記錄,裡面包含:負責管理的主 DNS 伺服器、網域的建立時間、更新頻率、過期時間等技術資訊,一般用來管理 DNS 資料的版本與同步資訊,不太會在正常查詢中出現。
* TXT record:儲存一些 純文字資料,常用於:驗證網域擁有權(如 Google、Microsoft 驗證)、設定郵件安全政策(如 SPF、DKIM、DMARC),但因為強大的拓展性及可以塞任何東西讓DNS讀取,所以攻擊者也特別喜歡把C2的控制語法或是一些資料塞在這裡面偷渡
* PTR record:根據 IP 查回對應的網域名稱(反向查詢)。例如:查詢 8.8.8.8 → 得到 dns.google。常用於:郵件伺服器驗證、反向 DNS 記錄查詢(如 log 中看來源 IP)
:::
:::success
Ans:8.527712
:::
### 2. PCAP Four) Go to View > Time Display Format > UTC Date and Time of Day. What is the date and timestamp? (Format: YYYY-MM-DD HH:MM:SS)
:::info
選擇 View > Time Display Format > UTC Date and Time of Day. 日期和時間戳是什麼? (格式:YYYY-MM-DD HH:MM:SS)
:::
一樣照著點應該不難

一樣是剛剛那筆TXT資訊,Time的部分

:::success
Ans:2024-05-24 10:08:50
:::
### 3. PCAP Four) What is the ATT&CK subtechnique relating to this activity? (Format:TXXXX.xxx)
:::info
與此活動相關的 ATT&CK 子技術是什麼? (格式:TXXXX.xxx)
:::
我是下這個做搜尋

他是DNS攻擊技術全歸類在這個子類別下面,詳情可以點進去看[Application Layer Protocol: DNS](https://attack.mitre.org/techniques/T1071/004/)
:::warning
簡單來說就是DNS攻擊的類別,屬於應用層
DNS攻擊主要用於與現有流量混合來避免偵測/網路過濾
DNS 封包包含許多可以隱藏資料的欄位和標頭(如前面提到的TXT紀錄)。通常這種攻擊方式被稱為 DNS 隧道(DNS Tunnel),攻擊者可能會濫用 DNS 與受害者網路內受其控制的系統進行通訊,同時模仿正常的流量來規避偵測。
:::
:::success
Ans:T1071.004
:::