Le invitamos a un evento conjunto de OCS y SolidSoft, el desarrollador ruso del firewall de red SolidWall WAF. La herramienta protege los recursos y aplicaciones web, controla los escenarios de operación y minimiza la posibilidad de explotar errores en la lógica de negocio: SolidWall WAF se implementa rápidamente, es fácil de usar y tiene configuraciones flexibles para tareas específicas.
En el evento participan Grigory Vasiliev, jefe del departamento de Seguridad de Aplicaciones, compañía "SolidLab", Sergey Trunov, jefe del departamento de trabajo con socios, compañía "SolidSoft".
La compañía SolidSoft lleva más de 10 años en el mercado. Comenzaron a trabajar con un grupo de especialistas egresados de la Facultad de Matemáticas Computacionales y Cibernética de la Universidad Estatal de Moscú (VMK MSU). Y hasta ahora, los graduados de VMK MSU constituyen la base del equipo, entre ellos hay incluso especialistas que continúan trabajando en el departamento de VMK. Comenzamos con el análisis de la seguridad de las aplicaciones, el análisis de la seguridad de la infraestructura, las pruebas de penetración. Es decir, la experiencia con la protección fue inicialmente a través de intentos de superarla. Estas competencias todavía se están desarrollando activamente en el grupo de compañías. Pero, al trabajar con soluciones de protección, al encontrarnos con ellas, vimos que las soluciones para proteger las aplicaciones web no son lo suficientemente efectivas porque son demasiado simples de configurar (y este es el nivel de protección solo contra ataques básicos), o hay soluciones con una gran cantidad de opciones de protección, pero no están suficientemente bien configuradas. Y las configuraciones a menudo están desactualizadas. Y por lo tanto, no es difícil superarlas en media hora. Al ver esto, nos dimos cuenta de que teníamos la oportunidad de desarrollar nuestro propio producto, del que hablaremos hoy.
Pero, antes de comenzar, quiero mencionar también que nuestra compañía también ofrece otras soluciones y servicios. El análisis de la seguridad de las aplicaciones y la infraestructura, las pruebas de penetración no han desaparecido. Existe una experiencia que ofrecemos activamente a nuestros clientes. Esta es la implementación de procesos de desarrollo de aplicaciones seguras. Protegemos las aplicaciones durante la operación.
Nuestros productos son SolidWall WAF, el buque insignia indiscutible, SolidWall DAST, un escáner de seguridad que estamos lanzando al mercado. También se está lanzando al mercado una solución de aprendizaje en línea "Práctica de desarrollo seguro". Y esto no es todo. Hay toda una serie de soluciones interconectadas para analizar la seguridad de las aplicaciones, para garantizar la protección durante la operación de las aplicaciones web. Y en esta dirección seguimos desarrollándonos activamente.
Pero volvamos al Application Firewall. No hay duda de que ahora son necesarios, nadie discute esto ahora. Especialmente después de que Rusia se enfrentó a ataques masivos después del inicio de la SMO. Y en general, es necesario comprender que es necesario proteger prácticamente todas las aplicaciones web, con las que ahora no solo está relacionada la presentación de las páginas de la tarjeta de visita del sitio, como era antes, sino también los procesos de negocio dentro de las propias organizaciones. Es decir, si hace 15 años, para penetrar en la infraestructura de la compañía, los atacantes a veces intentaban pasar a través de las aplicaciones web, y las propias aplicaciones prácticamente no les interesaban, ahora su atención se centra precisamente en las propias aplicaciones. Porque es precisamente en ellas donde ahora se basa todo el negocio. Es decir, ya dentro de las propias aplicaciones web hay procesos de negocio, cuya interrupción es crítica para la compañía y para la organización. Ya dentro de las aplicaciones web hay información crítica, cuya pérdida sería muy grave para la organización y sería un bocado apetitoso para los atacantes. Y los propios tiempos de inactividad, la inaccesibilidad de las aplicaciones web ahora también conducen a riesgos directos para el negocio, y son una amenaza directa para la reputación de la compañía. Por lo tanto, ahora las aplicaciones web y las aplicaciones móviles (como una de sus variantes) ya no son un punto de paso para los atacantes que intentan penetrar en la infraestructura corporativa. Ahora precisamente las aplicaciones son el objetivo de los ataques de los atacantes. Y la protección debe contrarrestar estos ataques en la medida adecuada.
Ahora vamos a analizar qué script es necesario para elegir esta solución. Veamos por sectores. En la diapositiva de la izquierda: Finanzas, Medios, Sector Público y clientes. Esto es lo que sabemos proteger activamente. Y no solo proteger. En cada uno de estos sectores tenemos clientes que llevan mucho tiempo utilizando con éxito nuestro producto, y la retroalimentación de ellos nos permite desarrollar nuestras soluciones en la dirección de que la especificidad del conjunto de amenazas a las que se enfrentan estas organizaciones se tenga en cuenta en nuestro producto, y que los clientes puedan contrarrestar con éxito estas amenazas. Está claro que estas amenazas son diferentes. En el comercio electrónico existe la amenaza de intentos de scraping, es decir, de obtener información con la ayuda de un bot sobre ofertas valiosas, interesantes para los competidores, o el intento de encontrar un código promocional o algunos otros datos que permitan realizar algunas transacciones financieras beneficiosas para los atacantes. En cada sector hay su propia especificidad de amenazas, y siempre la tenemos en cuenta. Aquí también se pueden añadir las organizaciones industriales, que en gran medida son estatales, y por lo tanto no se destacan en un sector aparte.
Ahora sobre el escenario de uso, sobre las tecnologías. Lo que se indica en la diapositiva en color azul a la izquierda, es lo que debe estar en cualquier firewall de aplicación web. Esta es la protección contra los ataques típicos de OWASP top 10 (Open Web Application Security Project). Este es un conjunto típico de una organización comercial que actualiza regularmente los ataques y amenazas más actuales y específicos para las aplicaciones web. El top 10 no significa que solo haya diez, y que todo termine ahí. Hay muchos más. Estos son simplemente los más actuales, de los que hay que protegerse.
Protección contra ataques sintácticos, contra ataques al usuario, a la sesión. Protección contra ataques de día cero y día uno: todo esto debe estar. Y nosotros también lo tenemos. Pero hay otras tecnologías en las que nos sentimos más seguros que nuestros competidores. Estos son los ataques lógicos. Aquí hay una comprensión de que las aplicaciones web están cada vez más vinculadas al proceso de negocio, y, en consecuencia, a la lógica de negocio dentro de las aplicaciones web. Y siempre es individual. A diferencia de las tecnologías en las que se utilizan conjuntos típicos de frameworks. Y las amenazas, las vulnerabilidades que hay allí, se parchean, y esta es una historia común, a menudo oculta por las tecnologías de firmas. Pero la lógica de negocio es propia de cada aplicación. Y las vulnerabilidades que construyen los desarrolladores, y a menudo las dejan sin atención, porque escribir una aplicación web, cuyo umbral de entrada es significativamente más bajo que el umbral de entrada para escribir una aplicación web segura y protegida, que requiere habilidades en seguridad, es mucho más difícil. Y aquí sabemos tener en cuenta estas características de la lógica de negocio tanto al configurar como al entrenar el sistema, y proteger estas aplicaciones web. Esta protección resulta ser individual.
Protección contra bots. Aquí se utilizan tecnologías únicas, de las que hablaremos un poco más adelante. Prevención del fraude.
Protección de sitios internos. Incluso si esta aplicación se utiliza dentro de la organización, a menudo son aplicaciones que están disponibles a través de una interfaz web o a través de aplicaciones móviles. Es decir, estas son las mismas tecnologías. También es necesario proteger las aplicaciones corporativas, pero aquí la especificidad puede estar relacionada con la protección contra la fuga de datos corporativos, de la actividad de los insiders, también es posible esta situación. Las aplicaciones móviles también son aplicaciones web. Es decir, lo que vemos en el teléfono móvil como una aplicación, en esencia es solo un medio de comunicación con la parte del servidor de la aplicación móvil. Las acciones principales tienen lugar en el servidor web y, en consecuencia, también es necesario protegerlo.
Sobre los recursos de mantenimiento. El caso es que la experiencia de la que hablaba antes, puede estar disponible para el cliente en el marco del acompañamiento de nuestro producto. El cliente puede elegir cualquier conjunto de servicios, comenzando por el servicio de asistencia básico (preguntas y respuestas). Esto es en el caso de que el cliente planee trabajar de forma independiente con el producto y si tiene la competencia suficiente para ello, pero simplemente a veces se requieren consultas con nuestros especialistas. Y terminando con la variante en la que las aplicaciones son protegidas por nuestros ingenieros. Es decir, una especie de outsourcing, acceso remoto, monitoreo. Y en caso de ataques e incidentes, nuestros especialistas informan al cliente, configuran ellos mismos la protección, bloquean los ataques, al cambiar las propias aplicaciones web, reajustan y modifican nuestras reglas de protección. Y como resultado de los ataques, dan recomendaciones sobre cómo se pueden proteger las aplicaciones existentes a nivel de desarrollo, hasta el punto de que nuestros expertos recomiendan realizar algunos cambios en las aplicaciones web para que sean menos vulnerables por sí mismas. Y toda la experiencia que tenemos, en el marco de estos servicios, se pone a disposición del cliente.
Ciclo activo de desarrollo de aplicaciones web. El hecho de que ahora sea una tendencia establecida, que las aplicaciones web se actualicen y cambien muy activamente, nos lleva a que la protección también debe seguir el ritmo de estos cambios. Si para nosotros son inaceptables situaciones como cuando, por ejemplo, sale una nueva versión, la reconfiguración automática de la protección aún no se ha producido, y mientras la aplicación no ha actualizado su configuración, es más vulnerable de lo habitual, entonces la configuración se realiza también en el servidor de prueba y luego se transfiere al sistema junto con la nueva versión. Esta no es una configuración desde cero, es una configuración complementaria, relativamente menos laboriosa. Resulta que la protección de la aplicación web en el marco del ciclo activo de desarrollo se logra garantizar constantemente.
Nosotros, naturalmente, nos enfrentamos a los requisitos de los reguladores y aquí un factor importante para nosotros es la certificación FSTEC. Obtuvimos este certificado hace aproximadamente un año. Y en este sentido, cumplimos con los requisitos de los reguladores. También estamos en el Registro de software nacional. Y desde este punto de vista, cumplimos con los requisitos del decreto del presidente sobre la necesidad de utilizar productos rusos.
Los sistemas que utilizan nuestro SolidWall WAF deberán ser certificados. Y en este contexto, nuestro producto, junto con todo el sistema, está listo para la certificación, y pasa las certificaciones debido a que allí se implementan las tecnologías necesarias. En particular, el requisito de enmascaramiento y el requisito de verificación constante de todo el tráfico.
Cuando se trata de ataques dirigidos, de intentos de proteger las aplicaciones de forma aún más sutil y con mayor calidad, el cliente se enfrenta a la situación de que estas soluciones simplemente no tienen esa posibilidad. Es decir, no hay "perillas" que permitan configurar la protección de estas soluciones y tecnologías de forma sutil, que garanticen esto. En el otro polo, hay soluciones potentes, que precisamente tienen muchas "perillas", pero requieren recursos humanos, hasta el punto de que hay que utilizar lenguajes de scripting integrados para configurar las reglas. Es decir, esto requiere competencias adicionales y consume tiempo de los expertos. Con esto es con lo que nos hemos encontrado. Cuando se utilizan soluciones potentes, no se utilizan a plena potencia debido a que, o bien no hay suficiente experiencia y recursos para utilizar plenamente su potencial, o bien se configuraron una vez, y su protección se quedó atrás debido a que cambiaron los vectores de amenazas, y hay que proteger la propia aplicación, que se ha vuelto muy diferente de lo que era antes. Y volvemos a encontrarnos con que estos WAF protegen mal contra los ataques dirigidos. Su protección se queda atrás o, en principio, no cumple con los requisitos exigidos. O se gastan muchos recursos para mantener esta protección en un estado actual.
Nuestra solución no es un compromiso entre estos dos polos. Combina los requisitos de una implementación operativa y protección prácticamente inmediatamente después de que la solución se haya instalado, y combina las posibilidades de una configuración sutil contra prácticamente todos los ataques a las aplicaciones web. Y esta protección no es tan laboriosa. No requiere grandes esfuerzos por parte de los ingenieros porque hay tecnologías que ahorran recursos humanos. Por supuesto, aquí se habla de aprendizaje automático.
Los escenarios principales que utilizamos son los ataques típicos, los ataques de bots, OWASP top 10, los ataques lógicos, de día cero, de día uno, la protección contra bots, contra el fraude, la protección de aplicaciones móviles. Mencionemos por separado la protección contra ataques DOS y DDOS. Cuando se trata de un ataque masivo con una enorme cantidad de solicitudes http, aunque sean simples, pero masivas, por ejemplo, ataques distribuidos, entonces en este caso, al enfrentarse a tales ataques, se necesita un producto anti DDOS típico real. Y recomendamos encarecidamente colocar soluciones de clase anti DDOS antes del WAF. Pero hay ataques que, al pasar por el filtro de limpieza gruesa, que es anti DDOS, desde el punto de vista de la protección de las aplicaciones web, pueden pasar a través de él. Por ejemplo, ataques dirigidos al agotamiento de algunos recursos de la aplicación web. En particular, si se ejecutan varias solicitudes que compararán no una o dos ofertas de productos, por ejemplo, productos en el sitio de una tienda en línea, sino 1000 o 2000. Tales solicitudes pasarán a través de anti DDOS porque no son masivas, pero al mismo tiempo pueden sobrecargar la capacidad de cálculo de la propia aplicación web. Y la protección contra tales ataques DOS inteligentes a nivel L7 es la especificidad de nuestra solución, la especificidad de Web Application Firewall.
Sobre el agotamiento de recursos se puede decir que pueden ser ataques no solo al agotamiento de los recursos de cálculo. Pueden ser ataques a la reserva de algunos recursos. Tales como, por ejemplo, la reserva de productos, billetes o habitaciones de hotel. Estos ataques están relacionados con la lógica de negocio.
Sobre nuestras ventajas. Máximo espectro de escenarios de uso. En varios segmentos sabemos proteger bien las aplicaciones especializadas prácticamente para cualquier tarea de negocio. Aquí podemos, en esencia, reflejar en las reglas de configuración la lógica de negocio de la aplicación web, tener en cuenta también la secuencia de acciones, es decir, la secuencia de solicitudes. Es obvio que para iniciar sesión, el usuario primero debe solicitar la página de autorización. Y, si inmediatamente lanza una solicitud en la que hay un nombre de usuario y contraseña, entonces esto es extraño, esto requiere atención. Esto simplemente se puede prohibir. Existe la posibilidad de rastrear respuestas como intentos de fuerza bruta. Al intentar la fuerza bruta, surge una masa de respuestas negativas del servidor web. Rastreemos esta situación, vemos que hay fuerza bruta, un intento de encontrar una contraseña o un código promocional, o alguna otra información. Podemos rastrear incluso qué parámetro se está intentando encontrar y podemos bloquear tal ataque. Observamos los resultados de estas solicitudes, y también observamos la estructura misma de las solicitudes, qué parámetro se está intentando encontrar.
Aprendizaje automático interpretado. Esto es precisamente lo que permite liberar las manos de los ingenieros para un trabajo más interesante. Nuestra solución no es una caja negra que crea reglas y, si algo de ellas no satisface al cliente, es muy difícil para el ingeniero comprender qué está sucediendo, y por qué, y configurar algo por sí mismo. Porque todas estas son reglas ocultas. En nuestro caso, las reglas creadas por la aplicación web en el marco del aprendizaje automático son interpretables y corregibles por el administrador. Es decir, se ven como si el usuario las hubiera creado él mismo. Naturalmente, el usuario llamaría a las reglas, por ejemplo, "inicio de sesión en el sistema" o "pago". El propio Web Application Firewall no llamará así a las reglas, pero creará un modelo que será prácticamente indistinguible del modelo creado por el administrador, y en este caso es más fácil para el administrador trabajar con tales resultados, reajustarlos es relativamente sencillo. Si la aplicación web ha cambiado, no es necesario rehacer todas las reglas. Entendemos en qué parte ha cambiado, podemos aplicar el aprendizaje automático precisamente en esta parte, podemos reajustar algo nosotros mismos manualmente.
Las potentes tecnologías de lucha contra los falsos positivos consisten en que, si vemos que alguna regla está causando un falso positivo, entonces para nosotros esto no es una razón para desactivar la regla. Podemos ver en qué se refleja precisamente este falso positivo, por ejemplo, en un determinado parámetro. Y para este parámetro para algunas configuraciones especiales de la solicitud, hasta el punto de que, por ejemplo, hasta un determinado límite de algún parámetro. Por ejemplo, esto puede ser un pago de hasta 100 rublos o menos de 100 rublos. Podemos bloquear esta regla. Y en el resto, esta regla funcionará y no causará falsos positivos. Y de esta manera, no reduciremos el nivel de protección debido a la lucha contra los falsos positivos. Aquí el equilibrio entre los falsos positivos y el nivel de protección resulta ser más eficaz.
A continuación, se puede hablar de las tecnologías. Modelos para todos los aspectos del funcionamiento de la aplicación. Son únicos, y en diferentes niveles. En todo el nivel de la pila, desde cosas básicas como el análisis de la ejecución de reglas, según el cual se elabora una solicitud de correspondencia, hasta los requisitos para ellas, hasta el nivel de la lógica empresarial y el nivel de la sesión. Podemos, si es necesario, reflejar secuencialmente el modelo de autorización en la configuración de WAF, y comprender que estas acciones se refieren a la secuencia de la sesión de este usuario. Aquí está, entró, trabajó, salió, todo esto se puede reflejar dentro del producto.
Falsos positivos. Aquí hay todo un espectro de herramientas que hacen que este trabajo sea cómodo. Desde bloquear falsos positivos con un solo botón hasta ajustar con precisión, eligiendo el nivel en el que se produce el falso positivo y para el que hacemos que esta configuración sea relevante. Reflejo de la lógica empresarial, incluso con una secuencia positiva de acciones empresariales, y con una negativa. Incluso podemos hacer una cadena de acciones que no deberían ocurrir en la vida real, y cuando aparezca tal secuencia de solicitudes, reaccionaremos en consecuencia.
Un algoritmo complejo de protección contra ataques de fuerza bruta y bots también es una herramienta poderosa. Es la posibilidad de bloquear la fuente de los ataques según varios parámetros, y no solo bloquear la IP, sino identificar algún parámetro relevante para el bot detectado, y esto automáticamente. Además, esto funciona tanto para aplicaciones web de navegador como para aplicaciones móviles. Por ejemplo, uno de los parámetros que se pueden tener en cuenta no es el objetivo del ataque, sino la versión de la aplicación móvil. También nos hemos encontrado con esto, cuando los atacantes analizaban la aplicación móvil y, con la ayuda de la aplicación móvil analizada, organizaban un ataque. Está claro que su versión de la aplicación era más antigua, e incluso con esta información se podía contrarrestar el ataque. Aquí la configuración es muy precisa. Y también, además de las fuentes, se puede trabajar con los objetivos de la fuerza bruta, determinar qué es exactamente lo que el atacante está tratando de enumerar y bloquear inmediatamente estas acciones.
Ahora en la página principal