Si es un sistema prefabricado lo primero que hago es descargarme el código fuente e instalarlo en local y despues comienzo a testear.
Yo no veo el codigo fuente al instante sino que comienzo a probar cosas primero y si no va funcionando bien entonces voy comprobando con el codigo fuente y comienzo a debugear.
En el caso de que no sea un sistema publico entonces no queda otra que testear asi nomas.
Yo no uso scanners, antes si los usaba porque no sabia mucho del tema pero los escaneadores muchas veces dan falsos positivos y nunca encuentran todo.
Por ejemplo si el sistema tiene blind inyeccion sql entonces no lo va a encontrar o si tiene una inyección por lo menos un poco fabricada entonces tampoco, por ejemplo el escaneador siempre prueba con comillas y espacios diciendo and 1=1 o or 1=1 etc pero en el caso de que la inyección esté entre parentesis entonces no lo va a encontrar )) and 1=(1
Lo mismo pasa con las xss, si este afecta solamente a una sección que no ves entonces no lo va a encontrar, si hay csrf entonces el escaneador puede que no lo localize.
Un escaneador con suerte te puede encontrar el 15% de las vulnerabilidades aproximadas de un sistema WEB.
Por ejemplo si la web tiene index.php?sección=contacto entonces si no tienes el codigo fuente puedes suponer que se hace haciendo una query a la base de datos, seleccionando una variable del mismo php o si no haciendo un include y eso se puede deducir porque uno ya sabe como programar ese tipo de cosas y por eso siempre digo que para aprender de vulnerabilidades WEBs primero tienes que saber programar en ese lenguaje, entonces pruebas index.php?sección=contacto' or 1='2 y si no resulta pruebas con index.php?sección=contacto' or 1='1 y si tampoco funciona ahi puedes deducir que puede estar utilizando otra forma aunque puede que tenga una inyeccion mas avanzada pero lo dejas para despues y pruebas index.php?sección=index y si ves que te aparece la portada duplicada es porque es LFI, entonces ya sabes que hace un include terminado en .php asi que lo explotas con un null bite index.php?sección=../../../../../../etc/passwd%00 y si funciona entonces despues te pones a buscar de cabeza como poder subir un archivo cualquiera y muchas veces te encuentras con que puedes subir imagenes, le inyectas una shell a la imagen y lo incluyes y ya tienes acceso al servidor.
Despues ves si tiene un panel de adm,in en sitio.com/admin adm robots.txt etc y en lasgunas ocasiones te toparas con varios fallos que te permiten entrar.
Despues vas buscando en algunas variables del sitio, ves el codigo fuente de la web desde firefox y ves si hay alguna variable sospechosa que contenga solo numeros o un archivo con extension, etc y vas testeandolos.
Por ejemplo en una web me toco ver que hacias un index.php?sec=api&tipo=funcionx entonces te mostraba un código en javascript que era incluido desde ajax y que contenia la funcion funcionx entonces lo reemplazas y le pones funcionx({}))}alert(documen.cookie) y ves que se ejecuta pero lanza un header de texto plano asi que buscas en el sistema de alguna forma en que pueda llamar a esa función con tu xss inyectado y listo.
Solo es cosa de tener imaginación y saber el lenguaje sobre el que estas auditando. y nunca te apoyes en un scanner porque asi uno nunca aprende y despues vienen al foro diciendo... "el SSS me dijo que x web tiene xss en una variable, que hago ahora?" y ese es el problema.
Actualmente hay una vulnerabilidad en SMF que ningún escaneador pudiera haberlo encontrado y otros mas donde solo puedes ejecutarlos si tienes sesion activa y tebndrias que darle la cookie al escaneador y aun asi faltarian muchas cosas.
Frikipedia tenía inyeccion sql en el referer y no lo encontré con un escanner.
Hay que tener paciencia, gustarte lo que haces y saber programar por lo menos en html, javascript y como secundario puedes aprender el lenguaje que se ejecuta en el servidor que puede ser php, aspx, etc. porque si ves algo que funciona de una forma y no tienes acceso a ver el codigo fuente real puedes deducir como se puede hacer esa función y ves sus posibles puntos debiles y si el programador es precabido se habrá dado cuenta y lo solucionó con algunas lineas extras de código que no puedes ver y eso es lo que vas testeando cosa por cosa.
Yo aprendí bastante de fallas que ni si quiera habia leido en internet tan solo haciendo mis propios sistemas CMS, no es facil pero la gracia es que vas aprendiendo... derrepende dices.... "aah y si alguien hace esto y esto? de seguro va a entrar" y despues te das cuenta que hay sitios webs que funcionan de la misma forma que tu sistema y vas a probar y si funcionan
Yo utilizo el netcat, firefox con los complementos de live headers, ncookies edit, noscript, firebug y un editor de texto que en win es el block de notas y en linux el gedit, nada mas y si se pone dificil uso google.