Vai al contenuto
Home » Qual è il linguaggio giusto per i penetration test: la risposta definitiva

Qual è il linguaggio giusto per i penetration test: la risposta definitiva

Ogni tanto succede che arrivi il newbie con l’idea che sia lo strumento a
garantirti l’efficacia nell’arte del penetration test.

Quale la distribuzione migliore? Quale il sistema operativo migliore?

Un po’ come se entrassi nel Bar dello sport del mio paese e chiedessi:

Quale la marca di scarpe, magliette, calzettoni per giocare a calcio come
Messi?

Serve sottolineare che va bene qualsiasi portatile con tanta RAM e un po’ di
macchine virtuali a bordo (che è meglio usare sistemi operativi diversi per
attività del genere)? Nel caso servisse, rileggete la frase di prima senza il
punto di domanda.

Qual è il linguaggio giusto per i penetration test

Se parliamo di linguaggio di programmazione abbiamo sdoganato un punto
importante: un penetration tester deve saper programmare. Credetemi non tutti
lo danno per scontato.

Torniamo a bomba… quale il linguaggio giusto? Quale linguaggio è in grado di
far uscire tutte le tue potenzialità, la creatività, il pensiero laterale, la
capacità deduttiva ed un sano spirito di investigazione?

L’Italiano1

Se non parli un italiano corretto, dimostri di non avere un pensiero chiaro in
mente. Con un italiano corretto può spiegare chiaramente quello che vuoi dire
e, bonus tip, magari utilizzando parole semplici per esprimere concetti
difficili.

Conoscendo bene l’Italiano, puoi farti capire dagli altri. Vuoi mettere?
Spiegare al tuo cliente perché serve un’attività o perché ha dovuto pagare un
po’ di più, quali benefici ha ottenuto venendo da te piuttosto che da uno della
Caciotta Security srl.

So che il newbie vuole la tecnicalia… vuole sentire la guerra di religione
tra chi farebbe tutto in ANSI C, tra chi non vive senza il Python e tra chi di
notte sogna classi Ruby.

La dura realtà dei fatti è che, come per il sistema operativo o la
distribuzione linux, non esiste un linguaggio più adatto dell’altro. Spesso i
tool sono scritti poi in linguaggi completamente differenti e su piattaforme
differenti, ecco perché devi essere il più aperto possibile ed usare tecnologie
diverse.

Schifare a priori W1nz0z perché è a pagamento e tu sei contro il sistema,
dimostra che non hai la mentalità adatta a fare questo mestiere.

Le guerre di religione non portano mai a qualcosa di buono, neanche in campo
ICT Security o Cyber Security o Sicurezza Cibernetica, chiamatela come volete.

Sì, ma da dove parto?

Un buon libro, che invito tutti a leggere è The Hacker’s Playbook. I primi
capitoli sono dedicati al setup dei sistemi e degli strumenti. Il resto del
libro, spiega come usare con cognizione di causa, tanto bendiddio sviluppato
nel corso degli anni.

Poi vi verrà la fregola di voler espandere uno strumento o scriverne uno
vostro. Va bene quello che conoscete. Conosci il C? Va bene il C. Conosci
Python? Usa quello. Io scrivo tutto in Ruby perché mi piace quello e mi trovo
bene. Come un vestito, il linguaggio deve starti comodo.

Nel dubbio, io il C lo imparerei sempre a prescindere. Poi lo affiancherei ad
un linguaggio interpretato a scelta.

Off by one

Credetemi, non sono l’unico a dirlo. Fare pentest, come fare code review, non è
qualcosa che né si impara sui libri, né ha un incantesimo da imparare affinché
diventiate i migliori. Sono entrambe arti che partono dall’attitudine personale
nel vedere i diversi lati del problema, avere prospettive differenti.

Soprattutto, non vi dovete fermare ad un linguaggio, un tool, un sistema
operativo. Siate aperti. Mettetevi in discussione. Non pensate che un tool, un
SO, una certificazione vi dia un vantaggio o dica che siete bravi.

Imparate e studiate e siate affamati, veramente affamati.

Enjoy it!

  1. se ci sono lettori del blog di diversa nazionalità, che stanno usando
    Google Translate o semplicemente leggono la mia lingua, sostituiscano la
    loro lingua madre qui. 

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.