• Passa al contenuto principale
  • Passa alla barra laterale primaria

Consulenti ICT

Professionisti e consulenti ICT

  • Home
  • News
    • News Generali
    • News Tecniche
    • News Pubblica Amministrazione
    • News Legali
  • Comunicazioni di servizio
  • Iniziative
  • PAFlow
  • Consigli per lavorare
  • Informatica Forense
Home » Grep e Strings due giganti di Linux

Grep e Strings due giganti di Linux

Il tempo libero serve anche a sperimentare e quando si ha la passione per la computer forensics, son dolori…

Tramite Nigilant32 (presente nella parte Live di CAINE 1.5) faccio l’immagine della Ram del mio PC, mentre è in uso, e la salvo sul file RAM.IMG.

ram.img – dump della mia ram 1.3Gb

Tramite editor esadecimale, vedo che tra le tante stringhe, contenute nel file, ne prendo una a casaccio per fare il mio test, la stringa è “awatarami“.

Cerco con strings e il parametro -t d (che mi genera anche l’offset in decimale) ottenendo:

strings -t d ram.img | less
33593  Skype z awatarami

Quindi segno l’offset come: 33593

Poi cerco con grep ed i parametri
-i ignora il maiuscolo/minuscolo;
-a tratta il file binario come se fosse testuale;
-b stampa il byte offset;
-o Mostra solo la parte di linea che coincide con la stringa cercata;

grep -iabo awatarami ram.img
33593:awatarami

Passo all’uso di xxd (editor esadecimale da riga di comando) e con -s lo faccio partire dall’offset trovato:

xxd -s 33593 ram.img | less
08339: 2053 6b79 7065 207a 2061 7761 7461 7261   Skype z awatara
08349: 6d69 204b 6c6f 6e69 6573 2e3c 6272 2f3e  mi Klonies.

08359: 3c61 2068 7265 663d 2273 6b79 7065 3a3f 
08389: 5374 77c3 b372 7a20 4b6c 6f6e 6965 3c2f  Stw..rz Klonie08399: 613e 0050 6f6b 61c5 bc20 c59b 7769 6174  a>.Poka.. ..wiat
083a9: 7520 7377 c3b3 6a20 5765 654d 6565 2e3c  u sw..j WeeMee.<

Ma su questi due strumenti NON ho finito di lavorarci, quindi, armato di cronometro ho fatto questo esperimento:

grep -iaob mustafa /cygdrive/c/immaginidd/barbuto.dd
tempo: 52 secondi e 50 centesimi – offset corretto 113917010

$ strings -t d /cygdrive/c/immaginidd/barbuto.dd | grep -i mustafa
113917010 tuo fratello Mustafa
tempo: 29 secondi e 84 centesimi – offset corretto 113917010

Insomma strings in pipe con grep è molto più veloce (il 51% in più).

Una spiegazione c’è, che fa capire la potenza dell’operatore “pipe” (|) e di Linux.

Le ragioni della lentezza sono molteplici, ma una su tutte:

strings ha un algoritmo infinitamente più semplice e veloce di grep, e la quantità di dati che estrae è esigua, per cui il secondo grep, il cui input è generato da strings, ha molto meno input da esaminare.

Per avere conferma di ciò, basta mandare l’output di strings su un file, e vedere che è immensamente più piccolo del file intero su cui strings ha lavorato.

inoltre ci sono altre ragioni, fra cui il fatto che grep è costruito per cercare in file di testo, suddiviso in righe, e con un set di caratteri ben definito, e passsandogli un binario, come appunto un’immagine dd, non è che lo aiuti molto.

Strings invece produce un output molto vicino a quello su cui grep offre le prestazioni migliori.

In sostanza, strings estrae le stringhe da un file binario e passa il suo output in pipe a grep, che opererà la ricerca della parola “mustafa”, su un output testuale e ridotto, sfruttando al massimo la sua potenza.

La stessa sperimentazione la si può fare usando queste immagini.

Interazioni del lettore

Lascia un commento Annulla risposta

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Barra laterale primaria

Articoli recenti

  • Cyber security: come affrontare la sicurezza nelle aziende ICT 10 Novembre 2022
  • Anche la Regione Abruzzo comincia a pensare al software libero 29 Dicembre 2009
  • Utenti e permessi su Linux 27 Dicembre 2009
  • Tasksel 25 Dicembre 2009
  • Prorogato albo pretorio on-line: nuovo termine 1 luglio 2010 20 Dicembre 2009
  • L’avvocato risponde 18 Dicembre 2009
  • Precisazioni del Garante per AdS 15 Dicembre 2009
  • Attenti alle impostazioni di Facebook! 15 Dicembre 2009

Commenti recenti

  • Mauro su Il Dizionario degli Orrori
  • Adeguamento normative Garante della Privacy - Consulenti ICT su Amministratori di sistema sotto la lente.

Copyright © 2023 · Consulenti ICT · Sviluppato da Studio Wasabi · P.IVA 02114920461 · Accedi

Usiamo i cookie per fornirti la miglior esperienza d'uso e navigazione sul nostro sito web.

Puoi trovare altre informazioni riguardo a quali cookie usiamo sul sito o disabilitarli nelle impostazioni.

Consulenti ICT
Powered by  GDPR Cookie Compliance
Panoramica privacy

This website uses cookies so that we can provide you with the best user experience possible. Cookie information is stored in your browser and performs functions such as recognising you when you return to our website and helping our team to understand which sections of the website you find most interesting and useful.

Cookie strettamente necessari

I cookie strettamente necessari dovrebbero essere sempre attivati per poter salvare le tue preferenze per le impostazioni dei cookie.

Se disabiliti questo cookie, non saremo in grado di salvare le tue preferenze. Ciò significa che ogni volta che visiti questo sito web dovrai abilitare o disabilitare nuovamente i cookie.

Cookie di terze parti

This website uses Google Analytics to collect anonymous information such as the number of visitors to the site, and the most popular pages.

Keeping this cookie enabled helps us to improve our website.

Attiva i cookie strettamente necessari così da poter salvare le tue preferenze!

Cookie Policy

More information about our Cookie Policy