alphasec
Bash / Unix protip 0005
in 𝕏

for i in {1..254}; do host x.x.x.$i|grep -v NXDOMAIN; done - szybki revdns recon danej sieci /24

tty1 · bash
$ for i in {1..254}; do host x.x.x.$i|grep -v NXDOMAIN; done
#Bash#RedTeam#Recon#OSINT

Powyższy oneliner sprawdzi odwrotną translację adresów DNS z zakresu x.x.x.1 - x.x.x.254, odsiewając adresy, dla których revDNS nie istnieje. Rozbijając go na mniejsze części:

Gdybyśmy chcieli sprawdzić sieć z maską /16, a więc zakres x.x.0.1 - x.x.255.254, potrzebowalibyśmy dwóch pętli:

for i in $(seq 0 255); do
    for j in `seq 1 254`; do
    host x.x.$i.$j | grep -v NXDOMAIN
    done
done

W tym przykładzie, zamiast wygenerować szereg liczb z wykorzystaniem {..} użyliśmy dwóch równoważnych konstrukcji $() oraz ``, będącymi tzw. command substitution, które powodują wstawienie wyniku polecenia w miejscu gdzie się znajdują. Samo narzędzie seq służy do generowania sekwencji liczb, np.:

  • seq 10 1 - liczby od 10 do 1
  • seq -w 0 0.5 3 - liczby od 0 do 3 ze skokiem co 0.5, dodatkowo uzupełniane zerami, żeby wizualnie miały taką samą szerokość

Jak to działa — krok po kroku

Rozłóżmy onelinera na czynniki pierwsze:

for i in {1..254}; do

pętla, w której do zmiennej $i zostaną przypisane liczby od 1 do 254

host x.x.x.x.$i

sprawdź odwrotny DNS dla kolejnego adresu IP

| grep -v NXDOMAIN

odrzućmy wszystkie linijki zawierające frazę NXDOMAIN co oznacza, że dany IP nie posiada revdnsa

; done

koniec pętli.

Przydatne linki

https://pl.wikipedia.org/wiki/Reverse_DNS czym jest w ogóle Reverse DNS web ↗
← poprzedni protip 0004 ••• Wszystkie protipy następny → protip 0006
// subskrybuj

Nowe protipy prosto na maila.

Mięsiste jednolinijkowce i triki z prawdziwych zleceń. Zero spamu, zero teorii. Wypisujesz się jednym kliknięciem.

wersja newslettera: