C'è una grande differenza tra i pen-tester che scrivono un po 'di codice e gli sviluppatori di strumenti di sicurezza.
Durante un pen-test, potrebbe essere necessario scrivere un codice personalizzato. Ad esempio, se si trova l'iniezione di modelli sul lato server, è probabile che non vi sia alcun exploit off-the-shelf che funzioni in questo scenario esatto. Ma con un po 'di codice puoi ottenere una shell. Questi script completano il lavoro; i modelli di design sono irrilevanti.
Molti strumenti di sicurezza sono molto più complessi degli script one-off. Metasploit è un buon esempio. Prima di Metasploit, la maggior parte degli exploit sono stati sviluppati come script di prova con penna one-shot. L'exploit mirerebbe a una specifica vulnerabilità e fornirebbe un carico utile specifico. Metasploit ha introdotto la modularità e la struttura nello sviluppo degli exploit. In particolare, separando i concetti di: exploit, payload e codificatori.
In effetti, ora ci sono tutti i tipi di strumenti di sicurezza che sono stati sviluppati pensando a pratiche di progettazione forti, sebbene molti di questi siano commerciali, ad es. Nessus, Checkmarx, Burp Suite.