Android

Paghukay ng utos sa linux (dns lookup)

DNS Enumeration Tutorial - Dig, Nslookup & Host

DNS Enumeration Tutorial - Dig, Nslookup & Host

Talaan ng mga Nilalaman:

Anonim

Ang Dig (Domain Information Groper) ay isang malakas na tool ng command-line para sa pag-query sa mga server ng pangalan ng DNS.

Sa utos ng dig , maaari kang mag-query ng impormasyon tungkol sa iba't ibang mga tala ng DNS, kasama ang mga address ng host, palitan ng mail, at mga server ng pangalan. Ito ang pinaka-karaniwang ginagamit na tool sa mga administrador ng system para sa pag-aayos ng mga problema sa DNS dahil sa kakayahang umangkop at kadalian ng paggamit.

Sa tutorial na ito, ipapakita namin sa iyo kung paano gamitin ang utility ng dig pamamagitan ng praktikal na mga halimbawa at detalyadong mga paliwanag ng mga pinaka-karaniwang pagpipilian sa dig .

Pag-install ng dig

Upang suriin kung magagamit ang utos ng dig sa iyong uri ng system:

dig -v

Ang output ay dapat magmukhang ganito:

DiG 9.11.3-1ubuntu1.1-Ubuntu

Kung ang dig ay hindi naroroon sa iyong system, ang utos sa itaas ay i-print ang "dig: command na hindi natagpuan". Madali mong mai-install ang tool ng dig gamit ang package manager ng iyong distro.

I-install ang dig sa Ubuntu at Debian

sudo apt update && sudo apt install dnsutils

I-install ang dig sa CentOS at Fedora

sudo yum install bind-utils

I-install ang dig sa Arch Linux

sudo pacman -S bind-tools

Pag-unawa sa Dig Output

Sa pinakasimpleng anyo nito, kapag ginamit upang mag-query sa isang nag-iisang host (domain) nang walang karagdagang mga argumento, ang utos ng paghukay ay medyo pasalita.

Sa sumusunod na halimbawa, magsasagawa kami ng isang query upang makuha ang impormasyon tungkol sa domain ng linux.org .

dig linux.org

Ang output ay dapat magmukhang ganito:

Pumunta tayo sa seksyon at ipaliwanag ang output ng utos ng dig ;

  1. Ang unang linya ng output ay naglimbag ng naka-install na bersyon ng paghukay, at ang query na hinihimok. Ang pangalawang linya ay nagpapakita ng mga pandaigdigang pagpipilian (ayon sa default, cmd lamang).

    ; <<>> DiG 9.13.3 <<>> linux.org;; global options: +cmd

    Kasama sa unang seksyon ang mga teknikal na detalye tungkol sa sagot na natanggap mula sa hiniling na awtoridad (DNS server). Ipinapakita ng header ang opcode (ang pagkilos na isinagawa ng dig) at ang katayuan ng pagkilos. Sa halimbawang ito, ang katayuan ay NOERROR , na nangangahulugan na ang hiniling na awtoridad ay nagsilbi sa query nang walang anumang isyu.

    ;; Got answer:;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 37159;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 2, ADDITIONAL: 5

    Ang seksyon na ito ay maaaring alisin gamit ang +nocomments pagpipilian, na hindi rin pinapagana ang ilang mga header ng ibang seksyon.

    Ang seksyong "OPT" pseudo ay ipinapakita sa pamamagitan ng default lamang sa mga mas bagong bersyon ng utility utong. Maaari mo ang tungkol sa mga mekanismo ng Extension para sa DNS (EDNS) dito.

    ;; OPT PSEUDOSECTION:; EDNS: version: 0, flags:; udp: 4096

    Sa seksyon na "TANONG" ay nagpapakita ng aming query (tanong). Bilang default, dig kahilingan sa isang talaan.

    ;; QUESTION SECTION:;linux.org. IN A

    Maaari mong paganahin ang seksyong ito gamit ang pagpipilian ng +noquestion .

    Ang seksyong "SAGOT" ay nagbibigay sa amin ng isang sagot sa aming katanungan. Tulad ng nabanggit na natin, sa pamamagitan ng default na dig ay hihilingin ang talaan ng A. Narito, ang domain linux.org tumuturo sa 104.18.59.123 IP address.

    ;; ANSWER SECTION: linux.org. 300 IN A 104.18.59.123 linux.org. 300 IN A 104.18.58.123

    Karaniwan, hindi mo nais na patayin ang sagot, ngunit maaari mong alisin ang seksyong ito mula sa output gamit ang pagpipilian ng +noanswer .

    Ang seksyon ng "AUTHORITY" ay nagsasabi sa amin kung anong mga (mga) server ang awtoridad para sa pagsagot sa mga query ng DNS tungkol sa queried domain.

    ;; AUTHORITY SECTION: linux.org. 86379 IN NS lia.ns.cloudflare.com. linux.org. 86379 IN NS mark.ns.cloudflare.com.

    Maaari mong paganahin ang seksyong ito ng output gamit ang pagpipilian na +noauthority .

    Ang seksyong "ADDITIONAL" ay nagbibigay sa amin ng impormasyon tungkol sa mga IP address ng mga may-akda na DNS server na ipinakita sa seksyon ng awtoridad.

    ;; ADDITIONAL SECTION: lia.ns.cloudflare.com. 84354 IN A 173.245.58.185 lia.ns.cloudflare.com. 170762 IN AAAA 2400:cb00:2049:1::adf5:3ab9 mark.ns.cloudflare.com. 170734 IN A 173.245.59.130 mark.ns.cloudflare.com. 170734 IN AAAA 2400:cb00:2049:1::adf5:3b82

    Ang +noadditional pagpipilian ay hindi pinapagana ang karagdagang seksyon ng isang tugon.

    Ang huling seksyon ng output ng paghukay ay nagsasama ng mga istatistika tungkol sa query.

    ;; Query time: 58 msec;; SERVER: 192.168.1.1#53(192.168.1.1);; WHEN: Fri Oct 12 11:46:46 CEST 2018;; MSG SIZE rcvd: 212

    Maaari mong paganahin ang bahaging ito sa pagpipilian ng +nostats .

Pag-print Lamang ang Sagot

Sa karamihan ng mga kaso, nais mong makakuha lamang ng isang mabilis na sagot sa iyong query sa paghukay.

1. Kumuha ng isang Maikling Sagot

Upang makakuha ng isang maikling sagot sa iyong query, gamitin ang +short pagpipilian:

dig linux.org +short

104.18.59.123 104.18.58.123

Ang output ay isasama lamang ang mga IP address ng A record.

2. Kumuha ng isang Detalyadong Sagot

Para sa higit pang detalyadong sagot, patayin ang lahat ng mga resulta gamit ang +noall pagpipilian sa +noall at pagkatapos ay i-on lamang ang seksyon ng +answer pagpipilian na +answer .

dig linux.org +noall +answer

; <<>> DiG 9.13.3 <<>> linux.org +noall +answer;; global options: +cmd linux.org. 67 IN A 104.18.58.123 linux.org. 67 IN A 104.18.59.123

Query Tukoy na Pangalan ng Server

Bilang default, kung walang tinukoy na server ng pangalan, dig ng dig ang mga server na nakalista sa /etc/resolv.conf file.

Upang tukuyin ang isang server ng pangalan laban sa kung saan ang query ay naisakatuparan, gamitin ang simbolo ng ((at) na sinusundan ng pangalan ng IP server o hostname.

Halimbawa, upang linux.org ang server ng Google name (8.8.8.8) para sa impormasyon tungkol sa linux.org domain na gagamitin mo:

dig linux.org @8.8.8.8

; <<>> DiG 9.13.3 <<>> linux.org @8.8.8.8;; global options: +cmd;; Got answer:;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 39110;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1;; OPT PSEUDOSECTION:; EDNS: version: 0, flags:; udp: 512;; QUESTION SECTION:;linux.org. IN A;; ANSWER SECTION: linux.org. 299 IN A 104.18.58.123 linux.org. 299 IN A 104.18.59.123;; Query time: 54 msec;; SERVER: 8.8.8.8#53(8.8.8.8);; WHEN: Fri Oct 12 14:28:01 CEST 2018;; MSG SIZE rcvd: 70

Query ng isang Uri ng Record

Pinapayagan ka ng Dig na magawa ang anumang may-bisang query ng DNS sa pamamagitan ng pag-apid sa uri ng record sa dulo ng query. Sa sumusunod na seksyon, ipapakita namin sa iyo ang mga halimbawa kung paano maghanap para sa mga pinaka-karaniwang tala, tulad ng A (ang IP address), CNAME (canonical name), TXT (text record), MX (mail exchanger), at NS (mga server ng pangalan).

1. Querying Isang talaan

Upang makakuha ng isang listahan ng lahat ng address (es) para sa isang domain name, gamitin ang a pagpipilian:

dig +nocmd google.com a +noall +answer

google.com. 128 IN A 216.58.206.206

Tulad ng nalalaman mo, kung walang tinukoy na uri ng record ng DNS ay hihilingin sa isang record. Maaari ka ring mag-query sa talaan ng A nang hindi tinukoy ang a pagpipilian.

2. Mga tala sa Query Query

Upang mahanap ang pangalan ng domain ng cname gamitin ang pagpipilian sa cname :

dig +nocmd mail.google.com cname +noall +answer

mail.google.com. 553482 IN CNAME googlemail.l.google.com.

3. Mga tala sa pagsusulit ng Query

Gamitin ang pagpipilian ng txt upang makuha ang lahat ng mga talaan ng TXT para sa isang tukoy na domain:

dig +nocmd google.com txt +noall +answer

google.com. 300 IN TXT "facebook-domain-verification=22rm551cu4k0ab0bxsw536tlds4h95" google.com. 300 IN TXT "v=spf1 include:_spf.google.com ~all" google.com. 300 IN TXT "docusign=05958488-4752-4ef2-95eb-aa7ba8a3bd0e"

4. Mga tala sa MX ng Querying

Upang makakuha ng isang listahan ng lahat ng mga mail server para sa isang tukoy na domain gamitin ang pagpipilian ng mx :

dig +nocmd google.com mx +noall +answer

google.com. 494 IN MX 30 alt2.aspmx.l.google.com. google.com. 494 IN MX 10 aspmx.l.google.com. google.com. 494 IN MX 40 alt3.aspmx.l.google.com. google.com. 494 IN MX 50 alt4.aspmx.l.google.com. google.com. 494 IN MX 20 alt1.aspmx.l.google.com.

5. Mga talaan ng Querying NS

Upang mahanap ang mga autoritibong pangalan ng server para sa aming tukoy na domain gamitin ang opsyon ns :

dig +nocmd google.com ns +noall +answer

google.com. 84527 IN NS ns1.google.com. google.com. 84527 IN NS ns2.google.com. google.com. 84527 IN NS ns4.google.com. google.com. 84527 IN NS ns3.google.com.

6. Querying Lahat ng mga Rekord

Gumamit ng any pagpipilian upang makakuha ng isang listahan ng lahat ng mga tala ng DNS para sa isang tukoy na domain:

dig +nocmd google.com any +noall +answer

google.com. 299 IN A 216.58.212.14 google.com. 299 IN AAAA 2a00:1450:4017:804::200e google.com. 21599 IN NS ns2.google.com. google.com. 21599 IN NS ns1.google.com. google.com. 599 IN MX 30 alt2.aspmx.l.google.com. google.com. 21599 IN NS ns4.google.com. google.com. 599 IN MX 50 alt4.aspmx.l.google.com. google.com. 599 IN MX 20 alt1.aspmx.l.google.com. google.com. 299 IN TXT "docusign=05958488-4752-4ef2-95eb-aa7ba8a3bd0e" google.com. 21599 IN CAA 0 issue "pki.goog" google.com. 599 IN MX 40 alt3.aspmx.l.google.com. google.com. 3599 IN TXT "facebook-domain-verification=22rm551cu4k0ab0bxsw536tlds4h95" google.com. 21599 IN NS ns3.google.com. google.com. 599 IN MX 10 aspmx.l.google.com. google.com. 3599 IN TXT "v=spf1 include:_spf.google.com ~all" google.com. 59 IN SOA ns1.google.com. dns-admin.google.com. 216967258 900 900 1800 60

Baliktarin ang Paghahanap sa DNS

Upang tanungin ang hostname na nauugnay sa isang tukoy na IP address gamitin ang pagpipilian na -x .

Halimbawa, upang magsagawa ng isang reverse lookup sa 208.118.235.148 gagamitin mo:

dig -x 208.118.235.148 +noall +answer

Tulad ng nakikita mo mula sa output sa ibaba ng IP address 208.118.235.148 ay nauugnay sa hostname wildebeest.gnu.org .

; <<>> DiG 9.13.3 <<>> -x 208.118.235.148 +noall +answer;; global options: +cmd 148.235.118.208.in-addr.arpa. 245 IN PTR wildebeest.gnu.org.

Maramihang Mga Query

Sa mga sumusunod na halimbawa, hinihiling namin ang mga domain na nakalista sa file ng domain.

mga domain.txt

lxer.com linuxtoday.com tuxmachines.org

dig -f domains.txt +short

108.166.170.171 70.42.23.121 204.68.122.43

Ang.digrc File

Ang pag-uugali ng dig command ay maaaring kontrolado sa pamamagitan ng pag-set up ng mga pagpipilian sa bawat gumagamit sa ${HOME}/.digrc file.

Kung ang file ng .digrc ay naroroon sa direktoryo ng tahanan ng gumagamit, ang mga pagpipilian na tinukoy sa ito ay inilalapat bago ang mga argumento ng command line.

Halimbawa, kung nais mong ipakita lamang ang seksyon ng sagot, buksan ang iyong text editor at lumikha ng sumusunod na ~/.digrc file:

~ /.digrc

+nocmd +noall +answer

Konklusyon

dig ay isang tool na linya ng utos para sa pag-query sa impormasyon ng DNS at pag-aayos ng mga kaugnay na isyu sa DNS

maghukay ng terminal