工作中,我們經常會收到五花八門的郵件。
假設某個清晨,剛上班的你,打開郵箱,例行閱讀郵件。這時,剛好看到一封未讀郵件。這封郵件的正文,示範了一項新的産品功能,而這個功能剛好能解決你所在的部門一個很頭疼的問題。迫切需要了解如何解決這個問題的你,點開了這個看似信譽良好的商業網站連結。
然而,這封郵件其實是經過設計的網絡釣魚郵件,郵件中隐藏着惡意軟體或連結,當你點選後,可能會打開一個僞裝得很深的Google登入表單,它可以記錄和竊取你的資訊……

圖1. 惡意域名和站點的工作原理
面對威脅重重的網絡環境,如何提高網絡安全成為了亟待解決的問題。針對網際網路上的威脅防護,可以利用DNS防火牆來解決。
什麼是DNS防火牆和DNS RPZ?
DNS防火牆是一種網絡安全解決方案,可以防止網絡使用者和系統連結到已知的惡意網絡位置。DNS防火牆可以選擇性地攔截惡意位址,并且可以有選擇地控制哪些域名、IP位址和子網以及名稱伺服器可以在網絡上運作。
DNS RPZ是DNS防火牆政策中的一種。
DNS RPZ擁有開放的、與供應商無關的格式,它允許DNS伺服器操作員維護自己的防火牆政策,并與所有内部名稱伺服器共享它們,或者直接訂閱外部防火牆政策,例如商業或合作式的“威脅源”。使用DNS RPZ的名稱伺服器可以預訂一個或多個DNS政策規則集(稱為“響應政策區域”)。RPZ規則集中的每個規則都存儲在DNS資源記錄集(RRset)中,并由“觸發-trigger”和“操作-action”組成。
DNS防火牆是如何工作的?
DNS防火牆憑借其背後的大資料平台,實時擷取全球情報,并及時向使用者提供可靠資訊,幫助使用者判斷目前點選的連結是否為可靠站點。
圖2. DNS防火牆工作原理
現在,我們在回過頭來看文章一開始的場景,如果你的電腦裡有DNS防火牆的話,事情的發展就會簡單很多:當你點選惡意電子郵件的連結時,防火牆可以阻止通路或者将你帶入到安全的登入頁面,并向你報告危險資訊,這樣就能避免你的私密資訊被竊取,保障網絡安全。
使用DNS防火牆,可以做什麼?
- 預防威脅發生
阻止通路受感染的站點,進而防止進一步的威脅。
- 檢測威脅并通知使用者
主動檢測到已被感染的系統,并通過安全報告的形式将此類威脅通知使用者。
- 保護使用者的網絡環境,提高網絡安全性
當使用者通路惡意域名時,防火牆可以将使用者定向到安全的登入頁面,進而提高網絡安全性,并且使使用者更多地了解潛伏在網際網路中的危害。
參考ISC的相關資料,我們為您提供了幾個DNS RPZ的配置示例:
(關于如何配置DNS RPZ的詳細過程,請參考ISC網站:
https://kb.isc.org/docs/aa-00525)
- 為惡意域名或其子域建立本地DNS “圍牆花園(walled garden)”
malicious-domain.com CNAME mywalled-garden.example.com.
*. malicious-domain.com CNAME mywalled-garden.example.com.
- 将RPZ配置為傳回NXDOMAIN,請使用以下指令
malicious-domain.com CNAME .
*.malicious.domain.com CNAME .
- 建立專門用于郵件的“圍牆花園(walled garden)”
malicious-domain.com MX 0 mywalledgarden-mail.example.com. malicious-domain.com A 10.1.1.123
*.bad.domain.com MX 0 mywalledgarden-mail.example.com. *.bad.domain.com A 10.1.1.123
除此之外,ISC還給出一個删除惡意域名的方法:
DNS防火牆最簡單、最常見的删除惡意域名的方法是通過簡單地使域名消失而使純屬惡意的域名中毒。所有DNS RPZ規則都表示為資源記錄集(RRset),表示“強制域名不存在條件”的方式是添加指向根伺服器的CNAME。例如:
$ORIGIN rpz.example.com.
malicious1.org CNAME .
*.malicious1.org CNAME .
malicious2.org CNAME .
*.malicious2.org CNAME .
需要注意的是:
首先,使惡意域名在響應政策區域内具有相對性。由于在上面的示例中,“.org”後面沒有尾随點,是以在擴充後,将在此響應政策區域中建立的實際RRset将是:
malicious1.org.rpz.example.com. CNAME .
*.malicious1.org.rpz.example.com. CNAME .
malicious2.org.rpz.example.com. CNAME .
*.malicious2.org.rpz.example.com. CNAME .
其次,通常會列出被侵害的域名及其子域名。這是因為惡意域名可能具有或可能具有惡意子域。
在上面的示例中,相對域名malicious1.org和malicious2.org将分别僅比對真實域名malicious1.org和malicious2.org。相對域名.malicious1.org和.malicious2.org将分别比對任何一個subdomain.malicious1.org或subdomain.of.malicious2.org。
如需了解DNS防火牆更多的資訊,請參考以下資料:
[1]
https://kb.isc.org/docs/aa-00519#[2]
https://zvelo.com/using-dns-rpz-to-protect-against-malicious-threats/[3]
https://www.switch.ch/dns-firewall/#tab-b3b9f162-b5d1-11e8-b90c-5254009dc73c-2[4]
https://blogs.cisco.com/security/using-dns-rpz-to-block-malicious-dns-requests