2018年2月24日 星期六

DNS安全性-DNSSEC詳談

DNS的原始設計不包含任何安全細節, 相反的它被設計成一個可擴增的分散式系統(Distributed system). 域名系統安全擴展(DNSSEC, Domain Name System Security Extensions)嘗試在其中添加安全性, 同時仍保持向下相容性. RFC 3833記錄了 DNS的一些已知威脅以及 DNSSEC如何應對這些威脅

DNSSEC旨在保護應用程式(以及服務這些應用程式的快取解析器)免受偽造或不當操縱的 DNS數據所造成的影響(例如域名伺服器快取污染的數據), 來自 DNSSEC保護區的所有回應都經過數位簽章. 通過檢驗數位簽章, DNS解析器可以核查資訊是否與區域所有者發布的資訊相同(未修改和完整), 並確認此為實際負責的 DNS伺服器所提供, 雖然保護IP位址的正確性是許多使用者關注DNSSEC的直接課題, DNSSEC還可以保護 DNS中發布的其他任何數據: 包括文字記錄(TXT)和郵件交換記錄(MX), 並可用於引導發布參照儲存在 DNS中的加密憑證的其他安全系統: 例如憑證記錄(CERT記錄,RFC 4398), SSH指紋(SSHFP,RFC 4255), IPSec公鑰(IPSECKEY,RFC 4025)和TLS信任錨(TLSA,RFC 6698)w-studio.idv.tw

以上摘自維基百科: 域名系統安全擴充


DNSSEC是用來防止 DNS查詢回應的攔截和篡改攻擊, 如果駭客更改來自 DNS伺服器的回應或者將欺騙性的回應發送給用戶端電腦轉向到他們假的伺服器, 他們就可以存取敏感資訊, 任何依賴 DNS 進行初始連接的服務(例如電子商務網站伺服器和電子郵件伺服器)都容易受到攻擊, DNSSEC用來保護進行 DNS查詢的用戶端不接受錯誤的 DNS回應

當託管數位簽章區域的 DNS伺服器收到查詢時, 伺服器會傳回數位簽章以及請求的記錄, 解析器(resolver)或其他伺服器可以從信賴起點(Trust Anchors)取得公開金鑰, 然後驗證回應是否真實且未被篡改, 解析器或伺服器必須為簽署區域或簽署區域的父級設定信賴起點

Trust anchors:
信賴起點(trust anchors)是由公開金鑰表示的權威實體, TrustAnchors區域儲存特定區域關聯的預先配置公開金鑰, 在 DNS中信賴起點是 DNSKEY 或 DS 資源記錄, 用戶端電腦使用這些記錄來建立信賴鏈(trust chains), 必須從每個網域 DNS伺服器上的區域設定信賴起點以驗證來自該簽章區域的回應, 如果 DNS伺服器是網域控制站則 Active Directory 整合區域可以發布信賴起點
w-studio.idv.tw
NRPT(Name Resolution Policy Table):
NRPT包含控制用於發送 DNS查詢和處理來自這些查詢回應的 DNS用戶端行為的規則, 例如 DNSSEC規則促使用戶端電腦檢查對特定 DNS網域尾碼的回應驗證, 群組原則是設定 NRPT的最佳方法, 如果沒有 NRPT則用戶端電腦只接受回應而不會驗證它們w-studio.idv.tw

4種 DNS加密記錄: DNSKEY、DS、RRSIGN、NSEC/NSEC3/NSEC3RARAM
資源紀錄 目的
DNSKEY: 此記錄發布該區域的公開金鑰, 它根據 DNS伺服器持有的私鑰檢查回應的權限, 這些密鑰需要透過密鑰輪詢定期更換, Windows Server 2016 支援自動密鑰輪詢, 每個區域都有多個 DNSKEY, 然後分解為 ZSK 和 KSK 級別
DS(Delegation Signer): 此記錄是包含子區域公鑰雜湊的託管記錄, 由父區域的私鑰簽署, 如果已簽署父區域的子區域也被簽署, 則必須手動將子區域的 DS 記錄加到父區域以便可以建立信賴鏈w-studio.idv.tw
RRSIG(Resource Record Signature): 此記錄包含一組 DNS記錄的簽章, 它用於檢查回應的權限
NSEC(Next Secure): 當 DNS回應沒有資料提供給用戶端時, 則該記錄驗證主機不存在
NSEC3: 該記錄是 NSEC記錄的雜湊版本, 透過列舉區域來防止攻擊

沒有留言:

張貼留言