HITCON 2018: Why so Serials? Write-up

Why so Serials? 是由 Orange 在前陣子剛結束的 HITCON CTF 2018 出的一道 Web 題目,題目架設在 Windows/IIS,其功能只有一個頁面 Default.aspx,題目有提供原始碼,現在可以在 Orange 的 GitHub 上找到。 該頁面有提供一個上傳功能,但幾乎阻擋了所有可能直接 RCE 的副檔名。 String[] blacklists = {".aspx", ".config", ".ashx", ".asmx", ".aspq", ".axd", ".cshtm", ".cshtml", ".rem", ".soap", ".vbhtm", ".vbhtml", ".asa", ".asp", ".cer"}; if (blacklists.Any(extension.Contains)…

DefCamp CTF Qualification 2018: Vulture Write-up

Vulture 是一道出現在 DefCamp CTF Qualification 2018 屬於 Web 類型的題目。這題很有趣,雖然是黑箱但不用通靈、猜謎,整道題可以透過各種蛛絲馬跡有邏輯性地推敲並串出完整漏洞利用來解題。 題目敘述如下: We created an online service where you can upload pictures of vultures (or other birds). Each user has a feed so you can privately enjoy the photos you took of this majestic killing machines :) Target: https:…

ASP.NET 下利用 XXE 讀取 Web.config

XXE (XML External Entity Injection) 是個對 Server 端很強力的攻擊手法,可以進而實現 Server-Side Request Forgery、Arbitrary File Read 的利用。雖然可以利用 XXE 讀取一些較簡單的私密的 config、key 檔案,但若想讀取內含 XML 使用的特殊字元 (例如: >, <) 的檔案,就會產生一些問題。今天分享其中一個如何利用 XXE 讀取 Web.config 的小技巧。 在 ASP.NET 的環境下,Web.config 是用來控制針對 ASP.NET Application 設定的重要檔案,內容通常都含有極為重要的資訊,比如可能會存放對資料庫的 Connection String、傳輸時加解密所使用的…

Pwn2Win 2017 Write-up: Web - Criminals

最終解開這道題目時,發現其實並不困難,但因作者我還是個菜雞,且對這道題目的服務所使用的工具完全沒接觸過,過程中繞了許多圈子、走了許多歪路,不過也累積了不少有用的經驗,於是就來為這道題目寫篇 Write-up,同時也詳細記錄下我所走的各種歪路 (´; ω ;`) 原始的題目說明很單純: Criminals Hey, Rebellious member, let's hack this Bloodsuckers web app. I think they keep some secret. 點開網頁應用程式的連結,也是一個很單純的搜尋頁面: 簡單嘗試一下 /robots.txt、/.git/、/.svn/ 等路徑,發現都是 404 的結果,再配合題目敘述,推測可能是要打 SQL Injection。 嘗試 Fuzzing 所有的欄位,直接全部輸入一些奇怪符號「aaa'"'#,」,順利噴出一連串錯誤訊息,…

透過 LFI 引入 PHP session 檔案觸發 RCE

先前因為朋友分享而得知某個小站具有 LFI 漏洞,於是就想嘗試著觸發 RCE,但發現主機上檔案權限蠻嚴格的,幸好最終還是成功透過 session 檔案觸發,因為過程有幾個蠻有趣的小細節,就趕緊寫篇文章作個筆記。 該網站發生 LFI 的點原始路徑是長類似這個樣子 /file.php?file=index.html 透過以下幾個測試確認存在 LFI 漏洞 /file.php?file=./index.html<- 存在 /file.php?file=../index.html <- 不存在 /file.php?file=../../../../../etc/passwd <- 成功顯示 passwd 內容 但因為測試發現 include 語句前方串接了額外的資料夾路徑,無法嘗試 PHP Wrapper、RFI (Remote File Inclusion),猜測原始碼可能會類似 include(INCLUDE_DIRECTORY . $_GET['file']); 也沒發現能直接上傳檔案的入口,因此把策略轉為嘗試引入含有環境變數、Ac…

巴哈姆特電玩資訊站 Stored XSS

巴哈姆特電玩資訊站是台灣一個蠻大型的動漫、電玩相關論壇。去年年底的某天,閒來無事在巴哈姆特測試發文功能,意外發現到一個 XSS 漏洞。過了半年到最近才突然想起,這也是我第一次挖到網站漏洞,還不寫個 write-up 作紀念XD 不知道大家是否知道 BB Code?BB Code 是相對於 HTML 的一種極輕量化的標記語言,主要用途是讓網站論壇能夠發布含有圖片、超連結、表格等等的文章,雖然直接允許使用者嵌入 HTML 是最方便的作法,但危險性卻高出許多。後來發展出 BB Code,只允許簡單的語法限制使用者的輸入,再由網站後端將白名單中的 BB Code 轉換成對應的 HTML,以此確保論壇的安全性。 巴哈姆特同樣也使用自定義的 BB Code 來處理文章內容,參考下圖示範超連結與圖片的 BB Code。 其中「[img=url]」會被轉換成「」。突然天外飛來一道靈感,試著把網址改成「…

Apricity OS: 安裝中文輸入法 fcitx-chewing

Apricity OS 秉持 Simple 的原則,系統安裝完預設是不會有其他額外輸入法存在,因此必須了解如何自行安裝中文輸入法。介紹如何在 Apricity OS 中安裝 Linux 常見的 fcitx 輸入法框架、經典的新酷音注音輸入法以及可能碰上的問題。 安裝 fcitx fcitx 綽號為「小企鵝輸入法」,相較於另一款常見 Linux 下的 ibus 輸入法引擎,我個人比較習慣使用 fcitx。新酷音輸入法 (chewing) 是 Linux 下知名的中文注音輸入法,不同的是,chewing 需要仰賴 fcitx、ibus 等輸入法軟體才能使用。 需要安裝的項目有三項: 1. fcitx-im : 此為 fcitx 的本體,fcitx-im 會安裝所有需要使用到的附加套件,包含 fcitx、 fcitx-gtk2、…

Apricity OS: 什麼?你也想安裝 Apricity?

常有人看到我的筆電作業系統有點潮,就來詢問是什麼系統,因此就來寫一篇介紹 Apricity OS 的文章,這樣下次有人詢問就能直接貼文章給他XD 關於 Apricity OS Apricity OS 是一款基於 Arch Linux 的作業系統,意即 Apricity 為 Arch Linux 的衍生物,而 Arch Linux 則是常聽見的著名開源作業系統 Linux 的眾多發行版之一。 * Apricity OS 官網 * 知識補充:維基百科 - Arch Linux * 知識補充:維基百科 - Linux Apricity 在官網的標語為 Simple, Beautiful, Linux. 可以看出 Apricity 的目標是造出一款輕量、優美的 Linux…