Cómo hacer que mi aplicación web sea más segura

Se necesita mucho para hacer que la aplicación web sea segura. Al igual que los abogados de su bufete de abogados son conocidos por “Seguir el dinero”, simplemente debe “Seguir los datos”. Entonces, cuando siga los datos, hágase las siguientes preguntas:

a) Quién es el creador, es decir, productor de datos

b) ¿Quién posee los datos?

c) Quién es consumidor, es decir, usuarios autorizados que pueden acceder a los datos o modificarlos.

d) ¿Cómo se va a acceder a estos datos? ¿Solo aplicación web? Cualquier API? Acceso a la base de datos? ¿Cualquier otra manera? ¿Obtiene datos de otra fuente? ¿hace que sus datos estén disponibles para otra aplicación a través de FTP u otro mecanismo?

Piense en cualquier forma diferente de acceder a los datos, modificarlos.

Esto conducirá a cómo puede garantizar la integridad de los datos (no estoy hablando de la firma digital … simplemente de una manera simple … de saber que estos datos fueron modificados por la persona correcta).

Confidencialidad: una vez que sepa dónde se almacenan los datos y cómo se accede a ellos, mapee toda la ruta para ver cómo se protegen los datos en la red y cuándo se almacenan en la base de datos o el sistema de archivos. Pregúntese, ¿qué sucederá si alguien puede obtener acceso a estos datos?

Si se concentra en los datos, sabrá cuál es su exposición al riesgo.

Ahora la parte de piratería. Cada aplicación puede ser hackeada. La pregunta es qué tan fácil va a hacer que otros puedan hackear su sistema. Por lo tanto, debe crear capas … como firewalls y monitoreo de detección de intrusos, etc.

Ahora viene la última y divertida parte. El mejor truco de la aplicación web no es piratear cortafuegos ni violar su perímetro. Finge ser un usuario real pero capaz de obtener acceso a los datos. ¿Cómo es esto posible? Esto vendrá de todos los conocidos “Front-end”, es decir, cómo se accede / recupera los datos. API o UI.

Ahora mire cada categoría de tecnología y vea cuáles son los riesgos comunes conocidos. OWASP es un buen comienzo.

Luego, busca mitigaciones. ¿Sería un firewall lo suficientemente bueno? ¿Necesita autenticación o autenticación y autorización, qué funcionalidad de monitoreo está disponible, etc.

¿Cuándo necesitas ayuda externa? Puedes usar la ayuda en cualquier momento. Pero saber qué tipo de ayuda necesita puede ahorrarle mucho tiempo y dinero. No estoy seguro de cuál es tu papel. Trabaje con el equipo de Desarrollo de software y haga estas preguntas, aproximadamente el 70% sabe cómo responderlas según lo que ya se admite en el marco. Puede que simplemente no sepan por qué existe. (porque puede estar oculto bajo Seguridad). Luego, haga que Dev Team trabaje en el modelo Microsoft STRIDE.

Luego, siéntese con su equipo de infraestructura de red y hágales estas preguntas: ¿cómo protegen (o qué opciones tienen) para confiar en la comunicación entre A y B. Superponga eso con escenarios específicos basados ​​en su análisis de STRIDE o “Siga los datos”.

A continuación, necesita a alguien que conozca la seguridad … para encontrar vulnerabilidades (prueba de Pen) y corregir (Application Security / Developer). Debe asignar las vulnerabilidades identificadas en la capa adecuada (API, Web, Base de datos, etc.). Entre Pen Testing / Ethical Hacking y alguien que pueda traducir las vulnerabilidades en un diseño / implementación real, estará en camino para asegurar la aplicación.

Tendría que proteger sus datos de piratas informáticos y personas con información privilegiada (empleados maliciosos dentro de su organización).

La dificultad con los iniciados es que se les da el privilegio de acceder a los datos como empleados. (Tenga en cuenta que los piratas informáticos pueden pretender ser intrusos robando el acceso a la cuenta de los empleados)

Los hackers también pueden explotar la inyección SQL y las secuencias de comandos XSS y otras metodologías maliciosas.

Su salsa secreta sería la combinación de lo siguiente:

  1. Visibilidad en cualquier acción del usuario (inicio de sesión, visualización de datos y cambios realizados en los datos). De esa manera, puede realizar un seguimiento de quién accedió a datos confidenciales, cuándo y desde dónde. La visibilidad es crucial para detectar usuarios maliciosos.
  2. Capacidades de prevención : un mecanismo que le permitiría evitar que usuarios malintencionados accedan a datos confidenciales antes de que se produzcan daños. Bloqueo, enmascaramiento, tokenización son solo algunos ejemplos.

Si desea obtener más información sobre los aspectos técnicos, SecuPi ofrece una excelente solución para proteger las aplicaciones web y empresariales. No dude en consultarlos y obtener más información a través de su blog.

En términos de seguridad, hay muchas cosas a tener en cuenta. Como primera cosa, evalúe el entorno donde se alojará su aplicación. Aplique todas las medidas de seguridad necesarias de la arquitectura de red de su aplicación. Explore los últimos parches de seguridad de sus elementos de red (dispositivos y softwares). Si esto se hace, entonces debe trabajar en la seguridad de su aplicación. Evalúe y repare los valores de protocolo como dos fueron SSL / SSH, etc. para sus servicios web. El manejo de los ataques de seguridad a través de la aplicación se encuentra en un nivel muy mínimo. Antes de implementar la seguridad en su nivel de servicios web, su red / protocolos deben estar protegidos. En términos de servicios web, hay muchas tecnologías de protocolo de enlace de seguridad (SAML, protocolo de enlace bidireccional, etc.) ) disponible. Espero que esto ayude a tu comprensión.

No es así de fácil.

Necesita sanidad de entrada contra la inyección de SQL, las secuencias de comandos XSS y otras vulnerabilidades comunes.

Si no tiene idea de lo que está haciendo, mantenga sus datos en la red interna y no los comparta por Internet.

Te estás metiendo en un montón de problemas.

Tenemos algunas pautas en el desarrollo de nuestra aplicación web, como asegurar la conexión, verificar la IP, eliminar datos antiguos de la base de datos (los hackers no se molestarán en hackear su sitio web si no hay muchos datos), encriptar la base de datos, etc. Hay muchos más detalles en nuestro blog, https://bsuperiorsystem.com/blog

Realmente odio ser el que diga esto pero …

No deberías hacer esto. Si no sabe cómo proteger un servicio web como este desde cero, siempre dejará una falla de seguridad y alguien se aprovechará de ella.

Pregúntese esto: “¿Quiero que una firma de abogados me moleste porque tomé un trabajo que era incapaz de hacer correctamente?”, Sé cuál sería mi respuesta.

Puede dar la seguridad a una empresa que se especializa en seguridad cibernética.

cyber-ward.com es un ejemplo.