Qué es la seguridad web: historia e importancia
Antes de abrir una sola petición HTTP conviene saber de qué hablamos cuando decimos "seguridad web", de dónde viene el problema y por qué ocupa a tantos equipos de ciberseguridad. Esta lección le da ese mapa y el vocabulario que usará en todo el curso.
Qué es la seguridad web
La seguridad web es la disciplina que protege los sitios, las aplicaciones y las API que funcionan sobre la web para que solo hagan lo que sus dueños quieren, solo para quien tiene permiso y sin exponer datos.
Para entenderla necesita dos ideas previas:
- La web es un sistema de documentos y aplicaciones que se piden y se entregan por internet usando el protocolo HTTP. Internet es la red de redes; la web es uno de los servicios que viajan por ella, como el correo.
- Una aplicación web es un programa que usted usa desde el navegador sin instalarlo: la banca en línea, una tienda, el sistema de matrícula de una universidad. Tiene una parte en su navegador y otra en un servidor, normalmente conectada a una base de datos.
La seguridad web no trata de "proteger la página bonita", sino de proteger la lógica y los datos que hay detrás: quién puede ver un pedido, cómo se guardan las contraseñas, qué pasa si alguien escribe algo inesperado en un formulario.
Breve historia
| Año | Hito |
|---|---|
| 1989 | Tim Berners-Lee propone en el CERN un sistema de hipertexto: nace la idea de la web |
| 1991 | Se publica el primer sitio web |
| 1994 | Netscape introduce las cookies para que los sitios "recuerden" al usuario |
| 1995 | Llegan JavaScript y SSL, el antecesor de TLS y de HTTPS |
| 1998 | Se documenta públicamente la inyección SQL en la revista Phrack |
| 2000 | Ingenieros de Microsoft bautizan el cross-site scripting, XSS |
| 2001 | Se funda OWASP como comunidad abierta de seguridad de aplicaciones |
| 2003 | OWASP publica su primer Top 10 |
| 2017 | Equifax expone datos de unos 147 millones de personas por un componente web sin parchar |
| 2021 | Log4Shell obliga a medio mundo a revisar sus dependencias |
La lección de la historia es sencilla: la web nació para compartir documentos entre científicos que confiaban entre sí. Las cookies, los formularios, los pagos y las API se agregaron después, encima de un diseño que no había pensado en atacantes. Muchas fallas de hoy son la misma idea de 1998 con ropa nueva.
Por qué importa en ciberseguridad y en el trabajo
Casi todo lo que una empresa expone a internet es una aplicación web o una API. Por eso es una de las puertas de entrada más usadas en los incidentes reales, junto con el phishing y las credenciales robadas.
Quienes trabajan con seguridad web todos los días:
- Desarrolladores, que escriben el código y deben evitar las fallas desde el diseño.
- Analistas de un SOC, que leen registros de servidores web y deben reconocer un ataque de inyección o de fuerza bruta en una línea de log.
- Auditores y pentesters, que con autorización buscan fallas antes que los delincuentes.
- Equipos de DevSecOps y de nube, que configuran servidores, cabeceras y dependencias.
Si no domina estas bases, le pasará algo frecuente: ver un código 200 en un registro y no notar que ahí hubo un acceso indebido, o aprobar un despliegue con el modo de depuración encendido.
Dónde se usa
| Lugar | Ejemplo |
|---|---|
| Comercio en línea | Tiendas, pagos con tarjeta, carritos |
| Banca y servicios públicos | Banca en línea, pagos de impuestos, citas médicas |
| API | Las aplicaciones del celular hablan con su servidor por HTTP |
| Herramientas internas | Paneles de administración, intranets, sistemas de inventario |
| Nube | Consolas de administración y servicios expuestos en la nube |
| Dispositivos | Routers, cámaras e impresoras con su panel web de configuración |
Conceptos clave
| Concepto | Qué significa |
|---|---|
| Vulnerabilidad | Una debilidad en el código, el diseño o la configuración que alguien puede aprovechar |
| Amenaza | Quien o lo que podría aprovechar esa debilidad: un delincuente, un bot, un empleado descontento |
| Riesgo | La combinación de qué tan probable es que ocurra y cuánto daño causaría |
| Superficie de ataque | Todas las partes expuestas: formularios, URL, API, cabeceras, archivos subidos |
| Autenticación | Comprobar quién es usted, por ejemplo con contraseña y un segundo factor |
| Autorización | Decidir qué puede hacer usted una vez identificado |
| Payload | El dato preparado que se envía para probar o aprovechar una falla |
| OWASP Top 10 | La lista de las diez categorías de riesgo más críticas en aplicaciones web |
Cómo leer las fichas de herramientas
En el curso usará algunas herramientas de terminal, como curl, docker o pip-audit. Cada una tiene una ficha con su sintaxis. Léala así:
curl [OPCIONES] URL...- Lo que está entre corchetes es opcional.
- Lo que está en MAYÚSCULAS lo reemplaza usted por un valor real, como una dirección.
- Los tres puntos indican que puede repetir ese elemento.
Si olvida una opción, pida ayuda a la propia herramienta con curl --help o docker run --help, o abra su manual con man curl en Linux y Mac.