Cloud confidențial. Căutăm alternative la soluțiile deschise

Sunt inginer de profesie, dar comunic mai mult cu antreprenorii și directorii de producție. Cu ceva timp în urmă, un proprietar de companie industrială s-a adresat pentru un sfat. Cu toate că întreprinderea este mare și a fost înființată în anii '90, managementul și contabilitatea funcționează pe metode învechite în rețeaua locală.

Aceasta este o consecință a temerilor pentru afacerea proprie și a intensificării controlului din partea statului. Legile și normele pot fi interpretate foarte larg de către organele de control. Ca exemplu, putem menționa modificările din Codul Fiscal, care elimină termenul de prescripție pentru încălcările fiscale, conducând efectiv la distrugerea secretului bancar și de audit..

Ca urmare, proprietarul întreprinderii a început să caute soluții pentru stocarea sigură a informațiilor și transmiterea în siguranță a documentelor. Un „seif” virtual.

Problema a fost analizată împreună cu administratorul de sistem: este nevoie de o analiză profundă a platformelor existente.

  • serviciul nu trebuie să fie în cloud, în sensul clasic al cuvântului, adică fără stocare pe servere ale unei organizații externe. Numai serverul propriu;
  • este necesar un criptare robustă a datelor transmise și stocate;
  • de asemenea, este obligatorie posibilitatea de a șterge imediat conținutul de pe orice dispozitiv cu apăsarea unui buton;
  • soluția a fost dezvoltată în străinătate.

Am propus eliminarea celui de-al patrulea punct, deoarece aplicațiile rusești au certificate oficiale. Directorul a spus clar ce ar trebui făcut cu astfel de certificate.

Alegem opțiuni

Am selectat trei soluții (cu cât mai multe opțiuni de alegere, cu atât mai multe îndoieli):

  • Open Source - proiect Syncthing.net , susținut de dezvoltatorul entuziast Jacob Borg.
  • Resilio.com, gestionat de Resilio Inc. din SUA (în trecut, acest serviciu se numea BitTorrent Sync).
  • Proiect Pvtbox - Seif electronic de la pvtbox.net aplicații pentru sincronizare. Înregistrare cipriotă.

Proprietarul companiei se descurcă slab cu detaliile tehnice, așa că am redactat raportul sub formă de liste cu avantajele și dezavantajele fiecărei opțiuni.

Concluziile analizei

Syncthing

Advantages:

  • Open source;
  • Activitatea principalului dezvoltator;
  • Proiectul există de foarte mult timp;
  • Gratuit.

Dezavantaje:

  • Nu există client pentru interfața iOS;
  • Servere Turn lente (sunt gratuite, de aceea încetinesc). Pentru cei care
    nu sunt la curent, Turn este folosit atunci când nu este posibilă conectarea directă;
  • Configurare complexă a interfeței (este nevoie de experiență de multi-an în programare);
  • Lipsa unui suport comercial rapid.

Resilio

Pro: suport pentru toate dispozitivele și servere Turn rapide.

Dezavantaje: Unul foarte semnificativ – ignorarea totală din partea serviciului de suport a oricăror solicitări. Zero reacție, chiar și atunci când scrii de pe adrese diferite.

Pvtbox

Pro:

  • Suport pentru toate dispozitivele;
  • Servere Turn rapide;
  • Posibilitatea de a descărca un fișier fără a instala aplicația;
  • Serviciu de suport adecvat, inclusiv telefonic.

Dezavantaje:

  • Proiect tânăr (puține recenzii și evaluări pozitive);
  • Interfața site-ului este foarte „tehnică” și nu întotdeauna clară;
  • Lipsa unei documentații detaliate, la multe întrebări trebuie să apelez la suport.

Ce a ales clientul

Întrebarea lui inițială: care este sensul de a dezvolta ceva gratuit? Au renunțat la Syncthing imediat. Argumentele nu au funcționat.

După câteva zile, clientul a respins categoric Resilio Sync din cauza lipsei de suport, deoarece nu era clar unde să se adreseze în situații neprevăzute. Plus, neîncredere în înregistrarea americană a firmei.

Pentru analiza ulterioară a rămas Pvtbox Seif electronic. Am efectuat un audit tehnic complet al acestei platforme, concentrându-ne pe posibilitatea interceptării, decriptării datelor și pătrunderii neautorizate în depozitul de informații.

Procesul de audit

Am analizat conexiunile în momentul pornirii programului, în timpul funcționării și în stare de inactivitate. Traficul, conform standardelor moderne, circulă inițial criptat. Vom încerca să efectuam un atac MITM și să substituim certificatul „în mișcare” cu ajutorul Linux (Xubuntu Linux 18.04), Wireshark, Mitmproxy. Pentru aceasta, vom intermedia între aplicația Pvtbox și serverul pvtbox.net (există schimb de date cu serverul pvtbox.net prin conexiune https).

Pornim aplicația pentru a ne asigura că programul și sincronizarea fișierelor funcționează. În Linux poți observa imediat jurnalizarea dacă lansezi programul din terminal.
Cloud confidențial. Căutăm alternative la soluțiile deschise

Oprim aplicația și înlocuim adresa gazdei pvtbox.net în fișierul /etc/hosts cu privilegii de superutilizator. Înlocuim adresa cu cea a serverului nostru proxy.
Cloud confidențial. Căutăm alternative la soluțiile deschise

Acum pregătim serverul nostru proxy pentru atacul MITM pe computerul cu adresa 192.168.1.64 din rețeaua noastră locală. Pentru aceasta, vom instala pachetul mitmproxy versiunea 4.0.4.

Pornim serverul proxy pe portul 443:
$ sudo mitmproxy -p 443

Lansăm aplicația Pvtbox pe primul computer, ne uităm la ieșirea mitmproxy și la jurnalele aplicației.
Cloud confidențial. Căutăm alternative la soluțiile deschise

Mitmproxy raportează că clientul nu are încredere în certificatul falsificat de serverul proxy. În logurile aplicației, de asemenea, observăm că certificatul serverului proxy nu trece verificarea și programul refuză să funcționeze.

Instalăm certificatul serverului proxy mitmproxy pe computerul cu aplicația Pvtbox, pentru a face certificatul „de încredere”. Pe computer, vom instala pachetul ca-certificates. Apoi, vom copia certificatul mitmproxy-ca-cert.pem din directorul .mitmproxy al serverului proxy pe computerul cu aplicația Pvtbox în directorul /usr/local/share/ca-certificates.

Executăm comenzile:
$ sudo openssl x509 -in mitmproxy-ca-cert.pem -inform PEM -out mitmproxy-ca-cert.crt
$ sudo update-ca-certificates
Cloud confidențial. Căutăm alternative la soluțiile deschise

Lansăm aplicația Pvtbox. Certificatul nu a trecut din nou verificarea, programul refuză să funcționeze. Este probabil ca aplicația să folosească un mecanism de protecție Certificate pinning.

O atac similar a fost efectuat asupra gazdei signalserver.pvtbox.net, precum și asupra conexiunii peer-2-peer între noduri. Dezvoltatorul indică că aplicația pentru stabilirea conexiunilor peer-2-peer utilizează un protocol deschis webrtc, în care se folosește criptarea end-to-end prin protocolul DTLSv1.2.

Cheile sunt generate pentru fiecare stabilire de conexiuni și sunt transferate printr-un canal criptat prin signalserver.pvtbox.net.

În teorie, ar fi posibil să interceptăm mesajele offer și answer webrtc, să falsificăm cheile de criptare și să avem capacitatea de a decripta toate mesajele transmise prin webrtc. Dar nu a fost posibil să realizăm un atac mitm asupra signalserver.pvtbox.net, așa că nu există posibilitatea de a intercepta și falsifica mesajele trimise prin signalserver.pvtbox.net.

Prin urmare, nu este posibil să se efectueze acest tip de atac asupra conexiunilor peer-2-peer.

De asemenea, a fost descoperit un fișier cu certificate, livrat împreună cu programul. Fișierul se află la calea /opt/pvtbox/certifi/cacert.pem. Acest fișier a fost înlocuit cu un fișier care conține un certificat de încredere de la serverul nostru proxy mitmproxy. Rezultatul nu s-a schimbat — programul refuza să se conecteze la sistem, în log observându-se aceeași eroare,
că certificatul nu trece verificarea.

Concluziile auditului

Nu am reușit să interceptăm sau să falsificăm traficul. Numele fișierelor, dar mai ales conținutul lor, sunt transmise criptat, folosindu-se criptarea end-to-end. În aplicație sunt implementate o serie de mecanisme de protecție care împiedică interceptarea și injectarea.

Compania a achiziționat două servere dedicate (situate fizic în locații diferite) pentru acces permanent la informații. Primul server este folosit pentru primirea, procesarea și stocarea informațiilor, iar al doilea – pentru backup.

La cloudul personal obținut a fost conectat terminalul de lucru al directorului și un telefon mobil iOS. Alți angajați au fost conectați de către administratorul sistemului și suportul tehnic de la Pvtbox.

În tot acest timp, nu am primit reclamații din partea cunoscutului. Sper că recenzia mea va ajuta cititorii de pe Habr în situații similare.

Sursa: habr.com

Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS 🔥 Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS | ProHoster