Desea realizar una auditoría de seguridad de su sitio web.
Recopilación de información
- Explore manualmente el sitio
- Araña / rastreo para contenido perdido u oculto
- Consulte los metarchivos del servidor web para ver los archivos de fuga de información que exponen contenido, como robots.txt, sitemap.xml, .DS_Store
- Verifique los cachés de los principales motores de búsqueda para sitios de acceso público
- Verifique las diferencias en el contenido en función del Agente de usuario (por ejemplo, sitios móviles, acceso como buscador de motores de búsqueda)
- Consulte los comentarios y metadatos de la página web para ver si hay fuga de información
- Verifique el marco de la aplicación web
- Realizar huellas digitales de aplicaciones web
- Identificar las tecnologías utilizadas.
- Identificar roles de usuario
- Identificar los puntos de entrada de la aplicación.
- Identificar código del lado del cliente
- Identifique múltiples versiones / canales (por ejemplo, web, web móvil, aplicación móvil, servicios web)
- Identificar aplicaciones cohospedadas y relacionadas
- Identifique todos los nombres de host y puertos
- Identificar contenido alojado por terceros
Gestión de la configuración
- ¿Cuál es el mejor software para la seguridad del sitio web?
- ¿Cuál es el mejor antivirus para teléfonos Android?
- ¿Qué sucede con el antivirus cuando instalamos otro sistema operativo en nuestra computadora portátil?
- ¿Cuáles son algunas sugerencias para buenos temas menores de proyectos sobre ciberseguridad / redes que podrían completarse en 7 meses?
- ¿Cuáles son las mayores oportunidades (legales) en ciberseguridad para emprendedores con una gran experiencia en programación? ¿Qué áreas de consultoría de ciberseguridad son las más lucrativas?
- Verifique la aplicación de uso común y las URL administrativas
- Compruebe si hay archivos antiguos, de respaldo y sin referencia
- Verifique los métodos HTTP admitidos y el rastreo de sitios cruzados (XST)
- Prueba de manejo de extensiones de archivo
- Probar la política de dominio cruzado RIA
- Pruebe los encabezados HTTP de seguridad (por ejemplo, CSP, X-Frame-Options, HSTS)
- Prueba de políticas (por ejemplo, Flash, Silverlight, robots)
- Prueba de datos que no sean de producción en un entorno en vivo y viceversa.
- Compruebe si hay datos confidenciales en el código del lado del cliente (por ejemplo, claves API, credenciales)
Transmisión segura
- Verifique la versión SSL, los algoritmos, la longitud de la clave
- Verifique la validez del certificado digital (duración, firma y CN)
- Verifique las credenciales solo entregadas a través de HTTPS
- Verifique que el formulario de inicio de sesión se entregue a través de HTTPS
- Verificar los tokens de sesión solo entregados a través de HTTPS
- Compruebe si HTTP Strict Transport Security (HSTS) en uso
Autenticación
- Prueba de enumeración de usuarios
- Prueba de omisión de autenticación
- Prueba de protección de fuerza bruta
- Prueba de credenciales transportadas a través de un canal cifrado
- Prueba de reglas de calidad de contraseña
- Prueba recuerdame funcionalidad
- Prueba de autocompletar en formularios de contraseña / entrada
- Prueba de restablecimiento de contraseña y / o recuperación
- Probar el proceso de cambio de contraseña
- Prueba CAPTCHA
- Prueba de autenticación de múltiples factores
- Prueba de presencia de funcionalidad de cierre de sesión
- Prueba de gestión de caché en HTTP (p. Ej., Pragma, Caduca, Edad máxima)
- Prueba de inicios de sesión predeterminados
- Prueba de historial de autenticación accesible para el usuario
- Prueba de notificaciones fuera del canal de bloqueos de cuenta y cambios exitosos de contraseña
- Pruebe la autenticación coherente en todas las aplicaciones con esquema de autenticación compartido / SSO y canales alternativos
- Prueba de pregunta / respuesta de seguridad débil
Manejo de sesiones
- Establezca cómo se maneja la administración de sesión en la aplicación (por ejemplo, tokens en cookies, token en URL)
- Verifique los tokens de sesión en busca de indicadores de cookies (httpOnly y seguro)
- Verifique el alcance de la cookie de sesión (ruta y dominio)
- Verifique la duración de la cookie de sesión (caduca y edad máxima)
- Verifique la finalización de la sesión después de una vida útil máxima
- Verifique la finalización de la sesión después del tiempo de espera relativo
- Verifique la finalización de la sesión después de cerrar sesión
- Prueba para ver si los usuarios pueden tener múltiples sesiones simultáneas
- Probar cookies de sesión para aleatoriedad
- Confirme que se emiten nuevos tokens de sesión al iniciar sesión, cambiar de rol y cerrar sesión
- Pruebe la administración de sesión consistente en todas las aplicaciones con administración de sesión compartida
- Prueba para la sesión desconcertante
- Prueba de CSRF y clickjacking
Autorización
- Prueba de recorrido transversal
- Prueba de problemas de control de acceso vertical (también conocido como escalada de privilegios)
- Prueba de problemas de control de acceso horizontal (entre dos usuarios en el mismo nivel de privilegio)
- Prueba de falta de autorización
- Prueba de referencias directas a objetos inseguros
Validación de datos
- Prueba de secuencias de comandos de sitios cruzados reflejados
- Prueba de scripts de sitios cruzados almacenados
- Prueba de secuencias de comandos de sitios cruzados basadas en DOM
- Prueba de parpadeo cruzado del sitio
- Prueba de inyección HTML
- Prueba de inyección SQL
- Prueba de inyección de LDAP
- Prueba de inyección de ORM
- Prueba de inyección XML
- Prueba de inyección XXE
- Prueba de inyección SSI
- Prueba de inyección de XPath
- Prueba de inyección XQuery
- Prueba de inyección IMAP / SMTP
- Prueba de inyección de código
- Prueba de inyección de lenguaje de expresión
- Prueba de inyección de comandos
- Prueba de desbordamiento (pila, montón e entero)
- Prueba de cadena de formato
- Prueba de vulnerabilidades incubadas
- Prueba de división / contrabando de HTTP
- Prueba de manipulación de verbos HTTP
- Prueba de redireccionamiento abierto
- Prueba de inclusión de archivos locales
- Prueba de inclusión remota de archivos
- Compare las reglas de validación del lado del cliente y del lado del servidor
- Prueba de inyección NoSQL
- Prueba de contaminación de parámetros HTTP
- Prueba de encuadernación automática
- Prueba de asignación masiva
- Prueba de cookie de sesión nula / no válida
Negación de servicio
- Prueba de anti-automatización
- Prueba de bloqueo de cuenta
- Prueba de protocolo HTTP DoS
- Prueba de DoS comodín SQL
Lógica de negocios
- Prueba de mal uso de funciones
- Prueba de falta de no repudio
- Prueba de relaciones de confianza
- Prueba de integridad de datos
- Prueba de segregación de funciones
- Prueba de sincronización del proceso
- Prueba Número de veces que una función se puede utilizar Límites
- Prueba para la circunferencia de los flujos de trabajo
- Probar defensas contra el mal uso de la aplicación
- Prueba de carga de tipos de archivos inesperados
Criptografía
- Compruebe si los datos que deben cifrarse no están
- Verifique el uso incorrecto de algoritmos según el contexto
- Verifique el uso de algoritmos débiles
- Verifique el uso adecuado de la salazón
- Verifique las funciones de aleatoriedad
Funcionalidad arriesgada – Subidas de archivos
- Probar que los tipos de archivo aceptables están en la lista blanca
- Pruebe que los límites de tamaño de archivo, la frecuencia de carga y el recuento total de archivos estén definidos y se apliquen
- Probar que el contenido del archivo coincide con el tipo de archivo definido
- Pruebe que todas las cargas de archivos tengan un escaneo antivirus instalado.
- Probar que los nombres de archivo inseguros son desinfectados
- Pruebe que los archivos cargados no sean accesibles directamente desde la raíz web
- Probar que los archivos cargados no se sirven en el mismo nombre de host / puerto
- Probar que los archivos y otros medios están integrados con los esquemas de autenticación y autorización
Funcionalidad arriesgada – Pago con tarjeta
- Prueba de vulnerabilidades conocidas y problemas de configuración en el servidor web y la aplicación web
- Prueba de contraseña predeterminada o adivinable
- Prueba de datos que no sean de producción en un entorno en vivo y viceversa.
- Prueba de vulnerabilidades de inyección
- Prueba de desbordamientos de búfer
- Prueba de almacenamiento criptográfico inseguro
- Prueba de protección de la capa de transporte insuficiente
- Prueba de manejo incorrecto de errores
- Pruebe todas las vulnerabilidades con una puntuación CVSS v2> 4.0
- Prueba de problemas de autenticación y autorización
- Prueba de CSRF
HTML 5
- Prueba de mensajería web
- Prueba de inyección SQL de almacenamiento web
- Verifique la implementación de CORS
- Comprobar aplicación web sin conexión
Manejo de errores
- Verificar códigos de error
- Verificar rastros de pila
(De la hoja de referencia de pruebas de seguridad de aplicaciones web OSWAP)