Esteganografía TCP ou como ocultar a transmisión de datos en Internet

Esteganografía TCP ou como ocultar a transmisión de datos en Internet

Investigadores polacos propuxeron un novo método de esteganografía de rede baseado nas características operativas do protocolo de capa de transporte TCP, amplamente utilizado. Os autores do traballo cren que o seu esquema, por exemplo, pode servir para enviar mensaxes ocultas en países totalitarios que impoñan unha estrita censura en Internet. Intentemos descubrir cal é realmente a innovación e o que é realmente útil.

En primeiro lugar, cómpre definir o que é a esteganografía. Entón, a esteganografía é a ciencia da transmisión de mensaxes ocultas. É dicir, usando os seus métodos, as partes intentan ocultarse o feito mesmo da transferencia. Esta é a diferenza entre esta ciencia e a criptografía, que intenta facer que o contido da mensaxe sexa ilegible. Cabe sinalar que a comunidade profesional de criptógrafos despreza bastante a esteganografía pola proximidade da súa ideoloxía ao principio de "Seguridade a través da escuridade" (non sei como soa correctamente en ruso, algo así como "Seguridade pola ignorancia". "). Este principio, por exemplo, é usado por Skype Inc. — o código fonte do marcador popular está pechado e ninguén sabe realmente como se cifran exactamente os datos. Recentemente, por certo, a NSA queixouse diso, como sinalou o famoso especialista Bruce Schneier escribiu no meu blog.

Volvendo á esteganografía, responderemos á pregunta: por que é necesaria se hai criptografía? De feito, pode cifrar unha mensaxe usando algún algoritmo moderno e se usa unha clave suficientemente longa, ninguén poderá ler esta mensaxe a menos que o desexe. Non obstante, ás veces é máis útil ocultar o feito mesmo dunha transferencia secreta. Por exemplo, se as autoridades competentes interceptaron a túa mensaxe cifrada e non poden descifrala, pero realmente queren facelo, despois de todo, hai métodos non informáticos para influír e obter información. Parece distópico, pero, xa ves, isto é posible en principio. Polo tanto, sería mellor asegurarse de que aqueles que non deben saber en absoluto que a transferencia tivo lugar. Os investigadores polacos propuxeron ese método. Ademais, propoñen facelo mediante un protocolo que cada internauta utiliza mil veces ao día.

Aquí achegámonos ao Protocolo de Control de Transmisión (TCP). Explicar todos os seus detalles, por suposto, non ten sentido: é longo, aburrido e os que o necesitan xa o saben. En resumo, podemos dicir que TCP é un protocolo de capa de transporte (é dicir, funciona "sobre" IP e "baixo" protocolos de capa de aplicación, como HTTP, FTP ou SMTP), que garante a entrega fiable dos datos do remitente ao o destinatario. A entrega fiable significa que se un paquete se perde ou chega modificado, TCP encargarase de reenviar ese paquete. Teña en conta que os cambios no paquete aquí non significan distorsión intencionada dos datos, senón erros de transmisión que se producen a nivel físico. Por exemplo, mentres o paquete viaxaba por cables de cobre, un par de bits cambiaron o seu valor ao contrario ou perdéronse por completo entre o ruído (por certo, para Ethernet, o valor da taxa de erro de bits adoita ser de 10 a 8). ). A perda de paquetes en tránsito tamén é unha ocorrencia relativamente común en Internet. Pode ocorrer, por exemplo, debido á carga dos enrutadores, o que leva ao desbordamento do búfer e, como resultado, ao descarte de todos os paquetes que chegan recentemente. Normalmente, a proporción de paquetes perdidos é de aproximadamente o 0.1%, e cun valor dun par de por cento, TCP deixa de funcionar normalmente; todo será terriblemente lento para o usuario.

Así, vemos que o reenvío (retransmisión) de paquetes é un fenómeno frecuente para TCP e, en xeral, necesario. Entón, por que non usalo para as necesidades de esteganografía, dado que o TCP, como se indicou anteriormente, úsase en todas partes (segundo varias estimacións, hoxe a cota de TCP en Internet alcanza o 80-95%). A esencia do método proposto é enviar a mensaxe reenviada non o que estaba no paquete principal, senón os datos que estamos tentando ocultar. Non obstante, detectar tal substitución non é tan sinxelo. Despois de todo, cómpre saber onde buscar: o número de conexións TCP simultáneas que pasan polo provedor é simplemente enorme. Se coñeces o nivel aproximado de retransmisión na rede, podes axustar o mecanismo de reenvío esteganográfico para que a túa conexión non sexa diferente das demais.

Por suposto, este método non está exento de inconvenientes. Por exemplo, desde un punto de vista práctico, implementalo non será tan sinxelo: requirirá cambiar a pila de rede nos sistemas operativos, aínda que non hai nada de prohibitivamente difícil. Ademais, se tes recursos suficientes, aínda é posible detectar paquetes "segredos" visualizando e analizando todos os paquetes da rede. Pero, por regra xeral, isto é practicamente imposible, polo que adoitan buscar paquetes e conexións que destaquen dalgún xeito, e o método proposto é precisamente o que fai que a túa conexión non sexa destacable. E ninguén che impide cifrar datos secretos por se acaso. Ao mesmo tempo, a propia conexión pode permanecer sen cifrar para espertar menos sospeitas.

Os autores da obra (por certo, para os interesados, velaquí she) demostrou a nivel de simulación que o método proposto funciona segundo o previsto. Quizais no futuro alguén implemente a súa idea na práctica. E entón, con sorte, haberá un pouco menos de censura en Internet.

Fonte: www.habr.com

Engadir un comentario