防火長城除了使用深度包檢測TCP重置攻擊干擾連接外,還會使用封鎖IP的方法阻止網站訪問。著名的示例有谷歌、推特和臉書:DNS解析出來的IP幾乎全部被封鎖了。此時我們需要手動從這些網站的IP段中掃描出可用IP用於連接。

獲取IP段

編輯

不同的網站IP段獲取方式各不相同。下面僅給出一些方法示例。

搜索

編輯

直接在搜索引擎里輸入「Twitter IP range」得到第一個結果 https://ipinfo.io/AS13414 即包括Twitter所在自治系統的IP段。

查詢WHOIS

編輯

比如我們查詢www.google.com

dig @208.67.220.220 -p 5353 www.google.com得到的IP地址為142.251.214.132

然後我們再查詢該IP的WHOIS記錄。

whois 142.251.214.132

得到的一長串WHOIS信息中有如下一段:

# whois.arin.net

NetRange:       142.250.0.0 - 142.251.255.255
CIDR:           142.250.0.0/15
NetName:        GOOGLE
NetHandle:      NET-142-250-0-0-1
Parent:         NET142 (NET-142-0-0-0-0)
NetType:        Direct Allocation
OriginAS:       AS15169
Organization:   Google LLC (GOGL)
RegDate:        2012-05-24
Updated:        2012-05-24
Ref:            https://rdap.arin.net/registry/ip/142.250.0.0

我們就得到其IP段為142.250.0.0/15

掃描可用IP

編輯

掃描IP的命令是.\ghostcp.exe -scanurl {URL} -scanip {IP RANGE}

例如,如果您要掃描www.google.com.hk的IP,假設IP段為172.217.0.0/16,可以使用如下命令:

.\ghostcp.exe -scanurl https://www.google.com.hk -scanip 172.217.0.0/16

GhosTCP會使用IP段中的每個地址嘗試訪問https://www.google.com.hk這個URL,並將配置文件中指定的method應用於每個掃描時發出的連接,返回的HTTP狀態碼為200時,計入可用IP。

如果您沒有在配置文件中寫明對該被封鎖域名的method,GhosTCP就不會修改TCP連接,此時應該是掃描不到任何IP的,因為發出的未修改的請求會被防火長城重置干擾。