Tag 7 OSCP | Textsuche und -manipulation

Reading Time: ( Word Count: )

December 26, 2020
Nextdoorsec-course

Intro

Hallo, liebe Hackerfreunde, obwohl wir nicht viel mehr getan haben, als nur die Befehle zu behandeln, ist dies ein notwendiger Schritt, bevor wir mit dem Hacken beginnen. Ich habe anfangs versucht, mit Youtube-Tutorials zu “hacken”, aber wenn man an den Punkt kommt, dass etwas nicht funktioniert und man es nicht sofort lösen kann, wird es frustrierend. Um also echte Hacker und keine Skript-Kiddies zu werden, müssen wir wissen, wie man Fehler behebt und bestimmte Tools einsetzt, die uns auf lange Sicht das Leben erleichtern. Und verlassen Sie sich weniger auf Foren, Tipps und Tricks von anderen.

Heute werden wir vier Befehle behandeln: grep, sed, cut und awk. Diese Befehle werden wir ziemlich oft verwenden, wenn wir mit Textdateien arbeiten und sie auf eine bestimmte Weise aussehen lassen, bevor wir sie an andere Werkzeuge oder Befehle weitergeben. Oder um große Protokolle für Menschen lesbar zu machen und darin zu suchen.

 

Grep

Beginnen wir mit dem populärsten, grep. Grep steht für Global Regular Expression Print.

Grep sucht nach Mustern in Textdateien, genauer gesagt nach regulären Ausdrücken, und gibt jede Zeile, die eine Übereinstimmung enthält, auf der Standardausgabe aus.

┌──(kali㉿kali)-[~] └─$ grep kali /etc/passwd kali:x:1000:1000:Kali,,,:/home/kali:/usr/bin/zsh
┌──(kali㉿kali)-[~] └─$ grep Kali /etc/passwd kali:x:1000:1000:Kali,,,:/home/kali:/usr/bin/zsh
┌──(kali㉿kali)-[~] └─$ grep -i kali /etc/passwd kali:x:1000:1000:Kali,,,:/home/kali:/usr/bin/zsh

 

Oben haben wir nach dem Wort“kali” in der Datei“passwd” gesucht. Grep unterscheidet standardmäßig zwischen Groß- und Kleinschreibung und fand daher nur zwei Ergebnisse und gab die Zeile aus, die sie enthielt. Mit der Option“-i” wurden drei Ergebnisse gefunden, die“Kali” mit einem Großbuchstaben enthielten.

Ein weiteres nützliches Beispiel ist die Suche in allen Dateien im aktuellen Verzeichnis. Hierfür verwenden wir ein Sternchen(*) nach dem Suchmuster.

Wir können auch rekursiv suchen, d.h. alle Dateien in jedem Verzeichnis nach der Zeichenfolge “kali” mit der Option“-r” lesen.

Das letzte Beispiel zeigt, wie man mit der Option“-x” den genauen Suchbegriff ausgibt.

┌──(kali㉿kali)-[~] └─$ grep -i kali * example1.txt:kali ist mein Lieblingsbetriebssystem example2.txt:Das am meisten verwendete System für Pentesting ist Kali example3.txt:Ich liebe kali
┌──(kali㉿kali)-[~] └─$ grep -r kali etc/ etc/theHarvester/names_small.txt:kalinovsky-k etc/theHarvester/names_small.txt:kalithies etc/theHarvester/names_small.txt:sayasukalirik etc/theHarvester/names_small.txt:chakali etc/theHarvester/names_small.txt:kalintv6 ...
┌──(kali㉿kali)-[~] └─$ grep -r -x kali etc/ etc/theHarvester/dns-big.txt:kali etc/hostname:kali

 

 

Sed

Sed steht für Stream Editor und kann Funktionen wie Suchen, Finden und Ersetzen, Einfügen oder Löschen in Textdateien ausführen. Wird am häufigsten zum Suchen und Ersetzen verwendet.

Standardmäßig ersetzt der sed-Befehl das erste Vorkommen des Musters in jeder Zeile und nicht das zweite, dritte…Vorkommen in der Zeile, wie unten zu sehen.

Durch Hinzufügen der Option“g“, die für global steht, ersetzen wir alle Vorkommen. Wenn Sie nur das erste, zweite oder dritte Vorkommen des Musters ersetzen wollen, verwenden Sie stattdessen 1, 2 oder 3.

Sed ist ein mächtiger Befehl, mit dem wir viel mehr machen können als mit grep. Wir werden sie später in der Praxis genauer untersuchen.

┌──(kali㉿kali)-[~] └─$ cat kali.txt ubuntu ist ein sehr leistungsfähiges Betriebssystem für Pentester, ubuntu ist Leben, ubuntu ist alles.
┌──(kali㉿kali)-[~] └─$ cat kali.txt | sed 's/ubuntu/kali/' Kali ist ein sehr leistungsfähiges Betriebssystem für Pentester, Ubuntu ist das Leben, Ubuntu ist alles.
┌──(kali㉿kali)-[~] └─$ cat kali.txt | sed 's/ubuntu/kali/g' kali ist ein sehr mächtiges Betriebssystem für Pentester, kali ist Leben, kali ist alles.

 

 

Schnitt

Der Befehl cut dient dazu, einen Textabschnitt aus einer Zeile auszuschneiden und auf der Standardausgabe auszugeben. Mit Cut können Teile einer Zeile byteweise, zeichenweise und feldweise ausgeschnitten werden .

Die am häufigsten verwendeten Schalter sind“-f” für die Feldnummer, die wir ausschneiden, und“-d” für das Feldbegrenzungszeichen.

┌──(kali㉿kali)-[~] └─$ cat kali2.txt Ich habe gehört, dass Hacker Hobbys haben, z. B. Schlösser knacken, HackNet, OverTheWire usw.
┌──(kali㉿kali)-[~] └─$ cat kali2.txt | cut -d "," -f1 Ich habe gehört, Hacker haben Hobbys
┌──(kali㉿kali)-[~] └─$ cat kali2.txt | cut -d "," -f3 HackNet

 

Der Befehl cat wird an die Ausgabe von cutübergeben, das das angegebene Feld mit “, als Begrenzungszeichen ausgibt.

Awk

Awk” ist eine Skriptsprache für die fortgeschrittene Textverarbeitung auf der Kommandozeile, die hauptsächlich als Berichts- und Analysewerkzeug verwendet wird. Man kann sagen, dass “awk” die erweiterte Version des Befehls“cut” ist.

Standardmäßig ist das Feldbegrenzungszeichen ein Leerzeichen. Anders als bei “cut” können wir mehr als ein einzelnes Zeichen als Feldtrennzeichen definieren. Machen wir ein paar Beispiele.

┌──(kali㉿kali)-[~] └─$ date | awk '{print $3,$2,$4}' Dec 26 2020
┌──(kali㉿kali)-[~] └─$ echo "How::are::you?" | -F "::" '{print $1,$2,$3}' Wie geht es Ihnen?
┌──(kali㉿kali)-[~] └─$ echo "Wie=:=:sind=:=:Sie?" | -F "=:=:" '{print $1,$2,$3}' Wie geht es Ihnen?
Aydan Arabadzha

Aydan Arabadzha

Author

Aydan, a cybersecurity ace and AI visionary, thrives on the frontlines of offensive security. His passion birthed NextdoorSec, a groundbreaking cybersecurity firm. A relentless pioneer, Aydan is persistently pushing boundaries, shaping the future of the digital world one byte at a time.

Other interesting articles

Automated vs Manual Penetration Testing

Automated vs Manual Penetration Testing

Pentesting is largely divided into two methodologies: Automated vs Manual Penetration Testing. Both have ...
8 Steps in Penetration Testing You Should Know

8 Steps in Penetration Testing You Should Know

Mastering the art of penetration testing has become a critical ability for security experts to combat cyber ...
Spear Phishing vs Whaling: What is the Difference

Spear Phishing vs Whaling: What is the Difference

Spear phishing is a particularly devious type of phishing assault in which the individual targeted plays a ...
0 Comments

Submit a Comment

Your email address will not be published. Required fields are marked *