# UOFTCTF - Forensic Write Up ## No Grep ![image](https://hackmd.io/_uploads/S1giCH6F6.png) Theo đề bài thì mình sẽ dùng máy ảo từ bài ```Hourglass```để giải bài này, sau khi unzip thì mình có file .ova, không hiểu sao mình bị lỗi khi import nên mình quyết định extract file .vmdk ra và dùng autopsy để view nó. Vì đề bài không có description nên mình làm theo cách thông thường là lướt xem một vòng các extension file thì thấy cái này :)) ![image](https://hackmd.io/_uploads/HypofUTKa.png) Lúc đầu mình có xem qua các file .cmd và .bat nhưng không thấy gì bất thường nên mình chuyển qua kiểm tra file ```ConsoleHost_history.txt``` được đặt ở đường dẫn mặc định là : ```%userprofile%\AppData\Roaming\Microsoft\Windows\PowerShell\PSReadline\ConsoleHost_history.txt``` ![image](https://hackmd.io/_uploads/rkUl4Iptp.png) Chưa update nên hơi cùi một xíu, sau khi export ra thì mình thấy : ![image](https://hackmd.io/_uploads/B1U5LIptT.png) Điều kì lạ ở đây là ```C:\Windows\Web\Wallpaper\Theme2\``` thường chứa các file ảnh như PNG, JPEG mà giờ lại chứa file ps1 và set alias là UpdateSystem :>. Với các thông tin này thì file này rất đáng nghi nên mình xem thử coi nó có gì : ![image](https://hackmd.io/_uploads/SyDyO8ptT.png) Như đoạn script trên thì nó đang thực hiện phép toán XOR bit-wise giữa mảng $chars và mảng $keyAscii tạo ra resultArray, bên cạnh đó có biến NewValue và đoạn scripts này cũng tải tệp chrom.exe, nhưng giờ tập trung vào cái resultArray thôi để xem nó là cái gì: ```p= $String_Key = 'W0wMadeitthisfar' $chars = 34, 95, 17, 57, 2, 16, 3, 18, 68, 16, 12, 54, 4, 82, 24, 45, 35, 0, 40, 63, 20, 10, 58, 25, 3, 65, 0, 20 $flag = '' for ($i = 0; $i -lt $chars.Length; $i++) { $flag += [char]($chars[$i] -bxor [int][char]$String_Key[$i % $String_Key.Length]) } Write-Host $flag ``` ![image](https://hackmd.io/_uploads/BJKWAL6FT.png) ## Hourglass ![image](https://hackmd.io/_uploads/Hkfh8tCt6.png) Hai bài này có chung một cái source nên flag của bài trước mình cũng không chắc là của bài đó, do giải end nên không check được nhưng với cái format như vậy thì nó chắc chắn là flag. Ở bài trước mình đã check history powershell rồi nên giờ mình sẽ chuyển sang hướng khác. Nếu mà import được máy ảo thì làm bài này sẽ dễ dàng hơn xíu vì có mấy cái tool để check như ```autoruns```, giờ không import được thì check bằng cơm. Vì đây chỉ là challenge CTF nên thường mình sẽ kiểm tra mấy cái persistence ở ```Autostart Registry Key, Windows Services, Scheduled Tasks, WMI Event Consumers``` chứ trong thực tế thì hiếm khi dùng mấy cái này. Sau khi kiểm tra thì mình thấy có một cái task scheduled lạ lạ : ![image](https://hackmd.io/_uploads/rJYTZq0ta.png) Lạ ở chỗ là thường ```/C:/Windows/Containers/serviced/``` sẽ chứa ```WindowsDefenderApplicationGuard.wim``` chứ không phải stomp.exe. Để có cái nhìn rõ ràng hơn thì mình check cái file ```setting.txt``` thử thì thấy : ![image](https://hackmd.io/_uploads/SJPZBcRY6.png) Có một chuỗi base64 ở đây, mình decode thử thì ra luôn cái này : ![image](https://hackmd.io/_uploads/SkerB90Kp.png)