Red de conocimiento informático - Conocimiento del nombre de dominio - El camino hacia la construcción de sistemas de seguridad de aplicaciones

El camino hacia la construcción de sistemas de seguridad de aplicaciones

Siempre que se menciona la seguridad de las aplicaciones, siempre hay un concepto inseparable: la construcción SDL. Sin embargo, entre la mayoría de las empresas de Internet, a ninguna de SDL le está yendo bien. SDL enfatiza los procesos de seguridad e interviene desde la perspectiva de las necesidades del negocio. A lo largo de todo el ciclo de investigación y desarrollo empresarial, cada pieza se guía por los métodos y sistemas de seguridad correspondientes. La seguridad se agrega como un atributo del negocio y SDL permite la inspección y evaluación del negocio en el proceso.

Esta parte trata principalmente de clasificar el proceso, combinando la seguridad con el proceso de RD del proyecto para formar el proceso de control de desarrollo de seguridad del proyecto. La seguridad se ejecuta a lo largo de todo el proceso de RD del proyecto, incluido el análisis temprano de la demanda, el diseño de seguridad, escritura de código y codificación, implementación en línea, pruebas en entornos de prueba y operación en línea en entornos formales. Se puede considerar que en este momento se adopta el proceso SDL tradicional.

Aquí hay un problema. Si el volumen de negocios aumenta, los costos laborales serán enormes. Muchas empresas aquí combinan el concepto de DevSecOps para resolver algunos problemas de mano de obra insuficiente. El marco establece que los departamentos de investigación y desarrollo, operaciones y seguridad trabajan en equipo para ser responsables de la seguridad de la empresa. La seguridad no es sólo responsabilidad del equipo de seguridad, sino de todos en la empresa. Primero, hablemos brevemente sobre el concepto y la implementación de DevSecOps.

Para la implementación de DevSecOps, esto es solo un marco y una metodología. En cuanto a la implementación técnica específica, se sabe que Sec está integrado en Dev y Ops. La forma de integrar la combinación debe determinarse de acuerdo con las diferentes características de las diferentes empresas.

En materia de seguridad, la tarea principal es proteger el negocio de la empresa de intrusiones y ataques externos, y los ataques pueden detectarse y detenerse a tiempo.

El marco DevSecOps requiere la construcción de diferentes sistemas de seguridad, y los sistemas correspondientes deben optimizarse y mejorarse continuamente para cubrir las diferentes etapas del marco. En el proceso de implementación real, la mayoría de las empresas pueden involucrar el siguiente desarrollo de capacidades diferentes. En el proceso de implementación específico, el autor cree que se puede resumir brevemente en varias capacidades: la capacidad de descubrir activamente, la capacidad de descubrir pasivamente, la capacidad de administrar y controlar negocios y la capacidad de operar de manera segura.

La capacidad de descubrir de forma proactiva es simplemente descubrir de forma proactiva problemas de seguridad, vulnerabilidades de seguridad y riesgos de seguridad en el negocio. Las tecnologías comúnmente utilizadas en la industria incluyen escaneo de caja negra, escaneo de caja blanca, evaluación y pruebas de seguridad, confrontación roja y azul, etc.

Esto es algo que toda empresa tendrá, y también es una parte clave de la construcción inicial. Algunos de ellos utilizan herramientas de escaneo comerciales como awvs y appscan, y otros utilizan métodos de desarrollo propio.

Aquí no se mencionan las herramientas de escaneo comercial. Para las empresas de Internet, la mayoría utiliza herramientas de escaneo de desarrollo propio. Hablemos brevemente sobre algunos de los puntos clave involucrados en los escáneres de desarrollo propio:

Tome las cajas blancas como ejemplo, excepto los motores de desarrollo propio de varias grandes empresas de Internet, se entiende que todos los utilizan. Herramientas comerciales Durante el proceso de implementación, también se examinaron muchas herramientas de escaneo de caja blanca: checkmarx, cobertura, codeql y sonarqube.

Checkmarx y cobertura tienen complementos de sonarqube, que pueden funcionar como motores de sonda. Para el sonar, muchas empresas de Internet escanean la calidad del código basándose en esto, lo que en realidad brinda una gran comodidad a la capacidad de hacer cuadros blancos.

Checkmarx funciona mejor en la web que la cobertura y es bueno para la experiencia del usuario y las operaciones. El complemento checkmarx está integrado en sonar, por lo que la empresa no necesita integrar checkmarx por separado. Solo necesita integrar sonar para agregar capacidades de escaneo de seguridad de acuerdo con el proceso anterior.

Sin embargo, hay algo a considerar. En el caso de los hallazgos de seguridad, la empresa a menudo no sabe si se trata de un falso positivo o un verdadero riesgo de seguridad. Esto requiere que el personal de seguridad intervenga en el proceso, revise los resultados del análisis del código estático, determine las vulnerabilidades y las envíe a la empresa, en lugar de ignorarlas directamente. Esto requiere mucha participación manual en la etapa inicial y es necesario optimizar continuamente las reglas y ajustar las estrategias para reducir los falsos positivos.

Mediante el análisis de los resultados en la etapa inicial, se pueden descartar algunas reglas con altas tasas de falsos positivos, dejando solo las reglas con altos niveles de amenaza para garantizar que la inteligencia artificial pueda cubrir el proceso de la vida todos los días.

En la etapa posterior, dado que Sonar tiene una interfaz API, podemos construir una plataforma segura de análisis de código estático basada en Sonar, proporcionar acceso API a CI, conectarnos a la plataforma de auditoría y gestión de vulnerabilidades y ajustar reglas y agregar nuevas reglas a través de la plataforma. De esta forma, en todo el CI existen dos plataformas, Sonar y análisis de código estático. Las empresas solo deben preocuparse por la calidad del código del sonar, y la seguridad solo necesita iniciar sesión en la plataforma de análisis de código estático para revisar las vulnerabilidades del escaneo de caja blanca.

Esto implica un subproyecto en el cuadro blanco: el complemento de escaneo de cuadro blanco, como detección de cuadro blanco, se ha movido más hacia la izquierda y se escanea directamente cuando la empresa escribe código. . Esto se puede lograr envolviendo una capa basada en:/alibaba/p3c.

También hay un proyecto de caja blanca: descubrimiento de vulnerabilidades de componentes de terceros. Esto se puede lograr comprando software comercial como Blackduck o Xray, que son transparentes para la empresa siempre que el personal de seguridad controle los procesos y políticas.

La confrontación rojo-azul es una forma de descubrir problemas y riesgos de seguridad a un nivel más profundo. Organice una operación del equipo azul de vez en cuando para atacar un objetivo principal por cualquier medio necesario para obtener el objetivo principal. Puede descubrir mejor los problemas de seguridad y los puntos de riesgo de seguridad en todo el sistema empresarial y ayudar al equipo rojo a optimizar y construir la seguridad. Una vez que la confrontación rojo-azul alcanza un cierto nivel, se puede considerar la construcción clave, que es muy importante para descubrir y avanzar en todo el riesgo.

La capacidad de descubrir pasivamente riesgos de seguridad se puede lograr mediante monitoreo de seguridad, honeypots y otras tecnologías.

El seguimiento se puede dividir en dos categorías: seguimiento de riesgos no descubiertos, seguimiento de riesgos y trazabilidad después de los riesgos.

Para controlar los riesgos, es posible prevenirlos con antelación. Por ejemplo, como se mencionó anteriormente, si no hay ningún problema con la clasificación de activos, puede escanear y verificar los nuevos activos de la empresa todos los días. Por ejemplo, si el nombre de dominio recién agregado es un sistema de gestión, si no se siguen los procedimientos de seguridad internos, surgirán problemas y será necesario rectificarlos directamente. Los nuevos nombres de dominio y servidores se pueden escanear directamente con el escáner para descubrir inmediatamente si existen vulnerabilidades.

Monitoreo cuando ocurren riesgos:

- Monitoreo del tráfico de ataques: Esto significa tener una gran cantidad de escáneres y una gran cantidad de datos de prueba para monitorear el tráfico, y cuando se activa una alarma directa. detectado, se puede combinar con SOC para el análisis y procesamiento de datos, y WAF se puede utilizar para el bloqueo automático de IP y otras medidas de defensa, abriendo así varias capacidades de defensa interna y realizando arreglos automáticos. Los registros de tráfico posteriores utilizan modelos de big data para descubrir ataques sin firma.

-Monitoreo DNS: muchas vulnerabilidades como ejecución de comandos, inyección SQL, SSRF, etc. Principalmente a través de la detección de DNS, las solicitudes de DNS iniciadas por sistemas internos se pueden capturar en el servidor DNS interno. Supervise los registros de DNS de esta manera e inicialmente cree algunas listas negras para ver si alguna máquina encuentra estas solicitudes de DNS maliciosas. Al analizar estas máquinas, es posible descubrir riesgos de seguridad desconocidos.

-Monitoreo del registro de ejecución de SQL: sigue siendo muy útil para el descubrimiento de inyección SQL. La inyección SQL suele tener algunas características de inyección. Siempre que estas características coincidan, se puede descubrir que una empresa está siendo atacada mediante inyección SQL.

Además, el monitoreo de almacenes de códigos externos y almacenes de documentos también pertenece al sistema de monitoreo, incluido el monitoreo de github, el monitoreo de discos de red Baidu, etc. Este GitHub es fácil de decir, existen muchos sistemas de herramientas de código abierto y se puede agregar información comercial clave al monitoreo, pero no es fácil realizar un monitoreo como Baidu Netdisk.

Esta también es una buena manera de descubrir ataques. No solo puede descubrir POC, diccionario de contraseñas y otra información utilizados externamente, sino que también descubre algunos métodos de ataque desconocidos y comportamientos APT.

Las capacidades de control y gestión de servicios se utilizan a menudo como WAF. ¿Por qué poner capacidades WAF en la gestión y el control de la seguridad? WAF puede administrar a qué IP se puede acceder, a qué IP no se puede acceder, a qué rutas se puede acceder y a qué rutas no se puede acceder. También es la gestión del acceso al servicio.

WAF tiene muchos productos comerciales maduros en uso y también puede desarrollarse de forma independiente. Si es de desarrollo propio, se basa en la coincidencia convencional en la etapa inicial y se completa haciendo coincidir si el valor del parámetro de la posición del parámetro correspondiente contiene palabras clave. Para lograr una alta precisión y una baja tasa de falsas alarmas en la etapa posterior, aún se necesitan el aprendizaje automático y el análisis semántico.

Actualmente, para la construcción de sistemas de confianza cero tan populares en la gestión y control empresarial, el modelo de puerta de enlace de seguridad es más común. Hablaré sobre contenido de confianza cero cuando tenga tiempo. No sé mucho en este momento, así que no entraré en detalles y realizaré más investigaciones.

Cuando se trata de operaciones de seguridad, mucha gente piensa en organizar algunas actividades de seguridad y realizar trabajos ocasionales. En mi opinión, las capacidades operativas de seguridad de una empresa pueden reflejar verdaderamente sus capacidades de seguridad. La operación segura es la fuerza impulsora para la optimización y mejora continua de los procesos de SDL, señalando el camino y la dirección para el desarrollo, la planificación estratégica y la construcción.

Sin operaciones técnicas no se puede realizar una posterior optimización y mejora. Sin tecnología, las operaciones están vacías y no se pueden implementar. Las operaciones de seguridad incluyen operaciones externas y operaciones internas, y las diferentes operaciones se pueden dividir en operaciones no técnicas y operaciones técnicas.

Las operaciones no técnicas en operaciones externas incluyen principalmente la construcción y promoción de marcas de seguridad, principalmente para proporcionar a la empresa influencia en la industria, a fin de atraer mejor investigadores de seguridad externos para que nos sirvan y atraer mejor a los externos. personal de seguridad para participar en la construcción de seguridad de la empresa desde una perspectiva externa.

Operaciones técnicas externas: organizar personal técnico para participar en concursos externos, reuniones, etc. , publicar artículos técnicos, etc. Y demostrárselo con capacidades técnicas, demostrando así la fortaleza técnica de la empresa en la industria.

Operaciones internas no técnicas: resume los datos de varias capacidades para su análisis y muestra los resultados de cada capacidad en forma numérica. Por un lado, puede mostrar el progreso del desarrollo de capacidades al jefe y también puede permitir que todos conozcan los resultados de su trabajo.

La implementación específica se puede mostrar en una gran pantalla de datos y completarse a través de la plataforma SOC.

Operaciones técnicas internas: retroalimenta el desarrollo de diversas capacidades a través de los resultados de operaciones no técnicas, optimiza el desarrollo de diversas capacidades a través de problemas de seguridad internos y externos, compensa las deficiencias y promueve la optimización de procesos y la dirección de construcción de DevSecOps.

Implementación detallada: Requiere principalmente que el personal de operación tenga una mejor comprensión del desarrollo de capacidades de cada parte. Al observar el problema, pueden descubrir algo más profundo, lo que a su vez contribuye a las capacidades de seguridad de cada resultado.