misconfiguration
該標籤下有 10 篇文章
雲端儲存空間公開外洩:為什麼啟用了「封鎖公開存取」資料仍可能外洩
儲存貯體外洩來自設定,而不是攻擊。文件中最關鍵的一句是:封鎖公開存取的設定不會修改既有的政策或 ACL,公開設定仍留在封鎖底下,一旦解除封鎖就會恢復公開。所以目標不是「已啟用封鎖」,而是「即使關閉封鎖也沒有任何東西是公開的」。要在帳戶層級套用,因為儲存貯體政策可以讓人關閉儲存貯體層級的封鎖。而且「公開」的定義比一般人以為的更廣。
4 種常見的資安錯誤:預設設定、遺忘的服務、缺少監控、過度信任輸入驗證
事故來自少數反覆出現的模式,而這些模式依「想法」來分類,會比依技術分類更清楚。共有四種:預設值應該是安全的(什麼都沒設定)、沒在用的東西應該無害(什麼都沒關閉)、出事我們會發現(什麼都看不到)、驗證過的輸入應該安全(交給輸入決定的事太多)。這些都不需要深入的技術知識就能修正,需要的是檢查的習慣。本文說明每一種該看哪裡。
ASP.NET Core 的資安對策 — 正式環境強化實務參考
ASP.NET Core 是成熟穩定的框架,但事故來自設定。本頁是可實作的參考:(1) 依優先度排序的強化清單(P0–P2)(2) 各領域指引——正式環境不外露詳細錯誤/開發者例外頁面、把秘密外部化(User Secrets/環境/Key Vault)、NuGet 相依套件 CVE、授權([Authorize]、fallback 預設拒絕、資源型/擁有者)、過度接收(DTO/[Bind])、不安全的還原序列化(避免 BinaryFormatter)、HTTPS/標頭/antiforgery、SSRF,以及 (3) 自我檢查清單。純防禦——不含攻擊步驟。
Django 的資安對策 — 正式環境強化實務參考
Django 內建許多安全的預設(ORM、CSRF、自動轉義、認證),但事故來自設定。本頁是可實作的參考:(1) 依優先度排序的強化清單(P0–P2)(2) 各領域指引——DEBUG=False+ALLOWED_HOSTS、把 SECRET_KEY 外部化、pip 相依套件 CVE、正式環境安全設定(SECURE_SSL_REDIRECT/HSTS/SESSION_COOKIE_SECURE 等)、授權(擁有者範圍)、注入與輸出(raw/extra、mark_safe/|safe)、CSRF/工作階段/admin、SSRF/上傳,以及 (3) 自我檢查清單。純防禦——不含攻擊步驟。
各框架的資安對策 — 依你所用技術量身打造的防禦方式
無論你用哪個框架,攻擊者鎖定的弱點『類型』大致相同(存取控制、機密資訊、注入、相依套件 CVE、設定錯誤)。不同的是各框架的『危險預設值』與『最常被鎖定的位置』。本站為每個框架備妥『預設陷阱』與『加固步驟』。先從你實際使用的框架章節讀起。
Laravel 資安對策 — 正式環境的加固參考
Laravel 的預設值很強;正式環境的事故來自設定與維運。這是一份可實作的參考:(1) 依優先度排序的加固檢查清單(P0–P2)、(2) 一張危險預設值的表格、(3) 各領域指引——機密/APP_KEY、正式環境設定(APP_DEBUG/快取)、授權(Policy/Gate、Mass Assignment)、注入/輸出(Eloquent 綁定、Blade)、工作階段/CSRF/cookie、上傳、HTTPS/標頭/限流、Composer 相依套件 CVE,以及 (4) 自我驗證檢查清單。純防禦——不含攻擊步驟。
Spring Boot 的資安對策 — 正式環境強化實務參考
Spring Boot 是穩定的框架,但事故來自相依套件、設定與授權。本頁是實務參考:(1)附優先度的強化檢查表(P0〜P2) (2)分領域的具體對策=相依套件 CVE(Log4Shell 系、以實際執行版本判定)、正式環境設定與機密的外部化、Spring Security 的授權(預設拒絕/方法授權/擁有者檢查)、Actuator/管理面的暴露削減、不安全的還原序列化、注入、標頭/CSRF/工作階段、SSRF (3)自我檢驗檢查。只談防禦與點檢,不含攻擊步驟。
是否把機密檔案遺忘在公開目錄裡:webroot 盤點
放在 webroot 裡的東西,任何人都能透過 URL 取走。遺留的權杖/憑證 JSON、.env 或備份就等於立即外洩;如果它來自共用範本,每個站點都有同一個檔案。對策:公開目錄只放可以公開的東西,機密放在 webroot 之外並設權限 600,一旦發現一個,就盤點所有站點與主機。
X-Forwarded-For(XFF)偽造是什麼:信任代理的設定錯誤與防禦
XFF 是用戶端可以偽造的標頭。無差別的掃描器會在偽造的 XFF 裡放入注入探測,而『信任全部代理(萬用字元)』的設定會讓它通過。短期修正=在邊界對 IP 標頭做淨化;根本修正=只信任合適的代理(或什麼都不信任)。即便沒有實際損害,也有該修復的設定。
Laravel 的 .env 被公開讀取的案例:共享虛擬主機上的部署位置錯誤與修復方法
根本原因是『把應用程式本體放到了 public_html 目錄正下方』。本該只暴露 public/。按暫時用 .htaccess 封鎖→金鑰輪換→結構改造三個階段修復,並用機制防止再次發生。