宋平凡,劉嘉勇,華 偉(四川大學(xué)電子信息學(xué)院,四川成都610064)
一種基于DNAT技術(shù)的DNS重定向改進(jìn)方案*
宋平凡,劉嘉勇,華 偉
(四川大學(xué)電子信息學(xué)院,四川成都610064)
DNS重定向是基于DNS欺騙實(shí)現(xiàn)的一種數(shù)據(jù)流重定向技術(shù)。文中首先總結(jié)了幾種不同形式的DNS欺騙技術(shù),重點(diǎn)分析了現(xiàn)有DNS重定向技術(shù)的實(shí)現(xiàn)方式及其所存在的缺陷:一是會(huì)直接暴露監(jiān)測(cè)主機(jī)的IP地址;二是不能同時(shí)監(jiān)測(cè)多個(gè)域名。然后介紹了NAT和DNAT的技術(shù)原理,并基于DNAT技術(shù)給出了一種針對(duì)現(xiàn)有DNS重定向技術(shù)實(shí)現(xiàn)缺陷的改進(jìn)方案。最后給出了改進(jìn)方案在Linux上的實(shí)現(xiàn)方法,對(duì)方案改進(jìn)前后進(jìn)行了對(duì)比,證明了改進(jìn)方案的優(yōu)越性。
DNS重定向 目的地址轉(zhuǎn)換 監(jiān)控 Linux防火墻
隨著用戶對(duì)自身的信息安全越來越重視,以及網(wǎng)絡(luò)終端處理能力的提升,越來越多的網(wǎng)站與移動(dòng)APP開始運(yùn)用SSL/TLS等加密通信協(xié)議來對(duì)自己全部或部分的通信數(shù)據(jù)進(jìn)行保護(hù)。應(yīng)用加密通信協(xié)議可以有效防止基于被動(dòng)嗅探技術(shù)的監(jiān)聽,這在為普通用戶提供隱私數(shù)據(jù)保護(hù)的同時(shí),也為某些不法分子規(guī)避有關(guān)部門的審查提供了溫床。
要對(duì)SSL/TLS等加密流量進(jìn)行審查,必須用到主動(dòng)嗅探技術(shù)。賀龍濤等人研究了基于協(xié)議欺騙的主動(dòng)嗅探[1],指出協(xié)議欺騙其實(shí)就是攻擊者有目的地破壞網(wǎng)絡(luò)訪問過程中存在的映射關(guān)系,并根據(jù)所破壞映射關(guān)系的不同將可用于主動(dòng)嗅探的協(xié)議欺騙技術(shù)分為四大類:ARP欺騙、路由欺騙、DNS欺騙,以及應(yīng)用層欺騙。其中,ARP欺騙、路由欺騙僅適用于同一局域網(wǎng)內(nèi)的主動(dòng)嗅探,應(yīng)用層欺騙不能用于加密傳輸協(xié)議的嗅探,這些技術(shù)都有一定的局限性。故此,出于通用性考慮,一般選用DNS欺騙來實(shí)現(xiàn)數(shù)據(jù)流的重定向,也簡(jiǎn)稱為DNS重定向。
本文在分析現(xiàn)有DNS重定向技術(shù)實(shí)現(xiàn)方式及其缺陷的基礎(chǔ)上,提出了一種基于DNAT技術(shù)的DNS重定向改進(jìn)方案。
根據(jù)欺騙賴以成功的不同基礎(chǔ),可以將DNS欺騙分為:
(1)內(nèi)應(yīng)攻擊
其成功依賴于DNS服務(wù)器存在某種漏洞。攻擊者可以利用這種漏洞非法控制一臺(tái)DNS服務(wù)器,而后直接操作域名數(shù)據(jù)庫(kù),將特定域名所對(duì)應(yīng)的IP地址修改為自己指定的IP地址,從而使所有使用該DNS服務(wù)器的客戶端,在查詢特定域名時(shí),都得到攻擊者偽造的IP地址。在有些文獻(xiàn)中,也將這種攻擊直觀地稱為DNS服務(wù)器攻陷[2]。
(2)序列號(hào)攻擊
其成功依賴于DNS協(xié)議本身在鑒別機(jī)制上存在的缺陷。攻擊者在嗅探到對(duì)特定域名的DNS查詢請(qǐng)求包后,可以根據(jù)其查詢ID輕易偽造一個(gè)DNS應(yīng)答包,并在其中填入自己指定的IP地址,只要趕在正常響應(yīng)之前返回給發(fā)出該查詢的DNS客戶端,就能使該客戶端的DNS緩存里特定域名對(duì)應(yīng)的是攻擊者偽造的IP地址。在有些文獻(xiàn)中,也將這種序列號(hào)攻擊直觀地稱為DNS ID欺騙[3]。如無法嗅探到DNS查詢請(qǐng)求包,則還可以通過一種稱為DNS緩存投毒[4]的技術(shù)來實(shí)現(xiàn)擴(kuò)展的序列號(hào)攻擊。
依前文所述,DNS重定向是一種基于DNS欺騙實(shí)現(xiàn)的網(wǎng)絡(luò)數(shù)據(jù)流重定向技術(shù)。無論完成DNS欺騙時(shí)使用的是前述哪種具體形式,現(xiàn)有的中間人監(jiān)測(cè)系統(tǒng)在實(shí)現(xiàn)DNS重定向時(shí),都是將特定域名原本對(duì)應(yīng)的真實(shí)IP地址替換成監(jiān)測(cè)主機(jī)的IP地址,從而使被監(jiān)控主機(jī)向該域名發(fā)送的所有數(shù)據(jù)包都會(huì)發(fā)送到監(jiān)測(cè)主機(jī)而不是擁有該域名的真實(shí)服務(wù)器,其實(shí)現(xiàn)效果如圖1所示。
圖1 改進(jìn)前DNS重定向技術(shù)的效果示意Fig.1 Effect of unimproved DNS redirection
這種將數(shù)據(jù)流直接重定向到監(jiān)測(cè)主機(jī)IP地址的實(shí)現(xiàn)方式存在兩個(gè)重大缺陷:
一是會(huì)把監(jiān)測(cè)主機(jī)的IP地址直接暴露出來,如果被監(jiān)控的不法分子擁有足夠的安全意識(shí)與技術(shù),較容易通過實(shí)際訪問的IP地址察覺到異常,甚至還可能發(fā)生被監(jiān)控主機(jī)反入侵監(jiān)測(cè)主機(jī)的情況。
二是會(huì)使監(jiān)測(cè)系統(tǒng)一次運(yùn)行只能監(jiān)控一個(gè)域名的加密通信。因?yàn)槿绻粫r(shí)間把兩個(gè)或更多域名的加密流量都重定向到一臺(tái)監(jiān)測(cè)主機(jī),則由于目的地址都是監(jiān)測(cè)主機(jī)的IP地址,監(jiān)測(cè)主機(jī)無法根據(jù)四元組信息區(qū)分接收的加密流量到底屬于哪個(gè)域名,也就無法完成正常的代理轉(zhuǎn)發(fā)功能。
2.1 NAT與DNAT
NAT(Network Address Translation,網(wǎng)絡(luò)地址轉(zhuǎn)換)是由IETF制定[5],并在1994年提出的一項(xiàng)標(biāo)準(zhǔn),其設(shè)計(jì)初衷是為了緩解當(dāng)時(shí)已經(jīng)日益嚴(yán)重的IP地址緊缺問題。在進(jìn)行轉(zhuǎn)換處理時(shí),如果是對(duì)數(shù)據(jù)包中的源IP地址和源端口進(jìn)行轉(zhuǎn)換,則稱之為SNAT(Source Network Address Translation,源網(wǎng)絡(luò)地址轉(zhuǎn)換);反之,若是對(duì)數(shù)據(jù)包中的目的IP地址和目的端口進(jìn)行轉(zhuǎn)換,則稱之為DNAT(Destination Network Address Translation,目的網(wǎng)絡(luò)地址轉(zhuǎn)換)。通過SNAT,可以讓內(nèi)網(wǎng)多臺(tái)主機(jī)共享一個(gè)IP地址訪問互聯(lián)網(wǎng),或是實(shí)現(xiàn)IP欺騙;通過DNAT,可以讓外網(wǎng)主機(jī)訪問內(nèi)網(wǎng)主機(jī)所提供的服務(wù),或是實(shí)現(xiàn)數(shù)據(jù)流的重定向與透明代理[6]。其中,DNAT的原理如圖2所示。
圖2 DNAT的原理示意Fig.2 Schematic of DNAT
2.2 基于DNAT的DNS重定向改進(jìn)方案描述
基于前文的分析,本文結(jié)合DNAT技術(shù)對(duì)現(xiàn)有DNS重定向?qū)崿F(xiàn)提出了一種改進(jìn)方案。本方案對(duì)DNS欺騙的實(shí)現(xiàn)方式?jīng)]有要求,主要對(duì)以下三點(diǎn)進(jìn)行了改進(jìn):
1)將特定域名的真實(shí)IP地址篡改為一個(gè)不可達(dá)的地址,以此隱藏監(jiān)測(cè)主機(jī)的IP地址,并增強(qiáng)監(jiān)測(cè)行為的隱蔽性和監(jiān)測(cè)系統(tǒng)的安全性。
2)將不同域名的真實(shí)IP地址篡改為不同的不可達(dá)地址,以此對(duì)發(fā)往不同域名的加密流量進(jìn)行區(qū)分,使監(jiān)測(cè)主機(jī)可以同時(shí)監(jiān)控多個(gè)域名的通信,并分別處理。
3)為了能夠讓監(jiān)測(cè)主機(jī)基于系統(tǒng)協(xié)議棧正常處理目的地址是不可達(dá)地址的數(shù)據(jù)包,在數(shù)據(jù)包接收后,上交協(xié)議棧前,增加了目的地址轉(zhuǎn)換的處理流程。
為了防止本文所討論的技術(shù)被不法分子濫用,在進(jìn)行下面DNS重定向改進(jìn)方案流程的討論前,本文先做一些關(guān)于討論背景和范圍方面的限制:改進(jìn)方案的使用者應(yīng)當(dāng)擁有被監(jiān)控網(wǎng)絡(luò)的一定管理權(quán)限。例如,使用者對(duì)被監(jiān)控網(wǎng)絡(luò)的DNS服務(wù)器有管理權(quán)限,可以直接修改DNS服務(wù)器的域名數(shù)據(jù)庫(kù)記錄;又如,使用者擁有網(wǎng)絡(luò)設(shè)備和線路的管理權(quán)限,可以在主干網(wǎng)上使用分光器,可以使用路由器、交換機(jī)等網(wǎng)絡(luò)設(shè)備的鏡像口。
基于此,不失一般性,本文假設(shè)監(jiān)測(cè)主機(jī)接在被監(jiān)控網(wǎng)絡(luò)上連網(wǎng)絡(luò)設(shè)備的鏡像口上,使用的欺騙技術(shù)是DNS ID欺騙,則改進(jìn)方案的流程詳細(xì)描述如下:
1)監(jiān)測(cè)主機(jī)預(yù)先搜集一批IP地址,這些IP地址經(jīng)過測(cè)試是不可達(dá)的,后文稱之為虛擬地址。
2)對(duì)于所有被監(jiān)控域名,監(jiān)測(cè)主機(jī)需建立一個(gè)域名與虛擬地址之間一一對(duì)應(yīng)的靜態(tài)映射表,記為表A;建立一個(gè)虛擬地址與連接處理參數(shù)之間的靜態(tài)映射表,記為表B。
3)監(jiān)測(cè)主機(jī)嗅探到對(duì)某被監(jiān)控域名的查詢請(qǐng)求后,根據(jù)該域名在表A中查詢得到對(duì)應(yīng)的虛擬地址,將這個(gè)虛擬地址填入偽造的DNS響應(yīng)包,返回給被監(jiān)控客戶端。
4)被監(jiān)控客戶端由于鑒別機(jī)制的缺陷,信任了這個(gè)響應(yīng)包,建立了該域名與虛擬地址之間的錯(cuò)誤映射關(guān)系。
5)被監(jiān)控客戶端把對(duì)該被監(jiān)控域名的連接請(qǐng)求發(fā)往虛擬地址,由于默認(rèn)路由的存在,該請(qǐng)求會(huì)經(jīng)上連交換機(jī),被一路發(fā)往被監(jiān)控網(wǎng)絡(luò)的出口網(wǎng)關(guān)以及上級(jí)路由器,但畢竟虛擬地址是不可達(dá)的,在轉(zhuǎn)發(fā)過程中最后會(huì)因TTL耗盡等原因被丟棄。
6)監(jiān)測(cè)主機(jī)可以通過嗅探從被監(jiān)控網(wǎng)絡(luò)的上連網(wǎng)絡(luò)設(shè)備的鏡像口獲取被監(jiān)控網(wǎng)絡(luò)所有上行數(shù)據(jù)的一份拷貝。它在里面找到發(fā)往虛擬地址的連接請(qǐng)求后,首先將該連接請(qǐng)求的四元組信息(源IP、源端口、目的IP和目的端口)呆存到一個(gè)動(dòng)態(tài)表,記為表C;接著經(jīng)過DNAT處理,把該請(qǐng)求的目的IP(虛擬地址)、目的端口(真實(shí)端口)改為監(jiān)測(cè)主機(jī)代理程序的監(jiān)聽I(yíng)P和監(jiān)聽端口,最后將該請(qǐng)求轉(zhuǎn)給代理程序。
7)代理程序首先根據(jù)所處理連接的源IP和源端口去表C中查詢DNAT處理前的虛擬地址和真實(shí)端口,再根據(jù)虛擬地址去表B中查詢?cè)撨B接對(duì)應(yīng)的處理參數(shù),結(jié)合真實(shí)端口、連接處理參數(shù),代理程序就可以對(duì)該連接進(jìn)行完整的處理了。
類似于圖1,改進(jìn)方案實(shí)現(xiàn)后的效果如圖3所示。
圖3 改進(jìn)后DNS重定向技術(shù)的效果示意Fig.3 Effect of improved DNS redirection
3.1 Netfilter/Iptables
Netfilter/Iptables是2.4.x以及后面版本Linux內(nèi)核中自帶的防火墻系統(tǒng)[7],它由Netfilter和Iptables兩個(gè)相對(duì)獨(dú)立的組件組成。
(1)Netfilter組件
它工作在內(nèi)核空間,是Linux內(nèi)核的一部分。它定義并存儲(chǔ)了四個(gè)內(nèi)置表(raw、mangle、nat、filter)和五個(gè)內(nèi)置鏈(PREROUTING、INPUT、FORWARD、OUTPUT和POSTROUTING)。其中,表是按照對(duì)數(shù)據(jù)包的操作類型區(qū)分的,一個(gè)表就是實(shí)現(xiàn)一類功能的所有規(guī)則的集合;鏈?zhǔn)前凑諕旖拥腍OOK點(diǎn)不同[8]來區(qū)分的,一條鏈就是在某個(gè)HOOK點(diǎn)(鉤子連接點(diǎn))上某個(gè)表所引用規(guī)則的集合。表和鏈實(shí)際上是Netfilter的兩個(gè)不同維度,所有的四表和五鏈合起來就是內(nèi)核用來控制數(shù)據(jù)包過濾處理的完整規(guī)則集。
(2)Iptables組件
它工作在用戶空間,本質(zhì)上是一個(gè)用以編輯Netfilter中數(shù)據(jù)包過濾處理規(guī)則的工具。Iptables有著嚴(yán)格的語(yǔ)法規(guī)則,其基本格式為: Iptables[-t表名]命令選項(xiàng)[鏈名][條件匹配] [-j目標(biāo)動(dòng)作或跳轉(zhuǎn)]。
3.2 基于Netfilter/Iptables的改進(jìn)方案實(shí)現(xiàn)
改進(jìn)方案的實(shí)現(xiàn)可以分為兩部分:一是DNS欺騙模塊;二是DNAT轉(zhuǎn)換模塊。其中,DNS欺騙模塊基本沿用了原有方案的實(shí)現(xiàn)方式,此處不做討論。本節(jié)主要討論DNAT轉(zhuǎn)換模塊的實(shí)現(xiàn)。
在Linux系統(tǒng)上,DNAT的實(shí)現(xiàn)當(dāng)前有兩種方式:一種是楊文潮等人提到的通過修改Linux網(wǎng)絡(luò)部分內(nèi)核源代碼來實(shí)現(xiàn)[9];另一種則是基于Netfilter/Iptables實(shí)現(xiàn)方式。由于修改內(nèi)核源碼的實(shí)現(xiàn)方式,對(duì)于不同版本的系統(tǒng)內(nèi)核,需要針對(duì)性地編寫內(nèi)核補(bǔ)丁,兼容性上不好。所以,本文重點(diǎn)討論基于Netfilter/Iptables的DNAT實(shí)現(xiàn)方式。
Netfilter實(shí)質(zhì)上工作在系統(tǒng)協(xié)議棧內(nèi)部,所以數(shù)據(jù)包能被Netfilter處理的前提是它已經(jīng)被送入系統(tǒng)協(xié)議棧。可是,經(jīng)DNS重定向后的數(shù)據(jù)包,其目的地址(MAC、IP地址、TCP端口)均非監(jiān)測(cè)主機(jī)的通信地址,如果直接用網(wǎng)卡的通信模式接收這些流量,那么由于數(shù)據(jù)包的目的MAC地址并非本機(jī),數(shù)據(jù)包會(huì)被通信網(wǎng)卡直接丟棄;而如果使用網(wǎng)卡的混雜模式,雖然可以采集到數(shù)據(jù)包,但會(huì)直接提交到應(yīng)用層,還是不會(huì)被送進(jìn)系統(tǒng)協(xié)議棧,Netfilter也還是無能為力。
為了解決這個(gè)問題,本文基于多網(wǎng)卡實(shí)現(xiàn)了目的MAC地址轉(zhuǎn)換功能:監(jiān)測(cè)主機(jī)先用一張?jiān)O(shè)置了混雜模式的網(wǎng)卡(簡(jiǎn)記為采集網(wǎng)卡)從網(wǎng)絡(luò)設(shè)備鏡像口將重定向后的數(shù)據(jù)包先采集下來,然后修改數(shù)據(jù)包的目的MAC地址為通信網(wǎng)卡的MAC地址,再用一張和通信網(wǎng)卡接入同一臺(tái)內(nèi)部交換機(jī)的網(wǎng)卡(簡(jiǎn)記為轉(zhuǎn)換網(wǎng)卡)將數(shù)據(jù)包轉(zhuǎn)發(fā)給通信網(wǎng)卡,由此完成目的MAC地址轉(zhuǎn)換的功能,如下圖4所示。
圖4 目的MAC地址轉(zhuǎn)換的流程Fig.4 Process of destination MAC address translation
上圖所示流程中的一大關(guān)鍵是如何判定一個(gè)目的IP是否為虛擬地址。為了便于處理,本文找到了一個(gè)不可達(dá)的IP地址網(wǎng)段,并將所有監(jiān)控域名都重定向到此網(wǎng)段內(nèi)的不同IP地址,也就是前文中提到的虛擬地址。于是可以簡(jiǎn)單地根據(jù)目的IP是否屬于預(yù)定的不可達(dá)IP地址網(wǎng)段,來判定該IP是否為虛擬地址。
圖4中的“地址轉(zhuǎn)換動(dòng)態(tài)記錄表”中主要保存地址轉(zhuǎn)換前經(jīng)過DNS欺騙改變流向的網(wǎng)絡(luò)數(shù)據(jù)包的源IP、源TCP端口、目的IP、目的TCP端口,它在目的地址轉(zhuǎn)換模塊運(yùn)行過程中逐步建立。
經(jīng)過目的MAC地址轉(zhuǎn)換后,數(shù)據(jù)包被轉(zhuǎn)發(fā)到通信網(wǎng)卡。由于目的MAC地址是通信網(wǎng)卡自身的MAC地址,因此,通信網(wǎng)卡會(huì)將數(shù)據(jù)包上交給系統(tǒng)協(xié)議棧。此時(shí),就可以用到Netfilter/Iptables的DNAT功能將接收數(shù)據(jù)包的目的IP(虛擬IP)、目的端口(真實(shí)端口)自動(dòng)轉(zhuǎn)為監(jiān)測(cè)主機(jī)的監(jiān)聽I(yíng)P、監(jiān)聽端口。
Netfilter/Iptables中實(shí)現(xiàn)DNAT用的內(nèi)置表是nat。DNAT要在數(shù)據(jù)包進(jìn)入Netfilter后,進(jìn)行路由判定前完成,故此使用的內(nèi)置鏈?zhǔn)荘REROUTING。綜上,實(shí)現(xiàn)DNAT時(shí)需使用Iptables配置的規(guī)則如下(假設(shè)虛擬地址網(wǎng)段為1.1.1.0/24,監(jiān)聽地址為192.168.1.111:1011):
iptables-t nat-IPREROUTING-p tcp-d 1.1. 1.0/24-j DNAT--to 192.168.1.111:1011
經(jīng)過Netfilter/Iptables的DNAT轉(zhuǎn)換后,數(shù)據(jù)包就可以順利被路由表送到監(jiān)測(cè)主機(jī)應(yīng)用層,由通用代理模塊繼續(xù)處理。對(duì)于通用代理模塊來說,雖然它從同一個(gè)套接字得到分屬不同域名的流量,但它可以通過每個(gè)連接的源IP、源TCP端口去圖4中的“地址轉(zhuǎn)換動(dòng)態(tài)記錄表”查詢?cè)撨B接經(jīng)DNAT轉(zhuǎn)換前的目的IP,也就是虛擬地址,從而區(qū)分不同域名的流量。
由于Netfilter/Iptables在實(shí)現(xiàn)NAT時(shí)有一個(gè)特性:如果一個(gè)包被匹配,那么和它屬于同一個(gè)流的所有包都會(huì)被自動(dòng)轉(zhuǎn)換。因此,當(dāng)通用代理模塊向被監(jiān)測(cè)主機(jī)發(fā)送數(shù)據(jù)包時(shí),Netfilter/Iptables的NAT功能也會(huì)自動(dòng)將數(shù)據(jù)包的源地址信息由監(jiān)聽I(yíng)P、監(jiān)聽端口轉(zhuǎn)回虛擬IP和真實(shí)端口。由此,就實(shí)現(xiàn)了完整的目的地址轉(zhuǎn)換。
基于DNAT技術(shù),本文對(duì)主動(dòng)嗅探中常用的
DNS重定向技術(shù)進(jìn)行了改進(jìn)。本文提出并實(shí)現(xiàn)的改進(jìn)方案一方面隱藏了監(jiān)測(cè)主機(jī)的IP地址,增強(qiáng)了監(jiān)測(cè)行為的隱蔽性和安全性;另一方面也使一臺(tái)監(jiān)測(cè)主機(jī)可以同時(shí)監(jiān)控多個(gè)域名。相比現(xiàn)有的DNS重定向技術(shù)有較大的優(yōu)越性。實(shí)現(xiàn)本文所提出的改進(jìn)方案的關(guān)鍵是要搜集一批IP地址作為虛擬地址,虛擬地址除了必須是不可達(dá)地址外,還要求具有統(tǒng)一的、易識(shí)別的特征。本文當(dāng)前使用的是手工測(cè)試方式來搜集虛擬地址,效率不高。如何實(shí)現(xiàn)一種高效的虛擬地址搜集方法,是下一步要重點(diǎn)解決的問題。
[1] 賀龍濤,方濱興,胡銘曾.主動(dòng)監(jiān)聽中協(xié)議欺騙的研究[J].通信學(xué)報(bào),2003,24(11):146-152. HE Long-tao,FANG Bin-xing,HU Ming-zeng.The Study on Protocol Spoofing in Active Sniffing[J].Journal of China Institute of Communications,2003,24(11):146-152.
[2] 閆伯儒,方濱興,李斌等.DNS欺騙攻擊的檢測(cè)和防范[J].計(jì)算機(jī)工程,2006,32(21):130-132,135. YAN Bo-ru,FANG Bin-xing,LIBin,et al.Detection and Defence of DNSSpoofing Attack[J].Computer Engineering,2006,32(21):130-132,135.
[3] 孔政,姜秀柱.DNS欺騙原理及其防御方案[J].計(jì)算機(jī)工程,2010,36(3):125-127. KONG Zheng,JIANG Xiu-zhu.DNSSpoofing Principle and Its Defense Scheme[J].Computer Engineering, 2010,36(3):125-127.
[4] 田杰,谷大武,陸海寧.預(yù)防緩存中毒的DNS報(bào)文校驗(yàn)方案[J].通信技術(shù),2010,43(8):146-148,151. TIAN Jie,GU Da-wu,LU Hai-ning.A Solution for Packet Validity Check Against DNS Cache Poisoning [J].Communications Technology,2010,43(8):146-148,151.
[5] Egevang K.The IP Network Address Translator(NAT) [S].RFC 1631,May,1994.
[6] 張金良.用iptables實(shí)現(xiàn)NAT[J].唐山師范學(xué)院學(xué)報(bào),2007,29(2):74-76. ZHANG Jin-liang.NAT-HOWTOMaking Use of Iptables [J].Journal of Tangshan Teachers College,2007,29 (2):74-76.
[7] 景建篤,俞寧.Linux下NAT的實(shí)現(xiàn)機(jī)制及應(yīng)用[J].微機(jī)發(fā)展,2004,14(9):4-6,88. JING Jian-du,YU Ning.Implementation Mechanism and Applications of NAT based on Linux[J].Microcomputer Development,2004,14(9):4-6,88.
[8] 楊剛,陳蜀宇.Linux中基于Netfilter/Iptables的防火墻研究[J].計(jì)算機(jī)工程與設(shè)計(jì),2007,28(17):4124 -4125,4132. YANG Gang,CHEN Shu-yu.The Research on Linux Firewall based on Netfilter/Iptables[J].Computer Engineering and Design,2007,28(17):4124-4125,4132.
[9] 楊文潮,姜志堅(jiān),于洪章.基于NAT的網(wǎng)絡(luò)安全技術(shù)研究[J].福建電腦,2005,(9):80-81. YANGWen-chao,JIANG Zhi-jian,YU Hong-zhang. The Study on Network Security Technology based on NAT [J].Fujian Computer,2005,(9):80-81.
SONG Ping-fan(1989-),male,graduate student,mainly working at network communication and network security.
劉嘉勇(1962—),男,教授,博士,主要研究方向:信息安全理論與應(yīng)用、網(wǎng)絡(luò)通信與網(wǎng)絡(luò)安全;
LIU Jia-yong(1962-),male,professor,Ph.D.,principally working at theory and application of information security, network communication and network security.
華 偉(1967—),男,博士,副教授,主要研究方向:通信與信息系統(tǒng)。
HUAWei(1967-),male,Ph.D.,associate professor,principally working at communication information system.
A Modified Scheme for DNSRedirection based on DNAT Technology
SONG Ping-fan,LIU Jia-yong,HUAWei
(College of Electronic and Information Engineering,Sichuan University,Chengdu Sichuan 610064,China)
DNS redirection is a network redirection technology based on DNS spoofing.Firstly,this paper summarizes several forms of DNS spoofing,analyzes the current implementation of DNS redirection,including its disadvantages:one is that the current implementation would directly expose the IP address ofmonitoring computer to themonitored computer,and another is that the current implementation could notmonitormultiple domain names at the same time.Then,this paper describes the technical principles of NAT and DNAT,and based on DNAT technology,provides amodified scheme for DNS redirection.Finally,this paper proposes the implementation of thismodifeid scheme on Linux system,and the superiority of this scheme is verified via comparison of between the original scheme and the proposed one.
DNS redirection;DNAT;monitoring;Linux firewall
date:2014-09-05;Revised date:2014-12-10
TP393.08
A
1002-0802(2015)02-0223-05
宋平凡(1989—),男,碩士研究生,主要研究方向:網(wǎng)絡(luò)通信與網(wǎng)絡(luò)安全;
10.3969/j.issn.1002-0802.2015.02.022
2014-09-05;
2014-12-10