Si se consulta algún FAQ en cualquiera aplicación típica (antes de adquirirla), uno se quedará tranquilo ya que nos informaran de que la aplicación se ha desarrollado de forma segura. Por ejemplo: Este sitio es absolutamente seguro, ha sido diseñado con tecnología de 128 bit SSL para impedir a usuarios no autorizados que puedan ver cualquiera información no permitida. Podrá utilizar este sitio Web sin tener que preocuparse ya que datos están a salvo con nosotros.
En prácticamente cada caso, se piensan que por utilizar SSL ya las aplicaciones o el sitio Web es seguro. A menudo el usuario debe comprobar el tipo de certificación que utiliza el sitio, verificar los protocolos criptográficos que se utilizan, etc. De hecho, la mayoría de las aplicaciones Web son inseguras, y por lo general no tienen nada que ver con SSL. Se han realizado cientos de pruebas en los últimos años contra aplicaciones Web en donde se han encontrado diferentes categorías comunes de vulnerabilidades. A continuación paso a mencionar las mas comunes:
■ Broken authentication (67%) (Autenticación Rota) – Esta categoría de vulnerabilidad abarca varios defectos dentro del mecanismo de Login de la aplicación, que puede permitir a un atacante adivinar contraseñas débiles, lanzar un ataque de fuerza bruta o evitar la conexión totalmente.
■ Broken access controls (78%) (control de acceso rotos) – Esto implica casos en donde la aplicación falle en la protección correcta del acceso a sus datos y la funcionalidad, potencialmente permitiendo a un atacante ver los datos sensibles de otros usuarios del servidor, o realizar o tomar permisos haciendo escalado de privilegios.
■ SQL injection (36%) (Inyección de SQL) – Esta vulnerabilidad permite a un atacante introducir datos para interferir entre la interacción de una aplicación con bases de datos. Un atacante puede ser capaz de recuperar datos arbitrarios de la aplicación, interferir con su lógica o ejecutar órdenes sobre el mismo servidor de base de datos.
■ Cross-site scripting (91%) (XSS) – Esta vulnerabilidad permite a un atacante apuntar a otros usuarios de la aplicación, potencialmente ganando acceso a sus datos, realizando acciones no autorizadas o realizando otros ataques contra ellos.
■ Information leakage (81%) (Perdida de Información)- Esto implica casos donde una aplicación divulga información sensible que puede ser usada por un atacante la cual por ejemplo la podría utilizar para desarrollar un ataque contra la misma aplicación.
SSL es una tecnología excelente para proteger la confidencialidad y la integridad de datos durante el tránsito entre el browser (navegador) del usuario y el servidor web. Ayuda a defenderse contra (eavesdroppers) curiosos, como tambien puede proporcionar seguridad al usuario acerca de la identidad del servidor web con el que en un momento dado puedan negociar, pero esto no detiene ataques que van directamente contra el servidor o contra los componentes de una aplicación cliente, que es como la mayoria de los ataques operan hoy en dia. Específicamente, SSL no previene ningunas de las vulnerabilidades mencionadas anteriormente ya que Independientemente de que se utilice o no SSL, la mayor parte de las aplicaciones web todavía contienen fallos de seguridad.
by KomZ (vulnerability TEAM)