Trabajo para una empresa que hace pruebas de penetración de aplicaciones web como parte de su negocio. Usamos muchas herramientas diferentes. Algunas son herramientas únicas en Ruby para proyectos específicos, o en marcos desarrollados por la casa o proxies (nuevamente Ruby). La mayoría de las pruebas de penetración de nuestra aplicación web se realizan utilizando webscarab, burpsuite o paros proxy. Todos ellos tienen algún tipo de funcionalidad de registro, una cantidad decente de potencia y una desventaja o dos.
De hecho, he encontrado que webscarab es el más fácil de usar. Sin embargo, no maneja VIEWSTATE o hace mucho por buscar. De hecho, hemos encontrado datos en VIEWSTATE que no deberían estar allí, por lo que cada vez que los vemos, tendemos a cambiar a un proxy diferente. Burpsuite es mi próxima elección. Maneja VIEWSTATE pero la interfaz requiere mucho tiempo para acostumbrarse a ella y su salida, mientras que técnicamente es más completa (conserva las solicitudes/respuestas originales y modificadas) y es más difícil de usar.
Lamentablemente, la respuesta a su pregunta es un poco más complicada que solo un buen proxy. Hay mucho más que simplemente tomar un proxy o un escáner y dejarlos funcionar.Una persona tiene que verificar cualquier cosa que encuentre la herramienta y hay cosas que una persona encontrará.
tqbf tiene una buena explicación de esto here.