OsintOps Blog

OsintOps is the blog dedicated to all news concerning OSINT (and more)

Maltego: creiamo una custom entity adatta alla nostre esigenze

Maltego è uno strumento strepitoso per la raccolta di dati dalla rete.

Le sue funzionalità di raccolta e correlazione dati lo rendono uno dei migliori strumenti (a basso costo) sulla piazza per chiunque abbia bisogno di fare ricerche su fonti aperte e non.

Quello che si nota quando
lo si utilizza un po’ più frequentemente è la necessità di crearsi delle Entity
adatte per le proprie investigazioni, specie per chi opera nel teatro italiano.

Questo piccolo tutorial si focalizza sulla creazione di una Dead End Entity “Codice Fiscale”: un’entità insomma che sia la rappresentazione del Codice Fiscale italiano e che, per il momento, non sia collegata a nessuna transform.

Avviare il New Entity Wizard

Per avviare il New Entity Wizard Seleziona la tab Entities e segui le istruzioni indicate nell’immagine seguente

Nella prima scheda del New Entity Wizard hai la possibilità di configurare buona parte dei dati della tua nuova Entity:

Scegliere l’icona adatta

Il prossimo passo è
scegliere un’icona che rappresenti l’entity. Per questo tutorial partiremo dal
presupposto che tu abbiamo deciso di caricarne una tua e non di usare quelle
già presenti in Maltego.

In questa schermata dell’Icon
Manager
puoi iniziare la procedura per installare la tua icona.

In questa finestra poi
cercare e caricare l’icona che intendi utilizzare.

Ora puoi scegliere in che
categoria inserire la tua icona. In questo caso prenderemo Custom.

Premi Close per
terminare la procedura di importazione dell’icona.

Ora puoi scegliere l’icona
appena caricata (ricorda che sarà inserita come ultima del gruppo che hai
scelto).

Impostare la Proprietà principale dell’Entity

Passa ora a personalizzare le voci riguardi la proprietà principale di questa entity.

Ricorda che la Main Property sarà quella che molto probabilmente verrà visualizzata nella Palette e nel grafo.

Nello Step 3 ti è possibile aggiungere ulteriori proprietà secondarie (es. Nome, Cognome, data di nascita, sesso, ecc.).

In questo tutorial NON ne aggiungeremo altre.

Nello STEP 4 in realtà si possono fare un sacco di cose interessanti. Per questa prima volta lascia tutto così.

Nello Step seguente, al punto 3, ti farò inserire una espressione regolare.

Grazie alla loro implementazione in Maltego, è possibile fare in modo che il tuo client riconosca più facilmente il dato che stai aggiungendo tramite Copia/Incolla al grafo.

In questo esempio ho utilizzato questa espressione molto semplice, in grado di riconoscere solo i codici fiscali scritti in minuscolo:

^[a-z]{6}[0-9]{2}[a-z][0-9]{2}[a-z][0-9]{3}[a-z]$

Ti suggerisco piuttosto di
adottare questa:

[a-zA-Z]{6}[0-9]{2}[abcdehlmprstABCDEHLMPRST]{1}[0-9]{2}([a-zA-Z]{1}[0-9]{3})[a-zA-Z]{1}$

Hai ora terminato il processo di creazione dell’entity.

Check finale

Controlliamo se l’entity che hai creato è presente nella Palette:

Per testare in funzionamento
dell’espressione regolare, copia e incolla questo codice fiscale in un grafo
vuoto:

rsslsn99b26g914v

Se tutto è andato come
sarebbe dovuto andare, dovresti aver ottenuto un risultato simile a questo:

Prova a fare un altro test con questo codice fiscale

MRAPPA89P41L219X

Ultime considerazioni

Come anticipato con questo tutorial hai creato una entity definita dead end che torna utile alle tue esigenze (ad esempio devi solo rappresentare delle informazioni che hai già nel grafo o il codice fiscale è il risultato finale di una transform).

Ci sono altri casi in cui questa “limitazione” deve essere superata e devi progettare come rendere “compatibili” le tue entity con le trasformate già presenti. Prova ad immaginare ad esempio di voler importare in un grafo i dati prodotti da uno script come harpoon ed arricchirli con le trasform di SocialNet.

Sarebbe tutto più facile se le entity che ti sei personalizzato fossero già compatibili con quelle di Socialnet.

Pensandoci sopra… forse è il caso di dedicare qualche post sulla modellazione e normalizzazione dei dati data l’importanza di questo argomento. Magari Convinco @zarathustra a scrivere qualcosa in merito 😀

Note finali

  • Le espressioni regolari utilizzate in questo esempio non fanno alcun controllo di coerenza dell’informazione inserita: i dati contenuti nel codice fiscale potrebbero essere errati e non concordare con il valore finale di controllo ma rientrare nei parametri dell’espressione regolare. Per cercare di mitigare questo problema si potrebbe utilizzare anche un’espressione regolare più complessa, come ad esempio quella presente alla fine di questo post, per verificare la coerenza dell’informazione ed una transform ad hoc per un controllo con il sito dell’AdE.

  • Durante l’ultimo corso dedicato alle FF.OO che ho tenuto su Maltego è emersa nuovamente l’eventualità che una stringa possa rientrare nel range dell’espressione regolare di più entity. Riteniamo che in questo caso venga presa in considerazione l’entity che è stata installa per prima, ignorando le eventuali altre entity installate dopo.

È comunque possibile indicare a Maltego il tipo di entity che deve utilizzare nel classificare il dato che stiamo inserendo facendo precedere al dato stesso il tipo di entity che deve essere utilizzata:

 maltego.Alias#Signor Lupo

Comments

Leave a Reply

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

OsintOps News Channel

Latest Posts

  • The difficult detection in Art: between Osint, Music and (anti)censorship
    The difficult detection in Art: between Osint, Music and (anti)censorship. Journey through the hidden meanings of words, both in art and anti-censorship, and on the difficulties of making OSINT in languages and cultures other than one’s own.
  • La difficile detection nell’Arte: tra Osint, Musica e (anti)censura
    La difficile detection nell’Arte: tra Osint, Musica e (anti)censura. Viaggio tra i significati nascosti delle parole, sia nell’arte che nella lotta alla censura e sulle difficoltà di fare OSINT in lingue e culture diverse dalla propria.
  • Enterprise Incident Response with Velociraptor: when tempo is all
    On the occasion of Matera DigiSec 2024, I decided to illustrate a tool that is still little known (unfortunately!) but instead is part of the tools of many Incident Response teams and perhaps deserves more prominence. I am talking about the opensource tool Velociraptor, on which I based my short talk, entitled “Enterprise Incident Response with Velociraptor: when time is all.”
  • Enterprise Incident Response with Velociraptor: when tempo is all
    In occasione del Matera DigiSec 2024 ho deciso di illustrare un tool ancora poco conosciuto (purtroppo!) ma che invece fa parte degli strumenti di molti team di Incident Response e che forse meriterebbe maggior rilievo. Sto parlando del tool opensource Velociraptor, sul quale ho basato il mio breve intervento, dal titolo “Enterprise Incident Response with Velociraptor: when tempo is all”.
  • First Presentation of the Anu₿itux Project
    Anubitux Project presented for the absolute first time the open-source distribution Anubitux, during the Cyber forensics IISFA Forum 2024, in Rome

Popular Categories