不安全的 DNS 設定

OWASP 類別: MASVS-NETWORK:網路通訊

總覽

開發人員自訂應用程式的 DNS 傳輸行為、略過裝置預設值,或使用者在 Android 9 以上版本中指定私人 DNS 伺服器時,都可能發生不安全的 DNS 設定。如果 DNS 設定與已知良好設定有所出入,使用者就可能遭受 DNS 假冒或 DNS 快取中毒等攻擊,導致攻擊者將使用者流量重新導向至惡意網站。

影響

如果惡意網路攻擊者能夠偽造 DNS,就能在不引起使用者疑心的情況下,暗中將使用者重新導向至他們控制的網站。舉例來說,這個惡意網站可能會網路釣魚,誘騙使用者提供個人識別資訊、導致使用者無法存取服務,或在未通知使用者的情況下,將使用者重新導向至其他網站。

風險:DNS 傳輸安全漏洞

自訂 DNS 設定可能會允許應用程式略過 Android 9 以上版本內建的 DNS 傳輸安全機制。

因應措施

使用 Android OS 處理 DNS 流量

允許 Android 作業系統處理 DNS。自 SDK 級別 28 起,Android 已透過「透過 TLS 執行 DNS」為 DNS 傳輸新增安全性,接著在 SDK 級別 30 中新增「透過 HTTP/3 執行 DNS」。

使用 SDK 等級 >=28

將 SDK 級別更新為至少 28。請注意,這項緩解措施需要與知名且安全的公用 DNS 伺服器通訊,例如這裡列出的伺服器。

資源