查看單個文章
舊 2004-09-02, 02:29 PM   #1
psac
榮譽會員
 
psac 的頭像
榮譽勳章
UID - 3662
在線等級: 級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時
註冊日期: 2002-12-07
住址: 木柵市立動物園
文章: 17381
現金: 5253 金幣
資產: 33853 金幣
預設 怪IP位址現形記

  經常上網就會遇到這樣的網址--http://3427256388,讓人感到奇怪,而好奇心使我們忍不住去點擊它們,發現它是有效連接,能連到其他網站上。


還有,我們在瀏覽深層目錄網頁時,瀏覽器位址欄中會出現%4C%69%75%48%6F%6E%67的字串,這是為什麼呢?其實它們也是網址,只不過是以不一般的形式表現除來罷了。


而有些spamer和scammer卻常常借此來隱蔽自己真實的身份。


以下我就要說明如何把正常的網址進行變形,讓大家看清它們的真面目。


我們知道域名www.microsoft.com是為了說明 人們記憶而設計的,當我們在瀏覽器的位址欄輸入域名後,它要轉化為IP位址,然後進行尋找。


IP位址一般是由 "."分開的四組十進制的數位組成,每組數位從0~255,其實它也可以用二進制、八進制、十六進制形式表示。因此上面的怪網址就是實際上就是IP位址的二進制、八進制、十六進制形式,那麼如何對IP位址進行變形呢?
我們先可以用ping 指令得到一個域名的IP位址。連上網路,從Windows轉入DOS狀態,就可用這個指令,其格式為:ping 域名,如 ping www.yahoo.com 就可以得到IP位址204.71.200.68。


   我們以把十進制形式的IP位址的格式轉為十六進制形式,即雙字IP格式為例說明如何異形IP。開啟Windows原有的的計算器,選項"科學型"。


此時十進制是預設模式。


首先輸入第一組數位204,然後點擊十六進制值,202就會轉化為十六進制值CC。


依次把後面三組數位轉化為十六進制值,71的十六進制值47,200的十六進制值C8,68十六進制值為44。


最後把它們連在一起,即CC47C844,這就是IP位址204.71.200.68的十六進制形式。


最後把CC47C844輸入設為十六進制模式的計算器,點擊十進制制式把這組數位轉為十進制值3427256388。


這個數位是最終的變形,稱為大數IP。

反之從這種數位形式的網址也可反算出它的真正的IP位址,這樣那些spammer和scammer就難逃我們的火眼金睛了。


   雙字IP格式一般可以直接用與IE5.0瀏覽器的位址欄中,或在前面加上0x,即0xCC47C844同域名的效果是一樣的。


而且在它前面加上任意的十六進制數位還是同樣有效,比如0x9A3FCC47C844。

其實得到雙字IP後在每個十六進制值前面加上0x(0x表示後面的數位是十六進制形式),然後像十進制IP位址一樣用圓點分開,比如 0xCC.0x47.0xC8.0x44,與十進制IP同樣有效。


   另外還可以用以下這個公式來直接計算出上面的大數IP
   IP = V·256^3 + X·256^2+ Y·256 + Z·256^0

  其中 V是十進制IP位址的第一組數位,如上例中的202;X是第二組數位,如上例中的109; Y是第三組數位,如上例中的72;Z是第四組數位,如上例中的54。而且還有個有趣的現象,在上面的公式中再增加上一個項式N·256^4 ,即
  IP =N·256^4+ V·2563 + X·2562 + Y·256 + Z·2560


   雖然計算所得的結果不同,但是它的效果相同,也能連到同樣的網站上。

因為這些數位轉化成十六進制值時,它們最後的八位數位都相同,而相關程序在解析IP位址時就只認後8位數位,前面的數位一概不管。


有一個網頁http://97C4D38A/tool/Ip2dword ]可直接轉化。


  按同樣的原理,也可以把十進制IP轉為八進制和二進制的形式。


比如204.71.200.68轉為八進制形式0314.0107.0310.0104 要注意數值前面的"0"不能少,它向瀏覽器說明後面的數值是八進制的。


對二進制的形式轉化應更容易,就不再說明了。


   以上所述只是網址異形的基本形式,還有更為怪異的變形。


一個IP位址可以用十、八、十六進制的數值混合起來表示,同樣有效。


如204.71.200.68可以表示為0xCC.71.0310.0x44,還可以進一步變形為http://www.myyahoo.net@0xCC.71.0310.0x44 因為在http://和@之間的內容除了偽裝之外沒有任何作用和意義,除非這個網址要求訪問者被授權後才可以登入,那麼就可用 "http://usernameassword@ 網址"格式進行登入,因此在兩者之間可以填上任意的偽裝網址和符號。

而且IP位址後面的路徑和檔案名所用字母和符號都可以用十六進制的數值替代, 如
  http://97C4D38A/%74%6F%6F%6C/%49%70%32%64%77%6F%72%64 同樣我們也要注意在每個數值前面加個"%",說明後面的數值是十六進制形式的。


   最後要說明一下注意的事項
  1、在NETSCAPE的瀏覽器上不能用十六進制形式的IP,混合形式的IP只能也不能含有十六進制數值,只能是八、十進制的。


  2、雙字IP在部分低版本的IE和OPERA中不能用。

  3、在http://和@之間可以填任何東西,但如果用於NETSCAPE的瀏覽器就不能有 "/ ?",如用於IE就不能有"^ # % " `< > "。

  4、除了十進制IP位址,其他任何形式的IP最好不要用於代理伺服器和區域網路中。
psac 目前離線  
送花文章: 3, 收花文章: 1631 篇, 收花: 3205 次