Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
ABEL
Il sistema di build della nuova CAINE
Andrea Lazzarotto — andrealazzarotto.com
MI OCCUPO DI

Informatica forense

Sviluppo software

RecuperaBit, Carbon14, CAINE
CAINE

2008: Nata come tesi di laurea

2009: Nanni Bassetti diventa maintainer

2017: Esce la versione 9, contando orma...
CAINE è uno strumento completo che comprende
decine di tool e applicazioni forensi
Grazie a rbfstab e Mounter tutti i dispositivi sono
bloccati in scrittura
Strumenti basati sul lavoro di John Lehr
Ci sono inoltre delle patch agli script di avvio
per evitare montaggi
Alcune modifche suggerite da Suhanov Maxim
Purtroppo fnora la distro è stata fatta a mano
… con Systemback
SVANTAGGI
Questo approccio è poco ordinato ed è facile
commettere errori
Diventa difcile tenere traccia delle modifche
Non si può suddividere lo sviluppo
Per non parlare di eventuali bug report,
che vengono inviati per email a Nanni
IDEA
Ho pensato di automatizzare e rendere tracciabile
tutto il processo.
L’ispirazione è stata una parola molto brutta, e...
(scusatemi per l’imprecazione)
PROPOSTO AL TEAM DI DEFT

Bla bla… e quindi avresti tutto tracciato.

Bello! Però boh abbiamo sempre fatto così…

Ma av...
POI AL TEAM DI CAINE

A maggio nasce la prima bozza di Abel
(Automated Build Environment Lab)

Basato su Vagrant per rac...
La prima demo di Abel
aggiornava tutti i
pacchetti con APT
STRUTTURA DI ABEL
bin / abel
environment /

base.iso

branding.sh

customizer.conf

hook.sh

launchers / generate.py
...
MAKEFILE
Il comando abel esegue un Makefle
all: extract hook rebuild clean
extract:
sudo customizer --extract
hook:
/envir...
FINCHÉ NON SI È ROTTO TUTTO
Un bel giorno la build ha smesso di funzionare…
Ubuntu ha rilasciato un kernel che usa una
com...
MORALE

Reinstallare il kernel (nella ISO non è completo)
e fssarlo con apt-mark

Usare sempre versioni fsse dei program...
PERSONALIZZAZIONI
Tramite gli script possiamo installare tutti i
pacchetti desiderati
Scarichiamo e incorporariamo programmi già
compilati come Autopsy
Applichiamo le patch forensi alla ISO
Creiamo i lanciatori (icone nel menu) con un
pratico script Python
Cambiamo tema,
sfondo e icone in
/etc/skel
VANTAGGI

La ISO viene prodotta in modo totalmente
automatizzato, tracciabile e peer-reviewed

Più persone possono lavor...
vagrant up
vagrant ssh
abel
Abel, il sistema di build della nuova CAINE
Abel, il sistema di build della nuova CAINE
Abel, il sistema di build della nuova CAINE
Abel, il sistema di build della nuova CAINE
Abel, il sistema di build della nuova CAINE
Abel, il sistema di build della nuova CAINE
Abel, il sistema di build della nuova CAINE
Abel, il sistema di build della nuova CAINE
Upcoming SlideShare
Loading in …5
×

Abel, il sistema di build della nuova CAINE

CAINE è una delle distribuzioni Linux per l’informatica forense più usate al mondo. Analogamente ad altri progetti simili, l’attuale metodo di sviluppo comporta numerosi step non automatizzati. Molte delle personalizzazioni presenti nella distribuzione sono realizzate a mano, rendendo difficile tenerne traccia e valutare eventuali correzioni di bug o miglioramenti nella procedura. Abel (Automated Build Environment Lab) è un progetto che mira a produrre le nuove versioni di CAINE in modo totalmente automatizzato, tracciabile e peer-reviewed, con un ambiente di build omogeneo basato su Vagrant e numerosi script che applicano tutte le modifiche necessarie.

Related Books

Free with a 30 day trial from Scribd

See all

Related Audiobooks

Free with a 30 day trial from Scribd

See all
  • Be the first to comment

  • Be the first to like this

Abel, il sistema di build della nuova CAINE

  1. 1. ABEL Il sistema di build della nuova CAINE Andrea Lazzarotto — andrealazzarotto.com
  2. 2. MI OCCUPO DI  Informatica forense  Sviluppo software  RecuperaBit, Carbon14, CAINE
  3. 3. CAINE  2008: Nata come tesi di laurea  2009: Nanni Bassetti diventa maintainer  2017: Esce la versione 9, contando ormai utenti e recensioni da tutto il mondo Idea iniziale di Giancarlo Giustini
  4. 4. CAINE è uno strumento completo che comprende decine di tool e applicazioni forensi
  5. 5. Grazie a rbfstab e Mounter tutti i dispositivi sono bloccati in scrittura Strumenti basati sul lavoro di John Lehr
  6. 6. Ci sono inoltre delle patch agli script di avvio per evitare montaggi Alcune modifche suggerite da Suhanov Maxim
  7. 7. Purtroppo fnora la distro è stata fatta a mano … con Systemback
  8. 8. SVANTAGGI Questo approccio è poco ordinato ed è facile commettere errori
  9. 9. Diventa difcile tenere traccia delle modifche
  10. 10. Non si può suddividere lo sviluppo
  11. 11. Per non parlare di eventuali bug report, che vengono inviati per email a Nanni
  12. 12. IDEA Ho pensato di automatizzare e rendere tracciabile tutto il processo. L’ispirazione è stata una parola molto brutta, e la sto per dire… DevOps
  13. 13. (scusatemi per l’imprecazione)
  14. 14. PROPOSTO AL TEAM DI DEFT  Bla bla… e quindi avresti tutto tracciato.  Bello! Però boh abbiamo sempre fatto così…  Ma avete sempre il problema che uno fa tutto.  Vero, boh… sento gli altri, ti so dire…
  15. 15. POI AL TEAM DI CAINE  A maggio nasce la prima bozza di Abel (Automated Build Environment Lab)  Basato su Vagrant per racchiudere l’ambiente dentro a una VM conosciuta e riproducibile  Utilizza Customizer su Ubuntu 16.04
  16. 16. La prima demo di Abel aggiornava tutti i pacchetti con APT
  17. 17. STRUTTURA DI ABEL bin / abel environment /  base.iso  branding.sh  customizer.conf  hook.sh  launchers / generate.py  Makefle  overlay.sh  scripts / … Vagrantfle Processo di build automatizzato con Makefle e cartella script Provision tramite Vagrantfle (Ubuntu 16.04 + Customizer)
  18. 18. MAKEFILE Il comando abel esegue un Makefle all: extract hook rebuild clean extract: sudo customizer --extract hook: /environment/overlay.sh sudo customizer --hook rebuild: sudo /environment/branding.sh sudo customizer --rebuild sudo mv /home/*.iso /environment clean: # More runs could be needed because it fails sometimes while true; do if sudo customizer --clean; then break; fi; done chroot: sudo customizer --chroot
  19. 19. FINCHÉ NON SI È ROTTO TUTTO Un bel giorno la build ha smesso di funzionare… Ubuntu ha rilasciato un kernel che usa una compressione diversa dai precedenti!
  20. 20. MORALE  Reinstallare il kernel (nella ISO non è completo) e fssarlo con apt-mark  Usare sempre versioni fsse dei programmi che non sono nei repository  Testare, testare, testare
  21. 21. PERSONALIZZAZIONI Tramite gli script possiamo installare tutti i pacchetti desiderati
  22. 22. Scarichiamo e incorporariamo programmi già compilati come Autopsy
  23. 23. Applichiamo le patch forensi alla ISO
  24. 24. Creiamo i lanciatori (icone nel menu) con un pratico script Python
  25. 25. Cambiamo tema, sfondo e icone in /etc/skel
  26. 26. VANTAGGI  La ISO viene prodotta in modo totalmente automatizzato, tracciabile e peer-reviewed  Più persone possono lavorare allo sviluppo  I miglioramenti si fanno con gli script
  27. 27. vagrant up vagrant ssh abel

×