NBTScan. Scanner de retea pentru nume NetBIOS.

Descarcati sursele NBTscan | Descarcati executabilele NBTscan pentru Win32 | Versiunea anterioara


Informatii generale

NBTscan este un program pentru scanarea retelelor IP pentru informatii de nume NetBIOS. NetBIOS trimite interogari la fiecare adresa din domeniul solicitat si afiseaza informatia primita intr-un format lizibil. Pentru fiecare gazada care a trimis un raspuns afiseaza adresa IP, numele NetBIOS al calculatorului, utilizatorul inregistrat si adresa MAC.

Versiunea 1.5 este disponibila acum. Vezi Jurnal modificari pentru modificarile de la versiunea anterioara.

NBTscan se compileaza si ruleaza atat pe Unix cat si pe Windows. L-am testat pe Windows NT 4.0, Windows 2000, FreeBSD 4.3, OpenBSD 2.8 si RedHat Linux 7.1 si 7.3. Ar trebui sa se compileze si ruleze si pe Solaris si alte distributii Linux deasemenea.

Steve Coleman (Steve (punct) Coleman (at) jhuapl (punct) edu) a portat versiuni anterioare ale NBTscan pe Solaris, HP-UX and OSF/1 si a remediat cateva bug-uri. M-a anuntat ca NBTscan ruleaza deasemenea pe IRIX/SGI cu probleme minore. Am fost anuntat deasemenea ca NBTscan ruleaza pe AIX (Antonio Dell'elce) si SunOS 4.1.3_U1 (Joe Cline). Mohammad A. Haque (mhaque (at) haque (dot) net) a portat nbtscan pe Darwin.

Acest program este urmasul unui scrip perl cu acelasi nume si face in principiu acelasi lucru, fiind mult mai rapid. NBTscan afiseaza un rezultat ca si urmatorul:

IP address       NetBIOS Name     Server    User             MAC address
------------------------------------------------------------------------------
192.168.1.2      MYCOMPUTER                 JDOE             00-a0-c9-12-34-56
192.168.1.5      WIN98COMP        <server>  RROE             00-a0-c9-78-90-00
192.168.1.123    DPTSERVER        <server>  ADMINISTRATOR    08-00-09-12-34-56

Prima coloana reprezinta adresele IP ale gazdelor care au raspuns. A doua coloana este numele calculatorului. A treia coloana arata posibilitatea calculatorului de a partaja fisiere sau imprimante. Pentru calculatoarele cu NT aceasta inseamna ca un Serviciu Server ruleaza pe acel calculator. Pentru Windows 95 inseamna bifarea casutei "Vreaau sa permit accesul la fisiere" sau "Vreau sa permit tiparirea la imprimanta/ele mele" (din Control Panel/Network/File and Print Sharing). Deobicei aceasta inseamna si partajarea unor fisiere. A patra coloana e numele utilizatorului. Daca nimeni nu e logat la acel calculator atunci este acelasi cu cel al calculatorului. Ultima coloana este adresa MAC.

Daca se foloseste optiunea -v NBTscan afiseaza intreaga lista de nume NetBIOS pentru fiecare adresa care a raspuns. Afisajul va fi similar cu:

Tebel cu numele NetBIOS pentru gazda 192.168.1.123:

Name             Service          Type
----------------------------------------
DPTSERVER        <00>             UNIQUE
DPTSERVER        <20>             UNIQUE
DEPARTMENT       <00>             GROUP
DEPARTMENT       <1c>             GROUP
DEPARTMENT       <1b>             UNIQUE
DEPARTMENT       <1e>             GROUP
DPTSERVER        <03>             UNIQUE
DEPARTMENT       <1d>             UNIQUE
??__MSBROWSE__?  <01>             GROUP
INet~Services    <1c>             GROUP
IS~DPTSERVER     <00>             UNIQUE
DPTSERVER        <01>             UNIQUE

Adapter address: 00-a0-c9-12-34-56
----------------------------------------
  

FAQ

De unde pot descarca NBTscan?

Descarcati de la http://www.inetcat.org/software/nbtscan.html

Este codul sursa disponibil ?

Da. Aceiasi adresa ca mai sus.

NBTscan afiseaza corect calculatoarele cu Windows dar nu afiseaza calculatoarele cu Unix sau routerele. De ce ?

Asa si trebuie sa functioneze. NBTscan foloseste NetBIOS pentru a scana si NetBIOS este implementat doar de Windows (si unele aplicatii software de Unix ca de exemplu Samba)

Primesc unele mesaje de eroare pe un anumit sistem de operare cand compilez sau rulez NBTscan. Ce pot sa fac ?

Daca ai o eroare de compilare nu te pot ajuta prea mult. Nu am toate versiunile din orice sistem de operare existent si deci nu voi putea reproduce problema ta. Incearca sa-ti dai seama ce e gresit, rezolva si trimite-mi codul. :)

Daca obtii rezultate neasteptate la rularea NBTscan si crezi ca e un bug, trimite-mi un email . Descrie mediul in care a aparut (sistem de operare, versiune a nbtscan, cat de mare e reteaua pe care o scanezi, sunt firewall-uri in retea) si trimite-mi un captura a ecranului cu continutul pachetelor daca e posibil. Comparand rezultatele obtinute de nbtscan cu cele ale nbtstat -a (utilitar Windows) ajuta deasemena in rezolvarea unor probleme. Daca obtii aceleasi rezultate de la nbtscan si nbtstat, atunci probabil inseamna ca e o eroare in configurarea retelei si nu in nbtscan.

Exista documentatie in Rusa ?

Nu. Sunt prea lenes pentru a traduce. Daca sunteti dispus sa traduceti documentatia in Rusa sau orice alta limba, sunteti mai mult decat bineveniti.

Cum stochez rezultatele NBTscan intr-un fisier?

La fel ca si cu alte programe:

nbtscan 123.45.67.89 > numefisier

Functioneaza atat pe Unix si Windows.

Cum fac ca afisajul NBTscan sa sa opreasca dupa fiecare ecran complet cu informatie?

La fel ca si cu alte programe:

 nbtscan 123.45.67.89 | more 

Functioneaza atat pe Unix si Windows.

Cum export rezultatele obinute de NBTscan intr-un fisier Excel?

Ruland nbtscan cu "-s ," ca optiune (afisaj pentru manipulare cu script-uri, folositi virgula ca separator) si deschide-ti fisierul rezultat in Excel.

De ce primesc mesajele de eroare "Connection reset by peer" pe Windows 2000?

NBTscan foloseste portul 137 UDP pentu a trimite interogarile. Daca portul e inchis la calculatoarele destinatie raspunsul ICMP va fi mesajul "Port unreachable". Majoritate sistemelor de operare vor ignora acest mesaj. Windows 2000 trimite aplicatiei mesajul de eroare "Connection reset by peer". Ignora-l.

Exista vreun GUI pentru nbtscan?

Da. Exista cateva GUI-uri pe care le-am primit de la terte persoane dealungul timpului. Avertisment: Am primit aceste programe de la diverse persoane. Nu le-am testat si nu am citit codul sursa. Nu stiu daca functioneaza si nici ce fac cand functioneaza, nu dati vina pe mine daca va vor distruge calculatorul. Ati fost avertizati.

De ce nbtscan nu scaneaza dupa share-uri? Vei adauga scanare de share-uri la nbtscan?

Nu. NBTscan foloseste UDP pentru ceea ce face. Aceasta il face foarte rapid. Scanarea share-urilor necesita TCP. In primul rand aceasta ar face nbtscan mai lent. Deasemenea adaugarea scanarii share-urilor ar necesita adaugarea unei cantitati mari de cod la nbtscan. Exista o multime de scanere de share-uri, deci nu vad nici un motiv sa duplic munca facuta.

De ce primesc adresa MAC 00-00-00-00-00-00 cand scanez un calculator cu Samba?

Deoarece acesta e adresa transmisa de Samba ca raspuns la interogare. Nbtscan afiseaza doar ce primeste.

Utilizare

NBTscan este un program in linie de comanda. Trebuie sa folositi cel putin un argument - domeniu de adrese in una din cele trei forme:

xxx.xxx.xxx.xxx NOtatie zecimala cu punct a adreselor IP. Exemplu: 192.168.1.1.
xxx.xxx.xxx.xxx/xx Adresa retea si masca de subretea. Exemplu: 192.168.1.0/24
xxx.xxx.xxx.xxx-xxx Domeniu de adrese. Exemplu: 192.168.1.1-127. Aceasta va scana toate de la 192.168.1.1 la 192.168.1.127.

Deasemena intelege urmatoarele optiuni:

>nbtscan -f my_ips.txt <afisajul depinde si de alte optiuni>
Optiune Inteles Exemplu de folosire
-v Afisaj detaliat. Afiseaza toate numele primite de la fiecare gazda
>nbtscan -v 192.168.1.123
Tabela de nume NetBIOS pentru gazda 192.168.1.123:

Name             Service          Type
----------------------------------------
DPTSERVER        <00>             UNIQUE
DPTSERVER        <20>             UNIQUE
DEPARTMENT       <00>             GROUP
DPTSERVER        <03>             UNIQUE
DPTSERVER        <01>             UNIQUE

Adapter address: 00-a0-c9-12-34-56
----------------------------------------

-d afiseaza pachete. Afiseaza intregul continut al pachetelor. Nu poate fi folosit cu optiunile -v, -s or -h.
>nbtscan -d 192.168.1.123

Packet dump for Host 192.186.1.2:

Transaction ID: 0x02e9 (745)
Flags: 0x8400 (33792)
Question count: 0x0000 (0)
Answer count: 0x0001 (1)
Name service count: 0x0000 (0)
Additional record count: 0x0000 (0)
Question name:  CKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
Question type: 0x0021 (33)
Question class: 0x0001 (1)
Time to live: 0x00000000 (0)
Rdata length: 0x0089 (137)
Number of names: 0x05 (5)
<skipped lots of data>
       
-e Formatul afisari ca in /etc/hosts .
> ./nbtscan -e 192.168.75.0/28
192.168.75.2    M3I4W6        
192.168.75.3    BOCKSTAEL     
192.168.75.4    PCROGER       
192.168.75.6    R392900055    
192.168.75.12   SONY          
192.168.75.13   DSNRVTWF      
192.168.75.14   G8F8N7        
192.168.75.15   VAIO          

    
-l Formatul afisarii ca in lmhosts .
> ./nbtscan -e 192.168.75.0/28
192.168.75.2    M3I4W6       #PRE 
192.168.75.3    BOCKSTAEL    #PRE 
192.168.75.4    PCROGER      #PRE 
192.168.75.6    R392900055   #PRE
192.168.75.12   SONY         #PRE 
192.168.75.13   DSNRVTWF     #PRE 
192.168.75.14   G8F8N7       #PRE
192.168.75.15   VAIO         #PRE 

    
-t interval asteapta interval secunde pentru raspuns. Implicit 1.
>nbtscan -d 192.168.1.123
<afisajul depinde de alte optiuni>
      
-b latime Limitare banda. Incetineste folosirea pachetelor astfel incat foloseste maxim latime bps. Folositor pentru legaturile incete unde interogarile nu vor fi ignorate.
>nbtscan -b 28800 192.168.1.123
<afisajul depinde de alte optiuni>
      
-r foloseste portul 137 pentru scanari. Doar calculatoarele cu Win95 raspund la acesta. Trebuie sa fiti root pe Unix pentru a folosi aceasta optiune.
>nbtscan -r 192.168.1.123
<afisajul depinde de alte optiuni>
      
-q inhiba afisarea mesajelor de eroare
>nbtscan -q 192.168.1.123
<afisajul depinde de alte optiuni>
      
-s separator Afisaj formatat pentru prelucrare cu Script-uri. Nu afiseaza capul de tabel si antetul inregistrarilor, separate de separator.
>nbtscan -s : 192.168.1.1-24
192.168.1.1:DIRDY-BIRDY   :<server>:JOED          :00-a0-c9-12-34-56
192.168.1.4:MIGHTY        :<server<:JPSMITH       :00-aa-00-78-90-12
192.168.1.5:BUGS-BUNNY    :<server<:OUR_ADMIN     :00-aa-00-34-56-78
192.168.1.19:DEFENDER      :<server<:PETERA       :00-60-b0-90-12-34


>nbtscan -s : -v 192.168.1.1
194.186.12.236:DIRDY-BIRDY    :00U
194.186.12.236:COMPANY__COM   :00G
194.186.12.236:DIRDY-BIRDY    :20U
194.186.12.236:DIRDY-BIRDY    :03U
194.186.12.236:COMPANY__COM   :1eG
194.186.12.236:JOED           :03U
194.186.12.236:MAC:00-a0-c9-12-34-56
      
-h Afiseaza numele serviciilor. Poate fi folosit doar cu optiunea -v.
>nbtscan -s : -h -v 192.168.1.1
194.186.12.236:DIRDY-BIRDY    :Workstation Service
194.186.12.236:COMPANY__COM   :Domain Name
194.186.12.236:DIRDY-BIRDY    :File Server Service
194.186.12.236:DIRDY-BIRDY    :Messenger Service
194.186.12.236:COMPANY__COM   :Browser Service Elections
194.186.12.236:JOED           :Messenger Service
194.186.12.236:MAC:00-a0-c9-12-34-56
      
-m retransmiteri Stabileste numarul de retrasmiteri. Implicit 0.
>nbtscan -m 2 192.168.1.123
<afisajul depinde de alte optiuni>
      
-f fisier Adresele IP care urmeaza sa fie scanate sunt preluate din fisierul cu numele fisier.

Instalare

Instalare din binarele pentru Win32

  1. Descarca arhiva zip
  2. Extrage fisierele din ea
  3. Copiaza nbtscan.exe si cygwin1.dll intr-un director din PATH, ca de exemplu winnt/system32
  4. Gata. Acum poti rula nbtscan de la command prompt.

Instalarea din surse pe Windows

  1. Descarca si instaleaza Cygwin de lahttp://sources.redhat.com/cygwin/
  2. Porneste shell-ul Cygwin si continua ca la instalrea pe Unix

Instalarea din surse pe Unix

  1. Extrage fisierele din arhiva cu Ungzip si untar
  2. Executa scriptul ./configure
  3. Executa make si apoi make install
  4. Gata.

Versiunea Perl a NBTscan

NBTscan a fost prima data scris in Perl. Este mult mai lent decat versiunea in C, si are mai putine optiuni, dar are si un avantaj: scripturile Perl pe Windows pot primi raspunsuri de la Windows 95 trimise pe portul 137. Deci daca chiar trebuie sa scanezi calculatoare cu Windows 95 de pe Windows poti descarca si folosi Perl NBTscan. Exista deasemenea IpInfo (un script Perl deasemenea) care ruleaza deasemenea pe NT si Unix, si care ofera informatii suplimentare ca de exemplu (numele DNS al calculatorului). A fost creat de Steve Coleman.

Buguri, commentari, etc.

Poti trimite buguri la autor. (hey, ala sunt eu) alla (at) inetcat (punct) org. Nu promit sa le rezolv, dar s-ar putea sa le rezolv. Voi aprecia deasemenea comentarii si sugestii. Daca cineva adauga optiuni programului sa-mi trimita o copie sau un patch.

Jurnal de modificari

Versiunea 1.5.1 - Iunie 2003

Versiunea 1.5 - Mai 2002

Versiunea 1.0.3 - Februarie 2002

Versiunea 1.0.2 - Martie 30, 2000

Versiunea 1.0.1 - Mai 5, 1999


Descarca sursele NBTscan | Descarca binarele NBTscan pentru Win32 | Versiunea anterioara