
ngrep ist wie GNU grep auf die Netzwerkebene angewendet. Es ist ein PCAP-basiertes Tool, mit dem Sie einen erweiterten regulären oder hexadezimalen Ausdruck angeben können, um mit den Daten-Payloads von Paketen abzugleichen. Es versteht viele Arten von Protokollen, einschließlich IPv4/6, TCP, UDP, ICMPv4/6, IGMP und Raw, über eine Vielzahl von Schnittstellentypen und versteht BPF-Filterlogik auf die gleiche Weise wie häufigere Paket-Sniffing-Tools wie tcpdump und snoop.
ngrep ist wie GNU grep, angewendet auf die Netzwerkebene. Es ist ein PCAP-basiertes Tool, mit dem Sie einen erweiterten regulären oder hexadezimalen Ausdruck angeben können, um mit Daten-Nutzlasten von Paketen abzugleichen. Es versteht viele Arten von Protokollen, darunter IPv4/6, TCP, UDP, ICMPv4/6, IGMP und Raw, über eine Vielzahl von Schnittstellentypen hinweg und versteht die BPF-Filterlogik auf die gleiche Weise wie gängigere Paket-Sniffing-Werkzeuge wie tcpdump und snoop.
-r Flag)-u angegeben wirdDLT_-Typ-Erkennung innerhalb von libpcap (z. B. )DLT_LINUX_SLLpcap_lookupdev-Veraltung)./configure --disable-tcpkill-d erlaubt nun Gerätenamen (z. B. \Device\...)delay_socket-Hacks zugunsten von Sleep()build.ps1)Der einfachste Weg, ngrep auszuführen, ist über Docker:
docker pull ghcr.io/jpr5/ngrep:latest
docker run --rm --net=host --cap-add=NET_RAW ghcr.io/jpr5/ngrep:latest -q 'GET|POST' tcp port 80
Siehe DOCKER für detaillierte Docker-Nutzungsanweisungen.
Laden Sie vorgefertigte Binärdateien von der Seite Releases herunter.
Siehe INSTALL für Build-Anweisungen.
ngrep wurde ursprünglich entwickelt, um:
Ebenso könnte es zur Sammlung von Klartext-Anmeldedaten verwendet werden, wie bei HTTP Basic Authentication, FTP- oder POP3-Authentifizierung. Wie alle nützlichen Werkzeuge kann es für Gutes und für Schlechtes verwendet werden.
Besuchen Sie EXAMPLES, um mehr zu erfahren, wie ngrep funktioniert und genutzt werden kann, um allerlei interessante Dinge zu sehen.
ngrep wurde umfassend auf viele Plattformen portiert, aber im Laufe der Zeit ließ der Zugang nach. Die folgende Liste ist die ursprüngliche Liste; für eine aktuelle Liste bestätigter funktionierender Plattformen siehe unsere autobuilds, die die gängigsten Betriebssysteme, Compiler-Toolchains und CPU-Architekturen umfasst.
Wenn Sie Hilfe benötigen, konstruktives Feedback haben oder einen Patch einreichen möchten, besuchen Sie bitte ngreps Projekt auf GitHub und nutzen Sie die dortigen Online-Tools. Dies hilft dem Autor, die verschiedenen Anfragen und Patches besser zu verwalten, damit nichts verloren geht oder übersehen wird (wie es in der Vergangenheit leider der Fall war).
Bitte sehen Sie CREDITS für eine teilweise Liste der vielen Menschen, die dazu beigetragen haben, ngrep zu dem zu machen, was es heute ist. Beachten Sie auch, dass ngrep unter einer einfachen BSD-ähnlichen Lizenz veröffentlicht wird, obwohl Sie je nach verwendeter Regex-Bibliothek entweder die GPL (GNU regex) oder BSD (PCRE2) erhalten.
Über die Jahrzehnte (!) wurde ngrep de facto in viele gängige Distributionen aufgenommen, von denen einige dedizierte Paketbetreuer haben. Viele von ihnen haben hilfreich von Benutzern ihrer Distributionen gemeldete Probleme bearbeitet und sogar Patches für ngrep erstellt – aber ich werde selten davon informiert. Alle paar Jahre muss ich aufspüren, welche Fehlerberichte und Patches existieren könnten, oft in obskuren anbieterspezifischen Tracking-Systemen, um sie zum Nutzen aller einarbeiten zu können. Und manchmal finde ich nicht alle.
Wenn Sie ein Paketbetreuer für ein Betriebssystem oder eine Distribution sind und einen Fehlerbericht bearbeiten oder einen Patch für ngrep schreiben, setzen Sie mich bitte zumindest in CC, damit ich das Problem verfolgen (und möglicherweise lösen) kann. Idealerweise senden Sie mir einen Link zu einem Patch oder Pull Request, damit ich ihn überprüfen und einbinden kann.
So wie ich es sehe, ist es am Ende des Tages mein Code, also meine Verantwortung, aber ich kann nicht überall sein, um alles zu sehen. Ich brauche Ihre Hilfe, um einen guten Job zu machen.
Vielen Dank, aufrichtig, für alles, was Sie getan haben und alles, was Sie tun werden. 🙏