Ci sono diversi lavori tecnici e non tecnici in infosec, ma per gli sviluppatori web, con il tuo profilo, ti consiglierei di leggere sulle applicazioni web e sui suoi difetti.
Il pentest di solito è un'attività a più passaggi, quando viene eseguito da un team, forse solo pochi membri hanno una buona conoscenza di più di un campo. Lo sfruttamento della scrittura è davvero vago, se si prevede di scrivere buffer overflow (stack, heap), la base dell'assembly è fondamentale, ma se si mantiene l'attenzione sulle applicazioni Web, ciò non sarà necessario.
Non ci sono molti libri o raccomandazioni sul web per un libro finale completo che leggi e magicamente ottieni tutta la conoscenza. Di solito ciò che leggerai è la documentazione tecnica per l'applicazione, le pagine man e i libri sul tuo campo. Per iniziare bene, installa DVWA, abituati a leggere il codice, capire le vulnerabilità nel tuo campo di studio (php / java), imparare come sfruttarlo. Sarebbe più facile avviarlo spendendo ore a debuggare il tuo shellcode in gdb. Lascia quei passaggi per un altro momento e vedrai i risultati più velocemente.
Parallelamente, continua a raccogliere vecchie versioni del software, abituati alla finestra mobile e al vagabondaggio, perché lo utilizzerai molto per costruire i tuoi ambienti di prova.
E mantieni la regola magica che, dovresti essere in grado di sapere come fare certe attività per essere qualcuno in grado di eseguire una valutazione della vulnerabilità su quel campo. Verrai spesso chiesto "ma come lo risolviamo?", Se stampi e invii un rapporto di scansione, non sarai mai veramente in grado di metterti in contatto con questo tipo di attività.
Oltre alle competenze tecniche, trascorrerai la maggior parte del tuo tempo a spiegare l'impatto di una vulnerabilità per un cliente e come risolverlo. Succede molto, un ragazzo che esporta un report Nessus in pdf e lo invia tramite e-mail. Questo di solito non è qualcosa che i manager IT tengono d'occhio, una volta che ho lavorato per un'azienda che vuole solo una seconda opinione, il risultato, il loro principale database Oracle è stato pwned in una questione di un giorno, con tutto ciò che ospita anche nel percorso compromesso. Ora immagina la tua reputazione sul mercato, dopo 2 anni di invio di rapporti di Nessus che dicono che l'ambiente è ok al 100%, hanno finito il loro contratto con l'altra compagnia nello stesso giorno. Ma questo è quello che succede quando le persone non lavorano nella loro area di competenza. Questo auditor è un professionista eccellente, con molte conoscenze sui processi interni, ISO, PCI e politiche di sicurezza, gli errori si verificano, ma non ha mai toccato un database Oracle, un Open VPN Server, un router Cisco e un server Windows. Senza una profonda comprensione di un argomento, non sarai in grado di eseguire un pentest completo su quella piattaforma. Ad esempio, lo stesso accadrà con me se provo a fare una valutazione della vulnerabilità su un Solaris, quello che accadrà è un sacco di ricerche su google e diverse attività eseguite perché ne ho letto, in altre parole, sarebbe meglio risultati appena eseguendo Nessus, perché i miei testicoli sarebbero in mancanza di coerenza ed è possibile che io lasci qualcosa dietro.
Un altro campo che potrebbe interessarti è la risposta agli incidenti. Se anche tu sei in grado di ottenere una laurea in legge, o conosci un buon avvocato con cui collaborare, sarai in grado di eseguire l'intera risposta. Ma dovrai essere versatile, sapere bloccare un attacco DDoS, scrivere una regola del firewall, correggere un file php all'interno di un server di produzione, analizzare i vecchi log delle applicazioni per generare una lista bianca in pochi minuti. Fondamentalmente è per mitigare l'attacco, recuperare dall'attacco, raccogliere prove, fare gli aspetti legali dell'attività e aiutare gli investigatori con le prove raccolte.
Come ogni tipo di attività, dovresti pensare a quale sia il valore del tuo lavoro per i tuoi clienti e una valutazione di pentest / vulnerabilità dovrebbe portare a una migliore comprensione del livello di sicurezza del tuo cliente, dando come risultato cosa hai provato, come hai testato, cosa hai trovato e cosa deve fare il tuo cliente per archiviare il livello di sicurezza necessario .