Startpagina > Tekstverwerking en zoeken > strings

strings: Tekstreeksen extraheren uit binaire bestanden

Het `strings`-commando is een hulpmiddel om leesbare tekstreeksen te extraheren uit binaire bestanden (zoals uitvoerbare bestanden, bibliotheken, enz.). Het is handig voor het debuggen van programma's, het analyseren van malware of het snel controleren van de inhoud van onbekende bestanden.

Overzicht

Binaire bestanden bestaan uit code van nullen en enen die direct door de computer worden uitgevoerd. Wanneer je ze opent met een gewone teksteditor, lijken ze onleesbaar. Het `strings`-commando zoekt in deze binaire bestanden naar vier of meer opeenvolgende afdrukbare tekens en extraheert deze als tekst. Hiermee kun je nuttige informatie achterhalen die in het binaire bestand is opgenomen, zoals foutmeldingen, bestandspaden, URL's en configuratiewaarden.

Belangrijkste kenmerken

De belangrijkste kenmerken van het `strings`-commando zijn:

  • Extraheert leesbare tekstreeksen uit binaire bestanden.
  • Zoekt standaard naar vier of meer opeenvolgende afdrukbare tekens.
  • Ondersteunt verschillende tekenencoderingen (ASCII, UTF-16, enz.).
  • Handig voor het identificeren van bibliotheeknamen of configuratie-informatie die door een programma wordt gebruikt.

Toepassingsgebieden van strings

strings kan worden gebruikt in diverse gebieden, verder dan alleen het controleren van bestanden.

  • Malware-analyse: Extraheert informatie zoals C&C-serveradressen, bestandsnamen en API-aanroepen uit malware-binaries.
  • Debuggen: Vindt foutmeldingen of debug-strings in uitvoerbare bestanden om problemen op te lossen.
  • Analyse van onbekende bestanden: Wanneer de bestandsextensie onduidelijk is, gebruik je strings om de interne tekst te controleren en de aard van het bestand te schatten.

Belangrijkste opties

De belangrijkste opties van het `strings`-commando zijn gegroepeerd op doel.

1) Extractie-opties

2) Hulp

Gegenereerde opdracht:

Probeer de opdrachtcombinaties.

Uitleg:

`strings` Voer het commando uit.

Combineer deze opties en voer de opdracht virtueel uit met de AI.

Gebruiksvoorbeelden

Leer de functionaliteit van het `strings`-commando aan de hand van diverse gebruiksvoorbeelden.

Basisreeksen extraheren uit een binair bestand

strings /usr/bin/top

Extraheert tekenreeksen met de standaardinstelling (4 tekens of meer) uit het binaire bestand `/usr/bin/top`.

Alleen langere reeksen extraheren

strings -n 8 /usr/bin/top

Gebruik de `-n` optie om alleen tekenreeksen van 8 tekens of langer te extraheren.

Tekenreeksen en hexadecimale offset samen uitvoeren

strings -t x /usr/bin/top

Met de `-t x` optie wordt de hexadecimale offset waar elke tekenreeks in het bestand begint, samen uitgevoerd. Dit is nuttig bij binaire analyse.

Gebruik met pipe (|)

strings /usr/bin/top | grep error

Extraheert en controleert alleen tekenreeksen die 'error' bevatten uit het bestand `/usr/bin/top`.

UTF-16 gecodeerde tekenreeksen extraheren

strings -e l /path/to/binary

Gebruik de `-e` optie om UTF-16 gecodeerde tekenreeksen te extraheren. `l` staat voor little-endian, `b` voor big-endian.

Installatie

strings maakt deel uit van het `binutils`-pakket en is standaard inbegrepen bij de meeste Linux-distributies. Er is geen aparte installatie nodig.

Debian/Ubuntu

sudo apt update
sudo apt install -y binutils

RHEL/CentOS/Fedora

sudo dnf install -y binutils

Tips & Waarschuwingen

Hier zijn enkele belangrijke overwegingen bij het gebruik van het `strings`-commando.

Tips

  • `strings` biedt veel schonere en nuttigere informatie dan `cat` op binaire bestanden. `cat` kan de terminal beschadigen door onbewerkte binaire inhoud uit te voeren.
  • De geëxtraheerde tekenreeksen kunnen regeleinden of spaties bevatten, dus door ze te combineren met tools zoals `grep` of `awk` via een pipe, kunnen ze nog nuttiger worden verwerkt.

gerelateerde commando's

Functional vergelijkbare of vaak samen gebruikte commando's.


Hétzelfde categoriecommando