四個 Linux 上的網絡信息嗅探工具

四個 Linux 上的網絡信息嗅探工具

編譯自: https://www.linux.com/learn/intro-to-linux/2018/1/4-tools-network-snooping-linux

譯者: wyxplus

在計算機網絡中,數據是暴露的,因為數據包傳輸是無法隱藏的,所以讓我們來使用 whois、dig、nmcli 和 nmap 這四個工具來嗅探網絡吧。

請注意,不要在不屬於自己的網絡上運行 nmap ,因為這有可能會被其他人認為惡意攻擊。

精簡和詳細域名信息查詢

您可能已經注意到,之前我們用常用的老式 whois 命令查詢域名信息,但現如今似乎沒有提供同過去一樣的詳細程度。我們使用該命令查詢 linux.com 的域名描述信息:

$ whois linux.com

Domain Name: LINUX.COM

Registry Domain ID: 4245540_DOMAIN_COM-VRSN

Registrar WHOIS Server: whois.namecheap.com

Registrar URL: http://www.namecheap.com

Updated Date: 2018-01-10T12:26:50Z

Creation Date: 1994-06-02T04:00:00Z

Registry Expiry Date: 2018-06-01T04:00:00Z

Registrar: NameCheap Inc.

Registrar IANA ID: 1068

Registrar Abuse Contact Email: [email protected]

Registrar Abuse Contact Phone: +1.6613102107

Domain Status: ok https://icann.org/epp#ok

Name Server: NS5.DNSMADEEASY.COM

Name Server: NS6.DNSMADEEASY.COM

Name Server: NS7.DNSMADEEASY.COM

DNSSEC: unsigned

[...]

$ whois -h whois.namecheap.com linux.com

我就不復製出來了,因為這實在太長了,包含了註冊人,管理員和技術人員的聯繫信息。怎麼回事啊,露西爾?(LCTT 譯註:《行屍走肉》中尼根的棒子)有一些註冊庫,比如 .com 和 .net 是精簡註冊庫,保存了一部分有限的域名信息。為了獲取完整信息請使用 -h 或 --host 參數,該參數便會從域名的 註冊服務機構 中獲取。

大部分頂級域名是有詳細的註冊信息,如 .info。試著使用 whois blockchain.info 命令來查看。

DNS 解析

使用 dig 命令比較從不同的域名服務器返回的查詢結果,去除陳舊的信息。域名服務器記錄緩存各地的解析信息,並且不同的域名服務器有不同的刷新間隔。以下是一個簡單的用法:

$ dig linux.com

<<>> DiG 9.10.3-P4-Ubuntu <<>> linux.com

;; global options: +cmd

;; Got answer:

;; ->>HEADER<<

;; flags: qr rd ra; QUERY: 1, ANSWER: 4, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:

; EDNS: version: 0, flags:; udp: 1440

;; QUESTION SECTION:

;linux.com. IN A

;; ANSWER SECTION:

linux.com. 10800 IN A 151.101.129.5

linux.com. 10800 IN A 151.101.65.5

linux.com. 10800 IN A 151.101.1.5

linux.com. 10800 IN A 151.101.193.5

;; Query time: 92 msec

;; SERVER: 127.0.1.1#53(127.0.1.1)

;; WHEN: Tue Jan 16 15:17:04 PST 2018

;; MSG SIZE rcvd: 102

注意下靠近末尾的這行信息:SERVER: 127.0.1.1#53(127.0.1.1),這是您默認的緩存解析器。當地址是本地時,就表明您的電腦上安裝了 DNS 服務。在我看來這就是一個 Dnsmasq 工具(LCTT 譯註:是一個小巧且方便地用於配置 DNS 和 DHCP 的工具),該工具被用作網絡管理:

$ ps ax|grep dnsmasq

2842 ? S 0:00 /usr/sbin/dnsmasq --no-resolv --keep-in-foreground

--no-hosts --bind-interfaces --pid-file=/var/run/NetworkManager/dnsmasq.pid

--listen-address=127.0.1.1

dig 命令默認是返回 A 記錄,也就是域名。IPv6 則有 AAAA 記錄:

$ $ dig linux.com AAAA

[...]

;; ANSWER SECTION:

linux.com. 60 IN AAAA 64:ff9b::9765:105

linux.com. 60 IN AAAA 64:ff9b::9765:4105

linux.com. 60 IN AAAA 64:ff9b::9765:8105

linux.com. 60 IN AAAA 64:ff9b::9765:c105

[...]

仔細檢查下,發現 linux.com 有 IPv6 地址。很好!如果您的網絡服務支持 IPv6 那麼您就可以用 IPv6 連接。(令人難過的是,我的移動寬帶則沒提供 IPv6)

假設您能對您的域名做一些 DNS 改變,又或是您使用 dig 查詢的結果有誤。試著用一個公共 DNS,如 OpenNIC:

$ dig @69.195.152.204 linux.com

[...]

;; Query time: 231 msec

;; SERVER: 69.195.152.204#53(69.195.152.204)

dig 回應您正在的查詢是來自 69.195.152.204。您可以查詢各種服務並且比較結果。

上游域名服務器

我想知道我的上游域名服務器(LCTT 譯註:此處指解析器)是誰。為了查詢,我首先看下 /etc/resolv/conf 的配置信息:

$ cat /etc/resolv.conf

# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)

# DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN

nameserver 127.0.1.1

好吧,不過我已經知道了。您的 Linux 發行版可能配置不同,您會看到您的上游服務器。接下來我們來試試網絡管理器命令行工具 nmcli:

$ nmcli dev show | grep DNS

IP4.DNS[1]: 192.168.1.1

很好,現在我們已經知道了,其實那是我的移動熱點,我能確認。我能夠登錄到簡易管理面板,來查詢上游服務器。然而許多用戶級互聯網網關不會讓您看到或改變這些設置,因此只能嘗試其他的方法,如 我的域名服務器是什麼?

查找在您的網絡中 IPv4 地址

您的網絡上有哪些 IPv4 地址已啟用並正在使用中?

$ nmap -sn 192.168.1.0/24

Starting Nmap 7.01 ( https://nmap.org ) at 2018-01-14 14:03 PST

Nmap scan report for Mobile.Hotspot (192.168.1.1)

Host is up (0.011s latency).

Nmap scan report for studio (192.168.1.2)

Host is up (0.000071s latency).

Nmap scan report for nellybly (192.168.1.3)

Host is up (0.015s latency)

Nmap done: 256 IP addresses (2 hosts up) scanned in 2.23 seconds

每個人都想去掃描自己的局域網中開放的端口。下面的例子是尋找服務和他們的版本號:

$ nmap -sV 192.168.1.1/24

Starting Nmap 7.01 ( https://nmap.org ) at 2018-01-14 16:46 PST

Nmap scan report for Mobile.Hotspot (192.168.1.1)

Host is up (0.0071s latency).

Not shown: 997 closed ports

PORT STATE SERVICE VERSION

22/tcp filtered ssh

53/tcp open domain dnsmasq 2.55

80/tcp open http GoAhead WebServer 2.5.0

Nmap scan report for studio (192.168.1.102)

Host is up (0.000087s latency).

Not shown: 998 closed ports

PORT STATE SERVICE VERSION

22/tcp open ssh OpenSSH 7.2p2 Ubuntu 4ubuntu2.2 (Ubuntu Linux; protocol 2.0)

631/tcp open ipp CUPS 2.1

Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel

Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .

Nmap done: 256 IP addresses (2 hosts up) scanned in 11.65 seconds

這些是有趣的結果。讓我們嘗試從不同的互聯網連接進行相同的操作,以查看這些服務是否暴露於互聯網中。如果您有智能手機,相當於您有第二個網絡。您可以下載應用程序,還可以為您的 Linux 電腦提供熱點。從熱點控制面板獲取廣域網IP地址,然後重試:

$ nmap -sV 12.34.56.78

Starting Nmap 7.01 ( https://nmap.org ) at 2018-01-14 17:05 PST

Nmap scan report for 12.34.56.78

Host is up (0.0061s latency).

All 1000 scanned ports on 12.34.56.78 are closed


via: https://www.linux.com/learn/intro-to-linux/2018/1/4-tools-network-snooping-linux


分享到:


相關文章: