Cuatro características básicas de seguridad del sistema de mensajería instantánea (y soluciones)

Tres dimensiones de la seguridad de los mensajes

 Dado que la seguridad es tan importante e intransigente para los servicios de mensajería instantánea, ¿cuáles son los enlaces que pueden causar problemas de seguridad en los mensajes?

En términos generales, a partir del desglose de la generación y circulación de mensajes, describimos aproximadamente la seguridad de los mensajes desde tres dimensiones:

1. Seguridad en la transmisión de mensajes

2. Seguridad del almacenamiento de mensajes

3. Seguridad del contenido de los mensajes

Cómo garantizar la seguridad de la transmisión de mensajes

La seguridad de la transmisión es una mejor comprensión Hay servicios de mensajería instantánea para la interacción de la red, y la mayoría de ellos necesitan transmitir mensajes y señalización a través de redes abiertas. Hay relativamente muchos lugares que pueden causar riesgos de seguridad. Por ejemplo, el secuestro de DNS hará que las solicitudes enviadas al servicio de mensajería instantánea sean interceptadas y enviadas a otros servidores, lo que resultará en una filtración o invalidación de contenido; o el contenido de los mensajes transmitidos en texto sin formato es secuestrado por un dispositivo intermedio y luego manipulado. El contenido se envía al servidor de mensajería instantánea para provocar errores comerciales y otros problemas. En el proceso de transmisión de mensajes, nos enfocamos principalmente en dos temas: " Seguridad de entrada de acceso " y " Seguridad de enlace de transmisión ", que también son precauciones importantes en dos escenarios de mensajería instantánea basados ​​en Internet.

1. Garantice la seguridad del acceso: HttpDNS

Para los servicios de mensajería instantánea, generalmente se proporciona un "servicio de acceso" a la red pública como una puerta de enlace para que los usuarios envíen y reciban mensajes, y se proporciona a los clientes a través de nombres de dominio. Para acceder a esta entrada, a menudo debido a varias razones, problemas de "no se puede acceder" y "error de dirección".

En cuanto al acceso al portal, uno de nuestros problemas más comunes es el secuestro de DNS. Las causas comunes de secuestro de DNS para nombres de dominio de acceso son las siguientes.

El primer tipo es que la configuración de DNS del enrutador ha sido alterada por una intrusión ilegal. Este tipo de problema es común en algunos enrutadores de banda ancha domésticos. Debido a una configuración de seguridad insuficiente (como el uso de la contraseña predeterminada), el enrutador ha sido modificado por piratas informáticos o caballos de Troya. El DNS está configurado en una dirección DNS maliciosa. Estos servidores DNS problemáticos le impedirán acceder a un determinado servidor DNS. Algunos sitios web a veces devuelven contenido falsificado o insertan anuncios emergentes.

La segunda categoría es que el LocalDNS del operador puede llevar a secuestrar la resolución del nombre de dominio de acceso.

Por ejemplo, las siguientes tres situaciones más típicas.

(1) LocalDNS es que algunos operadores almacenan en caché el contenido de algunos nombres de dominio para reducir el tráfico entre redes y obligan al nombre de dominio a apuntar a la dirección IP de su servidor de almacenamiento en caché de contenido.

(2) El operador puede modificar el TTL de DNS (tiempo de vida, tiempo de caché de DNS), lo que provocará un retraso en el efecto efectivo de los cambios de DNS y afectará la disponibilidad del servicio. El TTL de nuestro nombre de dominio comercial en línea anterior puede alcanzar las 24 horas en algunas provincias y ciudades.

(3) Para reducir la presión sobre sus propios recursos, algunos operadores pequeños envían solicitudes de DNS a otros operadores para su resolución. Las direcciones IP asignadas de esta manera pueden tener problemas de acceso entre operadores, lo que puede resultar en solicitudes más lentas o no disponibles.

solución:

(1). Para el problema de que la configuración de DNS del enrutador de banda ancha ha sido alterada, generalmente, restableceremos la configuración del enrutador y luego modificaremos la contraseña de inicio de sesión de administración de enrutamiento predeterminada. Básicamente, se puede resolver. No entraré en detalles aquí.

(2) Para resolver el secuestro de nombres de dominio y los errores de programación del LocalDNS del operador, la solución más utilizada en la industria es HttpDNS. HttpDNS evita el LocalDNS del operador e interactúa directamente con el servidor DNS a través del protocolo HTTP (en lugar del protocolo estándar DNS basado en UDP), lo que puede prevenir eficazmente el problema del secuestro del nombre de dominio por parte del operador. Y debido a que el servidor HttpDNS puede obtener la IP de salida del usuario real, puede elegir un nodo más cercano al usuario para acceder, o devolver múltiples IP de acceso a la vez, lo que permite al cliente seleccionar una IP de acceso más rápido a través de la medición de velocidad, etc. Por lo tanto, la programación de acceso general es más precisa. Por supuesto, otro requisito previo para una programación precisa es que el servicio HttpDNS en sí necesita ser compatible con una biblioteca de IP relativamente completa. En la actualidad, muchos grandes fabricantes admiten básicamente HttpDNS como modelo principal y los operadores LocalDNS como modelo complementario. Como muchos otros proveedores de nube, también proporcionan servicios externos de resolución HttpDNS. La estructura de implementación de HttpDNS es la siguiente:

Aquí hay una introducción a esta imagen. La solicitud del usuario ya no es a través del operador para consultar la resolución del nombre de dominio, sino a través de un método proporcionado de forma independiente por HTTP. El back-end de la interfaz HTTP solicita el DNS autorizado y realiza una sincronización de datos.

2. Garantizar la seguridad del enlace de transmisión: protocolo de cifrado de la capa de transporte TLS

Los riesgos de seguridad de los mensajes en el enlace de transmisión se pueden resumir básicamente como sigue.

(1) Interrupción, un atacante destruye o corta la red, destruyendo la disponibilidad del servicio.

(2) Intercepción: el atacante roba ilegalmente el contenido del mensaje transmitido, que es un ataque pasivo.

(3) Manipulación, el atacante manipuló ilegalmente el contenido del mensaje transmitido, destruyendo la integridad y la verdadera semántica del mensaje.

(4) Falsificación: el atacante falsifica mensajes de comunicación normales para simular usuarios normales o un servidor de mensajería instantánea.

solución:

1. Con respecto a la interrupción del enlace del mensaje, adoptamos un enfoque multicanal para solucionarlo.

En los sistemas de mensajería instantánea, para ataques activos como "transmisión interrumpida" que interrumpen la disponibilidad del servicio, generalmente se pueden adoptar métodos multicanal para mejorar la disponibilidad del enlace. Por ejemplo, en la implementación de muchos sistemas de mensajería instantánea, si el enlace principal falla o está conectado Si es inestable, intentará cambiar automáticamente al canal de conmutación por error. El canal de conmutación por error puede ser:

(1) Cambie selectivamente de múltiples "IP de acceso" devueltas por el servicio HttpDNS para evitar que se dañe el enlace intermedio de una determinada "IP de acceso".

(2) Cambie del protocolo de transmisión de datos actual a otros protocolos de transmisión, como cambiar del protocolo QUIC basado en el protocolo UDP al protocolo privado basado en el protocolo TCP; o proporcione el túnel HTTP para que el protocolo privado TCP encapsule los datos dos veces (Weibo Este método es compatible actualmente) para evitar ciertos ataques de interrupción contra protocolos específicos.

2. Con respecto a la interceptación, manipulación y falsificación del proceso de transmisión de mensajes, utilizamos protocolos patentados y tecnología TLS para prevenir y controlar.

La industria también tiene muchas contramedidas para protegerse contra situaciones en las que el contenido del mensaje es interceptado por un tercero, el contenido del mensaje es manipulado maliciosamente y el tercero falsifica el servidor o cliente de mensajería instantánea para obtener el mensaje o realizar operaciones maliciosas.

(1) Protocolo propietario: el sistema de mensajería instantánea que adopta el protocolo propietario binario tiene ciertas capacidades anti-robo y anti-manipulación debido a problemas de codificación. Comparado con el uso de JSON, XML, HTML y otros sistemas de transmisión de texto plano, será interceptado por un tercero. El costo relativo del descifrado de contenido es mayor, por lo que la seguridad será mejor.

(2) TLS

Por lo tanto, para resolver la serie anterior de problemas de seguridad, la industria generalmente adopta el protocolo TLS para proteger los datos comerciales. TLS combina inteligentemente "algoritmo de cifrado simétrico", "algoritmo de cifrado asimétrico", "algoritmo de intercambio de claves" y "algoritmo de código de autenticación de mensajes". La combinación de "certificado de firma digital" y "certificación CA" resuelve eficazmente los problemas de interceptación, manipulación y falsificación durante la transmisión de mensajes.

Proceso de cifrado TLS:

(1) El algoritmo de cifrado asimétrico y el algoritmo de intercambio de claves secretas se utilizan para garantizar que la clave para el cifrado de mensajes no se rompa ni se filtre.

(2) El algoritmo de cifrado simétrico cifra el mensaje para garantizar que el proceso de transmisión de datos comerciales no se pueda descifrar ni alterar después de ser interceptado.

(3) La firma digital y la certificación CA pueden verificar la validez de la clave pública del titular del certificado y evitar la falsificación de la identidad del servidor.

En comparación con el protocolo de enlace de tres vías TCP original, TLS en sí requiere más confirmación de algoritmo, intercambio de negociación de claves, verificación de certificado, etc., por lo que habrá 1-2 RTT más (tiempo de ida y vuelta) en el protocolo de enlace, por lo que TLS Existe una cierta sobrecarga adicional en la eficiencia de la conexión y el rendimiento de la transmisión.

En respuesta a este problema, la última versión de TLS 1.3 se ha optimizado para admitir enlaces de protocolo de enlace 1-RTT o incluso 0-RTT, lo que puede reducir en gran medida el consumo adicional de TLS. La versión final de TLS 1.3 se finalizó en agosto de 2018 (RFC 8446). ), tomará algún tiempo para un uso a gran escala. Por ejemplo, WeChat implementó el "protocolo MMTLS basado en TLS1.3" ya en la etapa de borrador de TLS 1.3 hace varios años para proteger la seguridad de la transmisión de mensajes.

Cómo garantizar la seguridad del almacenamiento de mensajes

Debido a las necesidades comerciales, como la itinerancia de mensajes y la mensajería fuera de línea, la mayoría de los servicios de mensajería instantánea almacenarán temporalmente los mensajes en la base de datos del servidor de mensajería instantánea y los conservarán durante un cierto período de tiempo. Para algunos contenidos de mensajes privados y datos de privacidad del usuario, si existe una consulta o base de datos ilegal por parte de personas internas Ser "arrastrado a la biblioteca" puede conducir a la divulgación de información privada. Seguridad de almacenamiento de cuenta y contraseña: algoritmo "hash unidireccional"

solución:

1. Seguridad de almacenamiento de cuentas y contraseñas: algoritmo de "hash unidireccional"

La seguridad de almacenamiento de las contraseñas de las cuentas generalmente utiliza un "algoritmo hash unidireccional de alta resistencia" (como el algoritmo SHA, MD5) y un "salt" exclusivo para cada cuenta (el "salt" aquí es un algoritmo aleatorio muy largo String) para cifrar la contraseña original para el almacenamiento. El algoritmo de "hash unidireccional" es difícil de deducir a la inversa el texto sin formato de la contraseña a partir del texto cifrado bajo craqueo no violento, y la dificultad del craqueo inverso aumenta aún más con "salt". Por supuesto, si los piratas informáticos obtienen tanto "texto cifrado" como "sal", estos métodos solo aumentarán el costo del descifrado y no pueden garantizar completamente la seguridad de la contraseña. Por lo tanto, es necesario integrar la prevención y el control completos del aislamiento de la red, la autoridad de acceso a la base de datos y la separación del almacenamiento.

2. Seguridad del almacenamiento del contenido de los mensajes: cifrado de un extremo a otro

Con respecto a la seguridad de almacenamiento del contenido del mensaje, si se almacena en el servidor, existe el riesgo de fuga independientemente del texto sin formato o el texto cifrado del contenido del mensaje. Por lo tanto, la mejor manera de garantizar la seguridad del almacenamiento del contenido de los mensajes es:

(1) El contenido del mensaje adopta un "cifrado de extremo a extremo" (E2EE) y ningún enlace descifrará el mensaje.

(2) El contenido del mensaje no se almacena en el servidor.

Se adopta el método de "cifrado de extremo a extremo" para la comunicación. A excepción del remitente y el receptor, ningún otro enlace intermedio puede obtener el contenido original del mensaje. Incluso los desarrolladores no pueden "descifrar" y obtener datos. Este método de cifrado debe detenerse como máximo. Muchos programas de chat de la industria, como WhatsApp y Telegram, utilizan un método de "cifrado de extremo a extremo" para garantizar la seguridad del contenido de los mensajes. Sin embargo, la mayoría del software de mensajería instantánea nacional, como QQ y WeChat, aún no ha adoptado el "cifrado de extremo a extremo" debido a los requisitos de seguridad de la red. La razón por la que el "cifrado de extremo a extremo" es más seguro es que es diferente del cifrado TLS del lado del servidor. Las partes que se comunican del "cifrado de extremo a extremo" generan pares de claves secretas e intercambian claves públicas, y las claves privadas se almacenan localmente. No al servidor de mensajería instantánea. El mensaje del remitente está cifrado con la clave pública del destinatario, por lo que incluso si el servidor de mensajería instantánea obtiene la información cifrada, no puede descifrar el mensaje porque no tiene la clave privada del destinatario.

Seguridad del contenido del mensaje

La seguridad del contenido se refiere principalmente al control de la identificación y difusión del contenido de los mensajes. Por ejemplo, algunos enlaces maliciosos se envían a salas o grupos de transmisión en vivo a través de mensajes instantáneos, lo que puede hacer que los usuarios que hacen clic sean atraídos a algunos sitios web de phishing; otros son antipolíticos y La difusión de fotografías, videos y otras noticias obscenas provocará efectos negativos indeseables, lo que requiere identificación y tratamiento y evitar la difusión secundaria. La seguridad del contenido del mensaje generalmente se basa en servicios de identificación de contenido de terceros para evitar el "contenido de riesgo".

solución:

1. Establezca una base de datos de vocabulario sensible y realice una identificación segura del contenido del texto.

2. Confiar en la tecnología de reconocimiento de imágenes para identificar y eliminar imágenes y videos pornográficos, imágenes publicitarias e imágenes relacionadas con la política.

3. Utilice "Voice to Text" y OCR (Reconocimiento de texto de imagen) para ayudar a minar y reconocer más imágenes y voz.

4. Utilice la tecnología de rastreo para analizar más a fondo el contenido del enlace e identificar "enlaces externos de riesgo".

En términos generales, hay muchas formas y formas de identificar la seguridad del contenido, y también hay muchos servicios SaaS de terceros maduros a los que se puede acceder y utilizar. Para el servidor de mensajería instantánea, es necesario hacer más para establecer una variedad de mecanismos de castigo que coincidan con la "identificación". Por ejemplo, si se identifica a una persona del grupo para publicar videos o imágenes pornográficas, se puede vincular para "prohibir" al usuario. Si hay varias personas en un grupo que publican videos ilegales, puede "prohibir el envío de mensajes multimedia" o "disolver el grupo" para el grupo.

para resumir:

En la mensajería instantánea, la seguridad de los mensajes es el requisito fundamental de varios escenarios sociales privados.En general, la seguridad se puede evaluar desde tres dimensiones.

1. Seguridad en la transmisión de mensajes. La "seguridad de la entrada de acceso" y la "seguridad del enlace de transmisión" son precauciones importantes en el escenario de la mensajería instantánea basada en Internet. Para la "seguridad de entrada de acceso", HttpDNS se puede utilizar para resolver el problema de la manipulación maliciosa de los enrutadores y el DNS local de los operadores; y el protocolo de cifrado de la capa de transporte TLS es un medio común para garantizar que los mensajes no se intercepten, manipulen o falsifiquen durante la transmisión de mensajes.

2. Seguridad de almacenamiento de mensajes. Para la seguridad del almacenamiento de las contraseñas de las cuentas, el "algoritmo hash unidireccional de alta resistencia" y el mecanismo "salt" se pueden utilizar para mejorar la reversibilidad de las contraseñas cifradas; para escenarios de mensajería instantánea que persiguen una seguridad extrema y las políticas lo permiten, el servidor debe hacer todo lo posible No se almacena el contenido del mensaje y se adopta un "cifrado de extremo a extremo" para proporcionar una protección más segura en la transmisión de mensajes.

3. Seguridad del contenido del mensaje. La identificación de seguridad del contenido del mensaje puede basarse en varios métodos como "vocabulario sensible", "reconocimiento de imágenes", "OCR y voz a texto", "análisis de rastreo de rastreadores externos" y otros métodos, y cooperar con el "castigo y eliminación de vínculos" para llevar a cabo la identificación de riesgos. Establecer circuito cerrado.

Supongo que te gusta

Origin blog.csdn.net/madongyu1259892936/article/details/106071631
Recomendado
Clasificación