Cos'è Ghidra e perché è importante?

Gran parte della lotta ai nuovi virus consiste nel capire come funzionano. Per farlo, è necessario decodificarlo. La National Security Agency ( NSA ) ovviamente deve fare molto questo tipo di lavoro, quindi hanno creato il proprio strumento, chiamato Ghidra per aiutarli a farlo.

A proposito, si pronuncia Ghee-dra . È stato rilasciato al pubblico gratuitamente e come open source il 5 marzo (March 5)2019 alla RSA Conference di San Francisco . Puoi anche visualizzare le note di presentazione di Ghidra di Robert Joyce(view the Ghidra presentation notes from Robert Joyce) , Senior Advisor della National Security Agency ( NSA ).

 Per capire davvero perché il rilascio di Ghidra(Ghidra) fosse importante, dobbiamo capire cos'è il reverse engineering e a cosa serve.

Che cos'è il reverse engineering e perché viene utilizzato?

In generale, il reverse engineering (RE) si riferisce al processo di smontare qualcosa per capire come è stato realizzato. Potresti averlo fatto da solo con un piccolo elettrodomestico a casa, cercando solo di capire come ripararlo da solo. Ma stiamo parlando di RE un programma. È solo codice, giusto? Perché non ci limitiamo a guardare il codice dietro di esso?

Quando scrivi un programma in un linguaggio come C o Java , c'è un passaggio tra scriverlo e poterlo usare su un computer. La lingua in cui stai programmando è leggibile da te, ma non necessariamente leggibile dal computer. Deve essere tradotto in qualcosa con cui il computer può funzionare. Questo processo è chiamato compilazione.

Una volta che un programma è stato compilato, non è più leggibile dagli esseri umani.

Se vuoi capire come funziona quel programma, devi smontarlo al livello in cui puoi vedere cosa c'è dentro. Hai bisogno di un kit di strumenti per questo, proprio come hai bisogno di un kit di cacciaviti e chiavi inglesi per trasportare un piccolo elettrodomestico o un motore.

È qui che entra in gioco Ghidra . È una cassetta degli attrezzi per smontare il software per vedere come funziona. Esistono già altri strumenti simili come IDA , Radare e Binary Ninja .

La NSA utilizza Ghidra per rilevare virus, malware e altri programmi che potrebbero rappresentare una minaccia per la sicurezza nazionale. Quindi, in base a ciò che trovano, sviluppano un piano d'azione per affrontare la minaccia. Con il numero di eventi di hacking sponsorizzati dallo stato nelle notizie di recente, sai che questo è un grosso problema.

Qualcuno può usare Ghidra?

Non esattamente. Devi avere almeno una certa competenza con la programmazione. Non è necessario essere un ingegnere del software, ma se hai fatto alcuni corsi universitari in programmazione puoi entrare in Ghidra e insegnarti come usarlo.

Inoltre, il sito Web ufficiale di Ghidra(Ghidra) ha anche una guida all'installazione, riferimenti rapidi, un wiki e un tracker dei problemi. Il punto di fornire tutto ciò è in modo che tutti possano imparare e insieme rendere il mondo più sicuro dagli hacker malintenzionati.

L' NSA sta facendo questo per "...migliorare gli strumenti di sicurezza informatica..." e "...costruire una comunità..." di ricercatori esperti con Ghidra e contribuendo alla sua crescita, come scritto nella presentazione di Robert Joyce.

Allora perché Ghidra è un grosso problema?

Viene dall'NSA(NSA) . Quale azienda ha il tipo di risorse di cui dispone un'agenzia federale statunitense? Che tipo di esperienza potrebbe avere anche la migliore compagnia di sicurezza rispetto a un'agenzia incaricata della sicurezza della nazione più potente della Terra?

Quindi, sì, è uno strumento molto potente. Il ricercatore di sicurezza (Security)Joxen Coret ha twittato “So, Ghidra s**ts all over any other RE tool out there with the only exception of IDA.”

Poi c'è l'aspetto gratuito. Essendo in grado di ottenere gratuitamente quello che è probabilmente lo strumento RE più potente, la barra di accesso alla ricerca sulla sicurezza è stata appena ridotta al semplice possesso di un computer e all'accesso a Internet .

Questo è parte del motivo per cui la NSA lo ha rilasciato. Sperano che una nuova generazione di ricercatori diventi esperta e prenda in considerazione le carriere con l' NSA .

Poi c'è l'aspetto open source. Le agenzie di sicurezza non sono famose per lasciare che le persone guardino dietro le quinte per una buona ragione. Se sai come fanno quello che fanno, diventa più facile contrastarli. Tuttavia, l'intero codice sorgente di Ghidra è stato reso pubblico in modo che chiunque possa esaminarlo e vedere esattamente come funziona.

E, no, non ci sono segnalazioni di backdoor del governo in esso. Ron Joyce si è rivolto rapidamente, dicendo, alla comunità di ricerca sulla sicurezza, "... è l'ultima comunità a cui vuoi rilasciare qualcosa con una backdoor installata, a persone che cercano questa roba da fare a pezzi".

Dal punto di vista dell'istruzione, Ghidra consente anche agli ingegneri del software in erba di smontare i programmi per vedere come funzionano e quindi imparare a fare qualcosa di simile con i propri progetti. Guardare il codice di un'altra persona è stata a lungo una pratica accettata da programmatori e sviluppatori per diventare programmatori migliori. Se quel codice fosse stato condiviso apertamente, ovviamente.

Forse l'affare più grande è che Ghidra è stato progettato per essere utilizzato in modo collaborativo. Puoi avere un repository condiviso con i tuoi colleghi o amici in modo da poter lavorare tutti su un progetto in una volta. Ciò accelera notevolmente il processo di analisi.

E adesso?

Il governo federale degli Stati Uniti si è impegnato a rilasciare sempre più software relativi alla sicurezza. Alcuni saranno di natura molto tecnica, come Ghidra , e altri saranno più user-friendly, come una versione di Android con sicurezza avanzata(security-enhanced version of Android) .

Tutto ciò preannuncia un momento unico di collaborazione tra governo e civili per mantenere la nostra infrastruttura di dati il ​​più sicura possibile.

Servizi segreti statunitensi – https://www.secretservice.gov/data/press/reports/USSS_FY2013AR.pdf

https://media.defense.gov/2012/Apr/27/2000157039/-1/-1/0/120417-F-JM997-405.JPG



About the author

Sono un ingegnere informatico con oltre 10 anni di esperienza nel settore del software. Sono specializzato nella creazione e manutenzione di applicazioni software individuali e aziendali, nonché nello sviluppo di strumenti di sviluppo per piccole imprese e grandi organizzazioni. Le mie capacità risiedono nello sviluppo di una solida base di codice, negli strumenti di debug e test e nel lavorare a stretto contatto con gli utenti finali per garantire che le loro applicazioni funzionino perfettamente.



Related posts