Cómo evitar las pruebas de penetración durante el desarrollo
Básicamente, los sitios web que participan en las pruebas de seguridad (pruebas de penetración) pueden tener en mayor o menor medida las siguientes vulnerabilidades: vulnerabilidades de inyección SQL, vulnerabilidades de ataque de cross-site scripting, páginas de gestión de inicio de sesión en segundo plano e IIS. archivos cortos/vulnerabilidad de carpetas, fuga de información confidencial del sistema.
Pasos y contenido de la prueba
Se entiende que estas pruebas de seguridad generalmente recopilan datos primero y luego realizan trabajos de pruebas de penetración relacionados para obtener algunos datos confidenciales del sitio web o sistema. lograr el propósito de controlar o destruir el sistema.
El primer paso es recopilar información, como dirección IP, registros DNS, información de versión de software, segmento de IP y otra información. Los métodos que se pueden utilizar son:
1) Obtener información básica de la red
2) Hacer ping a la red de destino para obtener información como dirección IP y TTL
<; p>3) Resultados de Tcptraceroute y Traceroute;4) Resultados de Whois;
5) Netcraft obtiene el nombre de dominio, la web y la información del servidor que puede existir.
6) Curl obtiene la información básica del objetivo en la Web;
7) Nmap realiza un escaneo de puertos en el sitio web y determina el tipo de sistema operativo;
8) Google, Yahoo , Baidu y otros motores de búsqueda obtienen información de destino;
9) FWtester, Hping3 y otras herramientas para la detección de reglas de firewall;
10) Otros.
El segundo paso es realizar una prueba de penetración para obtener más datos sensibles del sitio web en base a los datos obtenidos previamente. Si tiene éxito en esta etapa, se pueden obtener los permisos normales. Se utilizarán los siguientes métodos:
1) Escaneo de vulnerabilidades convencional y software comercial para verificar.
2) Combinación de herramientas de escaneo comerciales o gratuitas como ISS y Nessus para detectar vulnerabilidades.
3) Utilice SolarWinds para buscar y descubrir dispositivos de red
4) Utilice Nikto, Webinspect y otro software para buscar vulnerabilidades comunes en la Web; 5) Utilice software comercial como AppDetectiv para escanear y analizar la base de datos;
6) Analizar aplicaciones web y de bases de datos;
7) Utilice WebProxy, SPIKEProxy, Webscarab y ParosProxy, Absinthe y otras herramientas para el análisis
8) Utilice la captura de paquetes Ethereal para ayudar en el análisis
9) Utilice Webscan y Fuzzer para realizar análisis preliminares de inyección SQL y vulnerabilidades XSS; p>
10) Detectar manualmente vulnerabilidades de inyección SQL y XSS;
11) Usar herramientas similares a OScanner para analizar la base de datos;
12) Basado en dispositivos comunes, bases de datos, ataques a sistemas operativos y aplicaciones utilizando una variedad de códigos de desbordamiento de búfer públicos y privados, así como una colección de exploits como MetasploitFramework.
13) Ataques basados en aplicaciones. Ataque basado en las vulnerabilidades de aplicaciones de red en Web, base de datos o estructura B/S o C/S específica.
14) Tecnología de adivinación de contraseñas. Para adivinar contraseñas, puedes utilizar herramientas como X-Scan, Brutus, Hydra y Xuexue.
El tercer paso es intentar actualizar los permisos normales a permisos de administrador para obtener el control total del sistema. Si el tiempo lo permite, reinicie desde la primera etapa si es necesario. Métodos de adopción
1) Rastreo de contraseñas y registro de teclas. Software como el rastreo, el registro de teclas y los caballos de Troya tienen funciones simples pero no requieren ser detectados por el software antivirus, por lo que normalmente deben desarrollarlos o modificarlos ellos mismos.
2) Cracking de contraseñas.
Hay muchos programas famosos para descifrar contraseñas, como L0phtCrack, John the Ripper, Cain, etc.
Los anteriores son sus pasos de prueba, pero no necesariamente tenemos que prestar atención a estos procedimientos. dales tu opinión. El resultado es más preocupante, porque puede haber muchas vulnerabilidades de seguridad esperando que las solucionemos.