Befehlszeilentool zum Abrufen von OUI-Herstellerinformationen von der MAC-Adresse?

13

Ich habe einige Tools gefunden, die die OUI-MAC-Adressanbieter-Datenbank auf meinem System zu aktualisieren scheinen , z. B. get-oui , airodump-ng-oui-update oder update-oui:

update-oui(8)                          OUI                         update-oui(8)

NAME
       update-oui - download new version of the OUI and IAB lists

SYNOPSIS
       update-oui

DESCRIPTION
       update-oui  fetches  the  current  version  of the OUI and IAB lists from
       http://standards.ieee.org/regauth/oui/index.shtml and installs it, if the
       installed versions is older than 5 days.

       This utility requires curl, wget or libwww-perl to be installed.

OPTIONS
       -q     Be quiet. Do not output messages.

       -f     Force the update, even if the file is newer than 5 days.

FILES
       /usr/share/misc/
              Directory holding symbolic links to oui.txt and iab.txt

Aber wenn ich in meinem Netzwerk nach IPs suche:

luis@Zarzamoro:~$ sudo netdiscover -i eth1

 92 Captured ARP Req/Rep packets, from 12 hosts.   Total size: 5520
 _____________________________________________________________________________
   IP            At MAC Address      Count  Len   MAC Vendor
 -----------------------------------------------------------------------------
 192.168.4.31    bc:f1:f2:12:b4:93    60    3600   Unknown vendor
 192.168.4.24    f0:db:e2:de:11:80    02    120   Unknown vendor
 192.168.4.242   00:1d:7e:9c:6e:fc    05    300   Cisco-Linksys, LLC
 192.168.4.243   00:1c:10:64:63:ac    05    300   Cisco-Linksys, LLC
 192.168.4.244   00:1c:10:64:5f:94    05    300   Cisco-Linksys, LLC
 192.168.4.1     d8:61:94:e5:0b:1d    05    300   Unknown vendor
 192.168.4.246   00:1a:70:2f:ab:4b    04    240   Cisco-Linksys, LLC
 192.168.4.10    84:11:9e:2b:1c:d6    01    060   Unknown vendor
 192.168.4.11    ec:1f:72:5d:42:d0    02    120   Unknown vendor
 192.168.4.245   00:1a:70:2f:aa:63    01    060   Cisco-Linksys, LLC
 192.168.4.248   00:1a:70:2f:aa:d1    01    060   Cisco-Linksys, LLC
 192.168.4.251   44:d9:e7:0a:0b:98    01    060   Unknown vendor

Solange es einige gemeldete MACs gibt Unknown vendor, möchte ich in einer OUI-Datenbank nach deren Informationen suchen.

Was ist die richtige Befehlszeilenmethode , um diese Suche durchzuführen ?
Vielleicht so etwas wie:

oui-info 44:d9:e7

Hinweis: Ich weiß, dass ich mit dem Webbrowser die ersten 3 Paare des MAC suchen kann, aber ich hätte gerne eine Befehlszeilenmethode, damit ich sie skripten oder per Remote Login (SSH) verwenden kann.

Sopalajo de Arrierez
quelle

Antworten:

2

Obwohl es eleganter geschrieben werden könnte, funktioniert das Folgende in Linux-Distributionen ohne Abhängigkeit von speziellen Paketen. Es analysiert die Ausgabe des IP - Befehls, isoliert den Anbieter Teil der MAC - Adresse in eine Variable , die schließlich ist grep ‚ed durch eine Online - Anbieter von DB - Präfixen.

#!/bin/bash

OUI=$(ip addr list|grep -w 'link'|awk '{print $2}'|grep -P '^(?!00:00:00)'| grep -P '^(?!fe80)' | tr -d ':' | head -c 6)

curl -sS "http://standards-oui.ieee.org/oui.txt" | grep -i "$OUI" | cut -d')' -f2 | tr -d '\t'

Mit ein wenig Kreativität können Sie dies anpassen, um es per ssh aus der Ferne auszuführen. Ich habe andere Vorschläge zur Identifizierung von Anbieterdetails dmidecodefür die Verwendung des Betriebssystem-Fingerabdrucks gesehen, habe jedoch beim Testen inkonsistente Ergebnisse mit diesem Tool festgestellt. Am Raspberry Pi dmidecodescheitert das total. HTH-

F1Linux
quelle
Dies ist meiner bescheidenen Meinung nach die beste Antwort, da hier keine (fast) installierten Tools erforderlich sind. Solange IEEE.Org auf dem neuesten Stand ist (sollte), muss es die beste Datenbank sein, auf die zugegriffen werden kann. Der einzige Nachteil ist die Notwendigkeit des Internets; kein großes Problem heutzutage.
Sopalajo de Arrierez
Es gab viele OUI-Online-Datenbanken, die von Privatpersonen / Organisationen betrieben wurden. Aber ich habe mich für ieee.org entschieden, weil das Risiko geringer war, dass es verschwindet oder der Link wechselt. Ich bin froh, dass ich dir helfen konnte
F1Linux
13

Ich glaube nicht, dass es ein automatisiertes Tool gibt, mit dem Sie Ihre Anforderungen erfüllen können. Sie können jedoch direkt an den Dateien oui.txt arbeiten.

Zunächst wird die heruntergeladene Datei identifiziert, zum Beispiel:

root@kalilloX:~# locate oui.txt
/var/lib/ieee-data/oui.txt

Suchen Sie dann nach der Zeichenfolge, die Sie interessiert. Sie müssen Folgendes entfernen :oder stattdessen einfügen -:

root@kalilloX:~# grep -i "44d9e7" /var/lib/ieee-data/oui.txt
44D9E7     (base 16)        Ubiquiti Networks, Inc.
LilloX
quelle
Und indirekte Methode, aber voll funktionsfähig und wahrscheinlich auf jedem * nix gültig, sogar auf einigen eingebetteten Geräten. Danke.
Sopalajo de Arrierez
1
Um die Bedienung zu vereinfachen, können Sie eine Funktion .bashrcwie folgt definieren: oui() { grep -i "$1" /var/lib/ieee-data/oui.txt; }und so verwendenoui 44D9E7
Aralox
3

Eine ähnliche Antwort wie bei LilloX, jedoch mit nMap (falls im System installiert):

luis@balanceador:~$ locate nmap-mac-prefixes
/usr/share/nmap/nmap-mac-prefixes
luis@balanceador:~$ grep 0024A5 -i /usr/share/nmap/nmap-mac-prefixes
0024A5 Buffalo

Angeblich mit jedem anderen Programm arbeiten, das OUI-Informationen speichert, wie airodump-ng-oui-update( oui.txtin diesem Fall zum Ablegen ), oder mehreren anderen:

  • /usr/share/btscanner/oui.txt
  • /usr/share/bluelog/oui.txt
  • /usr/share/ieee-data/oui.txt
  • /usr/share/golismero/thirdparty_libs/netaddr/eui/oui.txt
  • /usr/share/metasploit-framework/vendor/bundle/ruby/2.1.0/gems/packetfu-1.1.11/examples/oui.txt
  • /etc/unicornscan/oui.txt
  • /var/lib/ieee-data/oui.txt
Sopalajo de Arrierez
quelle
1

Sie können den tatsächlichen Anbieter abrufen, indem Sie eine Anforderung mit CURL an diese API senden:

curl -XGET "https://api.macaddress.io/v1?apiKey=at_2d31hlNQAO1PXZVTecL6yoVAxI8IW&output=vendor&search=bc:f1:f2:12:b4:93"

ODER

wget -qO- "https://api.macaddress.io/v1?apiKey=at_2d31hlNQAO1PXZVTecL6yoVAxI8IW&output=vendor&search=bc:f1:f2:12:b4:93"

Für die aufgelisteten unbekannten MAC-Adressen wurden die folgenden Ergebnisse zurückgegeben:

bc:f1:f2:12:b4:93 -> Cisco Systems, Inc
f0:db:e2:de:11:80 -> Apple, Inc
d8:61:94:e5:0b:1d -> Objetivos y Sevicios de Valor Añadido
84:11:9e:2b:1c:d6 -> Samsung Electronics Co, Ltd
ec:1f:72:5d:42:d0 -> Samsung Electro-Mechanics(Thailand)
44:d9:e7:0a:0b:98 -> Ubiquiti Networks Inc

Um den Service nutzen zu können, benötigen Sie einen kostenlosen apiKey, wenn Sie weniger als 1000 Anfragen pro Tag haben.

Dmitrii S
quelle
Eine praktische Methode. Dies scheint eine Site zu sein, die MAC-Identifizierungsdienste anbietet (siehe die Preise für eine hohe Anzahl von Anfragen unter macaddress.io/pricing ), und seit heute (Oktober 2018) scheinen API-Anfragen wie die in dieser Antwort beschriebene kostenlos zu sein . Vielen Dank, Dmitri S.
Sopalajo de Arrierez
0

Ich habe ein Skript zum Aktualisieren von OUI- und IAB-Dateien geschrieben. Hauptproblem ist, dass die Form der nmap-Dateien nicht die gleiche ist wie bei btscan oder arpwatch usw., sie haben oft unterschiedliche Formen (MAC-Adresse mit Doppelpunkten, mit Bindestrichen, ohne Begrenzer, Groß- und Kleinschreibung usw.) .

Sie können dieses Skript ausprobieren, es ist unter https://github.com/burningfog/refresh_oui gespeichert .

Bitte lesen Sie die Readme-Datei und geben Sie mir bei Fragen einen Hinweis per Mail. Wenn es andere Tools als die in github genannten gibt, geben Sie mir bitte den Pfad für die Oui-Datei und einige Zeilen aus dieser Datei an, damit ich mir dieses Formular ansehen kann.

Grüße brennender Nebel

brennender Nebel
quelle
-1
cat `locate nmap-mac-prefixes` | grep -i ^YOUR_OID_START
sjas
quelle
-2
#!/bin/bash

arp -an | egrep -v incomplete | while read line ; do mac=$( echo $line | awk -F' ' '{print $4}' | sed 's/:/-/g' | tr "[:lower:]" "[:upper:]" | cut -c 1-8 ) ; vendor=$( egrep "$mac" /usr/share/hwdata/oui.txt ) ; echo "$line : $vendor" ; done

Ausgabe:

? (192.168.88.36) at 60:03:08:a8:4e:86 [ether]  on eth0 : 60-03-08   (hex)              Apple, Inc.
? (192.168.88.38) at d8:8f:76:6f:59:0a [ether]  on eth0 : D8-8F-76   (hex)              Apple, Inc.
FabioM
quelle