2007-5-26 08:10 AM
立場
一個電信網絡工程師講解禁路由上網的破解方法
ADSL共享上網有兩種方式,一種是代理,一種是地址翻譯(NAT),大家常說的路由方式其實就
是NAT方式,其實路由和NAT的原理還是有區別的,這里不作討論,現在的ADSL貓一般都有NAT的
功能,用它本身的功能實現共享上網是比經濟方便,本文主要討論這種方式。轉
要想阻斷一台以上的計算機上網必須能發現共享后邊的機器是否多于一台,NAT的工作原理如圖
一所示,經過NAT轉換后訪問外網的內網的計算機的地址都變成了192.168.0.1而且MAC地址也轉
換成了ADSL的MAC地址,也就是說,從原理上講,直接在ADSL出口抓經過NAT轉換的包是不能發
現到底有几台機器在上網。那是如何發現的呢?經過研究發現它是采用多種方法探測用戶是否
用共享方式上網,從而進行限制,下面分別進行破解:
一.檢查同一IP地址的數據包中是否有不同的MAC地址,如果是則判定用戶共享上網。破解的辦
法是把每台機的MAC地址改為一樣.修改的方法如下:
首先要獲取本機的MAC:MAC地址是固化在網卡上串行EEPROM中的物理地址,通常有48位長。以
太網交換機根據某條信息包頭中的MAC源地址和MAC目的地址實現包的交換和傳遞。
?在Windows 98/Me中,依次單擊“開始”→“運行” →輸入“winipcfg”→回車。
?在Windows 2000/XP中,依次單擊“開始”→“運行”→輸入“CMD”→回車→輸入
“ipconfig /all”→回車。
或者右鍵本地連接圖標、選擇狀態然后點擊支持選項卡,這里“詳細信息”中包含有MAC和其它
重要網絡參數。
1、如果你的網卡驅動有直接提供克隆MAC地址功能,如RealTek公司出的RTL8139芯片,那恭喜你
了,點擊“開始→設置→控制面板”,雙擊“網絡和撥號連接”,右鍵點擊需要修改MAC地址的
網卡圖標,並選擇“屬性”。在“常規”選項卡中,點擊“配置”按鈕,點擊“高級”選項卡
。在“屬性”區,你應該可以看到一個稱作 “Network Address”或“Locally Administered
Address”的項目,點擊它,在右側“值”的下方,輸入你要指定的MAC地址值。要連續輸入12
個數字或字母,不要在其間輸入“-”。重新啟動一次系統后設置就會生效了(Windows 98和
Windows 2000/XP用戶操作略有區別,請參照系統說明操作)
2、如果你的網卡驅動沒有提供克隆MAC地址功能,那下面分別提供一些方法,希望能找到一個適
合你的
WIN98下:
a.在網上鄰居圖標上點右鍵,選擇屬性,出來一個網絡對話框,在配置框中,雙擊你要修改的
網卡,出來一個網卡屬性對話框。在高級選項中,也是點擊屬性標識下的Network Address項,
在右邊的兩個單選項中選擇上面一個,再在框中輸入你要修改的網卡MAC地址,點確定后,系統
會提示你重新啟動。重新啟動后,你的網卡地址就告修改成功!!
b.點擊“開始→運行”,鍵入“winipcfg”,選擇你要修改的網卡,並記錄MAC地址值。點擊“
開始→運行”,輸入“regedit”運行注冊表編輯器(在修改注冊表前,一定要先備份注冊表)
,依據注冊表樹狀結構,依次找到
“HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\Net”,你會看到類似
“0000”、“0001”、“0002”等樣子的子鍵。從“0000”子鍵開始點擊,依次查找子鍵下的
“DriverDesc” 鍵的內容,直到找到與我們查找的目標完全相同的網卡注冊表信息為止。
當找到正確的網卡后,點擊下拉式菜單“編輯→新建→字符串”,串的名稱為
“networkaddress”,在新建的“networkaddress”串名稱上雙擊鼠標,就可以輸入數值了。
輸入你指定的新的MAC地址值。新的MAC地址應該是一個12位的數字或字母,其間沒有“-”,類
似“00C095ECB761”的樣子。
有兩種方法激活新的MAC地址:
如果你使用的是普通內置網卡,就必須重新啟動計算機來使修改生效。
如果你使用的是PCMCIA卡,你可以按照下面的步驟操作而不必重新啟動操作系統:運行
winipcfg,選擇並釋放DHCP設置,關閉winipcfg。打開控制面板或系統托盤“PC Card
(PCMCIA)”,停止並彈出PCMCIA網卡。重新插入PCMCIA網卡,打開winipcfg,選擇並刷新DHCP
設置,運行winipcfg,確定修改的MAC地址已生效
WIN2000下:
a.在桌面上網上鄰居圖標上點右鍵,選屬性,在出來的網絡和撥號連接窗口中一般有兩個圖標
,一個是新建連接圖標,一個是我的連接圖標。如果你的機器上有兩個網卡的話,那就有三個
圖標了。如果你只有一個網卡,那就在我的連接圖標上點右鍵,選屬性,會出來一個我的連接
屬性的窗口。在圖口上部有一個連接時使用:的標識,下面就是你機器上的網卡型號了。在下
面有一個配置按鈕,點擊該按鈕后就進入了網卡的屬性對話框了,這個對話框中有五個屬性頁
,點擊第二項高級頁,在屬性標識下有兩項:一個是Link Speed/Duplex Mode,這是設置網卡工
作速率的,我們需要改的是下面一個Network Address,點擊該項,在對話框右邊的值標識下有
兩個單選項,默認得是不存在 ,我們只要選中上面一個單選項,然后在右邊的框中輸入你想改
的網卡MAC地址,點確定,等待一會兒,網卡地址就改好了,你甚至不用停用網卡!
你也可以在設置管理器中,打開網卡的屬性頁來修改,效果一樣。
b.1.在“HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\4D36E972-E325-
11CE-BFC1-08002BE10318?\0000、0001、0002”等主鍵下, 因為你有可能安裝了不止一塊網
卡,所以在這個主鍵下饃能會有多個類似于“0000、0001”的主鍵,這時候你可以查找
DriverDesc內容為你要修改的網卡的描述相吻合的主鍵,如“0000”。
2.在上面提到的主鍵下,添一個字符串,名字為“NetworkAddress”,把它的值設為你要的MAC
地址,要連續寫?如“001010101010”。
3.然后到主鍵下“NDI\params”中添加一項“NetworkAddress”的主鍵值,在該主鍵下添加名
為“default”的字符串,值寫要設的MAC地址,要連續寫,如“001010101010”。
【注】實際上這只是設置在后面提到的高級屬性中的“初始值”,實際使用的MAC地址還是取決
于在第2點中提到的“NetworkAddress”參數,而且一旦設置后,以后高級屬性中值就是
“NetworkAddress”給出的值而非“default”給出的了。
4.在“NetworkAddress”的主鍵下繼續添加名為“ParamDesc”的字符串,其作用為指定
“NetworkAddress”主鍵的描述,其值可為“MAC Address”(也可以隨意設置,這只是個描述
,無關緊要,這個值將會在你以后直接修改MAC地址的時候作為描述出現),這樣重新啟動一次
以后打開網絡鄰居的屬性,雙擊相應網卡項會發現有一個高級設置,其下存在MAC Address (就
是你在前面設置的ParamDesc,如圖(^29041103a^)1)的選項,這就是你在第二步里在注冊表中
加的新項“NetworkAddress”,以后只要在此修改MAC地址就可以了。
5.關閉注冊表編輯器,重新啟動,你的網卡地址已經改好了。打開網絡鄰居的屬性,雙擊相應
網卡項會發現有一個MAC Address的高級設置項。用于直接修改MAC地址,而且不需要重新啟動
就可以實現MAC的隨時更改。
WinXP下
大部分的網卡都可以通過在控制面板中修改網卡屬性來更改其MAC地址。在“設備管理器中”,
右鍵點擊需要修改MAC地址的網卡圖標,並選擇“屬性/高級”選項卡。在“屬性”區,就可以
看到一個稱作“Network Address”或其他相類似名字的的項目,點擊它,在右側“值”的下方
,輸入要指定的MAC地址值。要連續輸入12個十六進制數字或字母,不要在其間輸入“-”。
另外有几個可以修改MAC的軟件都可以在XP/W2K下運行,大家可以去網上搜下,所以這里就不詳細
介紹了
linux下
需要用 #ifconfig eth0 down 先把網卡禁用 ,再用ifconfig eth0 hw ether 1234567890ab ,
這樣就可以改成功了
要想永久改,就在/etc/rc.d/rc.local里加上這三句(也可在/etc/init.d/network里加下面三行
)
ifconfig eth0 down
ifconfig eth0 hw ether 1234567890ab
ifconfig eth0 up
如果你想把網卡的MAC地址恢複原樣,只要再次把Network Address項右邊的單選項選擇為下面
一個沒有顯示再重新啟動即可。在WIN2000下面是選擇不存在,當然也不用重新啟動了。
二、通過SNMP(簡單網絡管理協議)來發現多機共享上網。有些路由器和ADSL貓內置SNMP服務
,通過掃描軟件(ipscan、superscan......)掃描一下,發現開著161端口,161是SNMP(簡單網
絡管理協議)的服務端口,難道是通過SNMP協議發現的主機數量,用xscan對貓進行了漏洞掃描
,果然有默認密碼,登陸到貓的管理界面但是找不到關閉SNMP服務的地方,看來是留的后門,
由此基本可斷定是通過SNMP協議發現的主機數。為了進一步證實,用SNMP的一個管理軟件
ActiveSNMP查看ADSL貓的連接情況,如圖二所示,可以清楚地看出通過SNMP協議可以發現同時上
網的主機數量。
解決辦法:
1.如果該貓可以關閉SNMP協議,那就把SNMP用的161端口禁止就行了.使用路由器或打開ADSL貓的
路由模式共享上網的朋友可以進入管理界面有關閉SNMP選項的關掉它。如果貓的管理界面無關
閉SNMP選項的只好買一個沒有SNMP服務的路由器,例如TP-LINK TL-R400,放到adsl moden和
hub中間,如下圖.在該路由器中再做一個NAT服務,這樣進到ADSL貓中的就是一個地址,這樣就
解決了共享上網。 注意在路由器中要關閉SNMP協議。
2.修改配置文件,可以將配置轉換成一個文件,用二進制編輯工具修改默認密碼,然后再加載
到貓中,這只是一種思路,沒有試過
三、監測並發的端口數,並發端口多于設定數判定為共享。
這是一個令人哭笑不得的設定,“網絡尖兵”不停掃描用戶打開的端口數,多于設定值的就判
斷是共享,有時連按几次F5鍵它是認為是共享,連單用戶上網也受到了影響,這個就沒法破解
了(除非你把網絡尖兵黑了),俺這里的解決辦法是裝成無辜的用戶到ISP的客服電話大罵,並聲
明搞不好就換ISP,一會兒網絡就正常了。
四、“網絡尖兵”還使用了未知的方法從共享的計算機中探測到共享的信息,目前解決的辦法
是所有共享的客戶機均要安裝防火牆,把安全的級別設為最高,因條件有限,只試用了几種防
火牆,發覺金山網鏢V([url]http://www.gz-pet.com/Soft_Show.asp?SoftID=10)[/url]有用,把IP配置規則
里面所有的允許別人訪問本機規則統統不要,允許PING本機不要,防止ICMP,IGMP攻擊也要勾選
。如果是WINXP,要打開網卡的網絡防火牆。
采取以上破解的辦法后,在自己的局域網不能看到本機,而且WINXP打開網卡的網絡防火牆后,
在QQ不能傳送文件,網速有所減慢,但總算又可以共享了,如果有好的辦法,也請大家告知。
總的來說,“網絡尖兵”還是一個不成熟的產品,主要是他對單用戶上網也產生影響,瀏覽網
頁經常要刷新几次,有的網頁比較複雜,要調用几個服務器文件時它也當你是共享,造成網頁
部分不能顯示。並且由于“網絡尖兵”不停掃描用戶端口占用帶寬,導致網速變慢