歡迎光臨
每天分享高質量文章

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

在計算機網絡中,資料是暴露的,因為資料包傳輸是無法隱藏的
— Carla Schroder


致謝
編譯自 | https://www.linux.com/learn/intro-to-linux/2018/1/4-tools-network-snooping-linux 
 作者 | Carla Schroder
 譯者 | wyxplus ? ? 共計翻譯:5 篇 貢獻時間:111 天

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

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

精簡和詳細域名信息查詢

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

  1. $ whois linux.com

  2. Domain Name: LINUX.COM

  3. Registry Domain ID: 4245540_DOMAIN_COM-VRSN

  4. Registrar WHOIS Server: whois.namecheap.com

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

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

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

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

  9. Registrar: NameCheap Inc.

  10. Registrar IANA ID: 1068

  11. Registrar Abuse Contact Email: abuse@namecheap.com

  12. Registrar Abuse Contact Phone: +1.6613102107

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

  14. Name Server: NS5.DNSMADEEASY.COM

  15. Name Server: NS6.DNSMADEEASY.COM

  16. Name Server: NS7.DNSMADEEASY.COM

  17. DNSSEC: unsigned

  18. [...]

有很多令人討厭的法律宣告。但在哪有聯繫信息呢?該網站位於 whois.namecheap.com 站點上(見上面輸出的第三行):

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

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

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

想要擺脫這些煩人的法律宣告?使用 -H 引數。

DNS 解析

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

  1. $ dig linux.com

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

  3. ;; global options: +cmd

  4. ;; Got answer:

  5. ;; ->>HEADER<< opcode: QUERY, status: NOERROR, id: 13694

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

  7. ;; OPT PSEUDOSECTION:

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

  9. ;; QUESTION SECTION:

  10. ;linux.com. IN A

  11. ;; ANSWER SECTION:

  12. linux.com. 10800 IN A 151.101.129.5

  13. linux.com. 10800 IN A 151.101.65.5

  14. linux.com. 10800 IN A 151.101.1.5

  15. linux.com. 10800 IN A 151.101.193.5

  16. ;; Query time: 92 msec

  17. ;; SERVER: 127.0.1.1#53(127.0.1.1)

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

  19. ;; MSG SIZE rcvd: 102

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

  1. $ ps ax|grep dnsmasq

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

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

  4. --listen-address=127.0.1.1

dig 命令預設是傳回 A 記錄,也就是域名。IPv6 則有 AAAA 記錄:

  1. $ $ dig linux.com AAAA

  2. [...]

  3. ;; ANSWER SECTION:

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

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

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

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

  8. [...]

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

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

  1. $ dig @69.195.152.204 linux.com

  2. [...]

  3. ;; Query time: 231 msec

  4. ;; SERVER: 69.195.152.204#53(69.195.152.204)

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

上游域名服務器

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

  1. $ cat /etc/resolv.conf

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

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

  4. nameserver 127.0.1.1

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

  1. $ nmcli dev show | grep DNS

  2. IP4.DNS[1]: 192.168.1.1

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

查找在您的網絡中 IPv4 地址

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

  1. $ nmap -sn 192.168.1.0/24

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

  3. Nmap scan report for Mobile.Hotspot (192.168.1.1)

  4. Host is up (0.011s latency).

  5. Nmap scan report for studio (192.168.1.2)

  6. Host is up (0.000071s latency).

  7. Nmap scan report for nellybly (192.168.1.3)

  8. Host is up (0.015s latency)

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

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

  1. $ nmap -sV 192.168.1.1/24

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

  3. Nmap scan report for Mobile.Hotspot (192.168.1.1)

  4. Host is up (0.0071s latency).

  5. Not shown: 997 closed ports

  6. PORT STATE SERVICE VERSION

  7. 22/tcp filtered ssh

  8. 53/tcp open domain dnsmasq 2.55

  9. 80/tcp open http GoAhead WebServer 2.5.0

  10. Nmap scan report for studio (192.168.1.102)

  11. Host is up (0.000087s latency).

  12. Not shown: 998 closed ports

  13. PORT STATE SERVICE VERSION

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

  15. 631/tcp open ipp CUPS 2.1

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

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

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

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

  1. $ nmap -sV 12.34.56.78

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

  3. Nmap scan report for 12.34.56.78

  4. Host is up (0.0061s latency).

  5. All 1000 scanned ports on 12.34.56.78 are closed

果然不出所料,結果和我想象的一樣(LCTT 譯註:這些服務和信息沒有被暴露在公網上)。可以用手冊來查詢這些命令,以便瞭解更多有趣的嗅探技術。

瞭解更多 Linux 的相關知識可以從 Linux 基金會和 edX(LCTT譯註:edX 是麻省理工和哈佛大學於 2012 年 4 月聯手創建的大規模開放在線課堂平臺)中獲取免費的 “介紹 Linux”[2]課程。


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

作者:Carla Schroder[4] 譯者:wyxplus 校對:wxy

本文由 LCTT 原創編譯,Linux中國 榮譽推出

赞(0)

分享創造快樂

© 2021 知識星球   网站地图