Ice Year

Ice Year

blog
codeberg
github
matrix
email

對某協會臨時做題平台的分析嘗試記錄

写在前面#

 僅供學習與研究,切莫違反社區共識進行攻擊行為。

分析#

前端#

 通過控制台,可以獲取到網站採用的是 GZTimeWalker 的 GZCCTF 項目的 v0.15.4 版本。雖然網站未更新至最新發布的該項目在近日發布 v0.15.5,但是新發布的版本僅修復了一些小 Bug ,且目前並未有大型安全修復,故前端方面尚屬安全。

後端#

 在閱讀完 GZCCTF 部署文檔後,得知該項目部署方式為 k8s 與 Docker 的混合方式,通過對 docker-compose.yml 的分析,可以得出該項目部署所拉取的 Docker 鏡像為 gztime/gzctf,選取 latest tag 進行分析,發現該鏡像基於 Debian 系進行打包,採用 ASPNET 與 .NET 7.0.9 作為反向代理,該版本 .NET 為近期發布,且 Docker 逃逸難度極高,故後端防禦尚屬安全。

端口與系統#

 測試後可知,伺服器僅開放 80 與 22 端口,其中 22 端口用於 SSH 服務,採用的是 OpenSSH 8.2p1 服務端,而 80 端口的反向代理使用的是 Microsoft Kestrel 與 ASPNET。通過 TTL 等數據包收發細節分析猜測伺服器系統為 Ubuntu 20.04。

 對影響到 OpenSSH 8.2p1 的 CVE 進行分析,兩枚集中於擁有 SSH 訪問或文件寫入權限後提權或進行代碼注入(CVE-2020-12062,CVE-2020-15778),四枚集中於服務端開啟 SSH 代理隧道或不常用配置(CVE-2021-28041,CVE-2021-36368,CVE-2021-41617,CVE-2023-28531),均無法在未取得 SSH 普通用戶訪問權限的前提下進行,但仍推薦儘快將 SSH 進行更新。

IP 部分#

 經查詢可知,ip 歸屬地為 HK,風險等級較低,預計可能是機房托管或較原生的 ISP 提供商,但也不排除內網映射的可能性。由於未綁定域名,採取公開 IP 與 HTTP 1.1 明文。由於某些地區存在的特殊情況,存在通過大量敏感詞組來觸發關鍵封鎖機制的可能性,這將導致伺服器在某些地區無法通過 ip 直接訪問。

結論與建議#

  1. 目前安全狀況尚屬良好,但仍有隱患。

  2. 建議升級 OpenSSH 以防範舊版本未來可能被挖掘的漏洞,並可採取措施限制 SSH 的訪問,例如限制指定 IP ,或採用虛擬局域網方案。

  3. 及時保持與上游存儲庫同步,定期檢查防止逃逸。

  4. 建議綁定域名,並採用 Nginx 等進行反向代理 Docker 或 K8S 端口,並套用 CDN 隱藏伺服器真實 IP,亦可儘量緩解 DDos。採取 HTTPS 加密以防中間人攻擊與數據監聽。

載入中......
此文章數據所有權由區塊鏈加密技術和智能合約保障僅歸創作者所有。