文章

Android-安全风险-不安全的DNS设置

如果恶意网络攻击者能够欺骗 DNS,他们就可以在不引起用户怀疑的情况下,悄悄将用户重定向到他们控制的网站。

Android-安全风险-不安全的DNS设置

不安全的 DNS 设置

OWASP 类别:MASVS-NETWORK:网络通信

概览

当开发者自定义应用程序的 DNS 传输行为、绕过设备默认设置,或者用户在 Android 9 及更高版本中指定私有 DNS 服务器时,可能会出现不安全的 DNS 配置。偏离已知的良好 DNS 配置可能会使用户容易受到 DNS 欺骗或 DNS 缓存投毒等攻击,攻击者可以利用这些攻击将用户流量重定向到恶意网站。

影响

如果恶意网络攻击者能够伪造 DNS,他们就可以在不引起用户怀疑的情况下,悄悄地将用户重定向到他们控制的网站。例如,这个恶意网站可能会钓鱼用户以获取个人身份信息,导致用户无法访问服务,或者在不通知用户的情况下将用户重定向到其他网站。

风险:DNS 传输安全性存在漏洞

在 Android 9 及更高版本中,自定义 DNS 配置可能允许应用程序绕过 Android 内置的 DNS 传输安全机制。

缓解措施

使用 Android OS 处理 DNS 流量

允许 Android 操作系统处理 DNS。自 SDK 28 版本起,Android 通过 DNS over TLS 为 DNS 传输增加了安全性,并在 SDK 30 版本中通过 DNS over HTTP/3 增加了安全性。

使用 SDK 级别 >=28

将 SDK 级别更新为至少 28。请注意,此缓解措施需要与知名且安全的公共 DNS 服务器(例如此处所示的服务器)进行通信。

资源

本文由作者按照 CC BY 4.0 进行授权