Vertrouwelijke "wolk". Wij zoeken naar een alternatief voor open oplossingen

Van opleiding ben ik ingenieur, maar ik communiceer meer met ondernemers en productiedirecteuren. Enige tijd geleden vroeg de eigenaar van een industrieel bedrijf om advies. Ondanks het feit dat de onderneming groot is en in de jaren 90 is opgericht, werken management en boekhouding op de ouderwetse manier op een lokaal netwerk.

Dit is een gevolg van de angst voor hun zaken en de toegenomen controle door de staat. Wet- en regelgeving kan door keuringsinstanties zeer ruim worden geïnterpreteerd. Een voorbeeld zijn de wijzigingen in de Belastingwet, het opheffen van de verjaringstermijn voor belastingovertredingen, daadwerkelijke vernietiging bank- en accountantsgeheim.

Als gevolg hiervan ging de bedrijfseigenaar op zoek naar oplossingen voor betrouwbare opslag van informatie en veilige overdracht van documenten. Virtueel "veilig".

We hebben samen met een fulltime systeembeheerder aan het probleem gewerkt: we hadden een diepgaande analyse van bestaande platforms nodig.

  • de dienst mag niet cloudgebaseerd zijn, in de klassieke zin van het woord, d.w.z. zonder opslag bij de faciliteiten van een externe organisatie. Alleen uw server;
  • sterke encryptie van verzonden en opgeslagen gegevens is vereist;
  • de mogelijkheid om met één klik op de knop inhoud dringend van elk apparaat te verwijderen is verplicht;
  • de oplossing werd in het buitenland ontwikkeld.

Ik stelde voor om het vierde punt te schrappen, omdat... Russische applicaties hebben officiële certificaten. De directeur zei direct wat er met dergelijke certificaten moest gebeuren.

Opties kiezen

Ik heb drie oplossingen geselecteerd (hoe meer keuzes, hoe meer twijfels):

De eigenaar van het bedrijf heeft weinig verstand van technische details, dus heb ik het rapport opgemaakt in de vorm van lijsten met voor- en nadelen van elke optie.

Analyse resultaten

Syncthing

Voors:

  • Open source;
  • Activiteit van de hoofdontwikkelaar;
  • Het project bestaat al heel lang;
  • Vrij.

Tegens:

  • Er is geen client voor de iOS-shell;
  • Slow Turn-servers (ze zijn gratis, dus ze vertragen). Voor diegene die
    niet op de hoogte, Turn wordt gebruikt wanneer het onmogelijk is om rechtstreeks verbinding te maken;
  • Complexe interface-installatie (vereist vele jaren programmeerervaring);
  • Gebrek aan snelle commerciële ondersteuning.

resilium

Voors: ondersteuning voor alle apparaten en snelle Turn-servers.

Tegens: Een zeer belangrijke is het volledig negeren van verzoeken door de ondersteunende dienst. Geen reactie, zelfs als u vanaf verschillende adressen schrijft.

Pvtbox

Voors:

  • Ondersteunt alle apparaten;
  • Fast Turn-servers;
  • Mogelijkheid om een ​​bestand te downloaden zonder de applicatie te installeren;
  • Adequate ondersteuningsservice, incl. Telefonisch.

Tegens:

  • Jong project (weinig recensies en goede recensies);
  • De interface van de site is erg “technisch” en niet altijd duidelijk;
  • Er is geen grondig gedetailleerde documentatie; veel problemen vereisen ondersteuning.

Wat heeft de klant gekozen?

Zijn eerste vraag is: wat heeft het voor zin om iets gratis te ontwikkelen? Het synchroniseren werd onmiddellijk stopgezet. De argumenten werkten niet.

Een paar dagen later heeft de klant Resilio Sync categorisch afgewezen wegens gebrek aan ondersteuning, omdat... Het is niet duidelijk waar je heen moet in een noodsituatie. Plus wantrouwen jegens de Amerikaanse registratie van het bedrijf.

Voor verdere analyse blijft de Pvtbox Electronic-kluis over. We hebben een volledige technische audit van dit platform uitgevoerd, waarbij we ons concentreerden op de mogelijkheid van onderschepping, decodering van gegevens en ongeoorloofde toegang tot de informatieopslag.

Auditproces

We hebben de verbindingen geanalyseerd aan het begin van het programma, tijdens bedrijf en in een rustige toestand. Verkeer wordt volgens moderne maatstaven in eerste instantie versleuteld. Laten we proberen een MITM-aanval uit te voeren en het certificaat direct te vervangen met behulp van Linux (Xubuntu Linux 18.04), Wireshark, Mitmproxy. Om dit te doen, zullen we een intermediair introduceren tussen de Pvtbox-applicatie en de pvtbox.net-server (er is gegevensuitwisseling met de pvtbox.net-server via een https-verbinding).

We starten de applicatie om er zeker van te zijn dat de programma- en bestandssynchronisatie erin werkt. In Linux kun je de logboekregistratie onmiddellijk waarnemen als je het programma vanaf de terminal uitvoert.
Vertrouwelijke "wolk". Wij zoeken naar een alternatief voor open oplossingen

Schakel de applicatie uit en vervang het pvtbox.net-hostadres in het bestand / Etc / hosts met superuser-rechten. We vervangen het adres door het adres van onze proxyserver.
Vertrouwelijke "wolk". Wij zoeken naar een alternatief voor open oplossingen

Laten we nu onze proxyserver voorbereiden op een MITM-aanval op een computer met het adres 192.168.1.64 op ons lokale netwerk. Om dit te doen, installeert u het mitmproxy-pakket versie 4.0.4.

We starten de proxyserver op poort 443:
$ sudo mitmproxy -p 443

We starten het Pvtbox-programma op de eerste computer en bekijken de mitmproxy-uitvoer en applicatielogboeken.
Vertrouwelijke "wolk". Wij zoeken naar een alternatief voor open oplossingen

Mitmproxy meldt dat de client het spoofcertificaat van de proxyserver niet vertrouwt. In de applicatielogboeken zien we ook dat het proxyservercertificaat de verificatie niet doorstaat en het programma weigert te werken.

Een proxyservercertificaat installeren mitmproxy naar een computer met de Pvtbox-applicatie om het certificaat “vertrouwd” te maken. Installeer het ca-certificatenpakket op uw computer. Kopieer vervolgens het mitmproxy-ca-cert.pem-certificaat van de map .mitmproxy van de proxyserver naar de computer met de Pvtbox-applicatie naar de map /usr/local/share/ca-certificates.

We voeren de commando's uit:
$ sudo openssl x509 -in mitmproxy-ca-cert.pem -inform PEM -out mitmproxy-ca-cert.crt
$sudo update-ca-certificaten
Vertrouwelijke "wolk". Wij zoeken naar een alternatief voor open oplossingen

Start de Pvtbox-applicatie. Het certificaat is opnieuw niet geverifieerd en het programma weigert te werken. De applicatie maakt waarschijnlijk gebruik van een beveiligingsmechanisme Certificaat vastzetten.

Een soortgelijke aanval werd uitgevoerd op de gastheer signaalserver.pvtbox.net, evenals de peer-2-peer-verbinding zelf tussen knooppunten. De ontwikkelaar geeft aan dat de applicatie voor het tot stand brengen van peer-2-peer verbindingen gebruik maakt van het open webrtc-protocol, waarbij gebruik wordt gemaakt van end-to-end protocol-encryptie DTLSv1.2.

Voor elke verbindingsconfiguratie worden sleutels gegenereerd en via een gecodeerd kanaal verzonden signaalserver.pvtbox.net.

Theoretisch zou het mogelijk zijn om webrtc-aanbod- en antwoordberichten te onderscheppen, de encryptiesleutels daar te vervangen en alle berichten die via webrtc binnenkomen te kunnen decoderen. Maar het was niet mogelijk om een ​​mitm-aanval uit te voeren op signalserver.pvtbox.net, dus er is geen manier om berichten die via signalserver.pvtbox.net worden verzonden te onderscheppen en te vervangen.

Dienovereenkomstig is het niet mogelijk om deze aanval uit te voeren op een peer-2-peer-verbinding.

Er werd ook een bestand ontdekt met certificaten die bij het programma werden geleverd. Het bestand bevindt zich op /opt/pvtbox/certifi/cacert.pem. Dit bestand is vervangen door een bestand dat een vertrouwd certificaat van onze mitmproxy-proxy bevat. Het resultaat veranderde niet - het programma weigerde verbinding te maken met het systeem, dezelfde fout werd waargenomen in het logboek,
dat het certificaat de verificatie niet doorstaat.

Auditresultaten

Ik kon het verkeer niet onderscheppen of vervalsen. Bestandsnamen, en vooral de inhoud ervan, worden gecodeerd verzonden, er wordt gebruik gemaakt van end-to-end-encryptie en de applicatie implementeert een aantal beveiligingsmechanismen die afluisteren en infiltratie voorkomen.

Als gevolg hiervan kocht het bedrijf twee dedicated servers (fysiek op verschillende locaties) voor permanente toegang tot informatie. De eerste server wordt gebruikt om informatie te ontvangen, verwerken en op te slaan, de tweede wordt gebruikt voor back-up.

De werkterminal van de regisseur en een mobiele telefoon op iOS waren verbonden met de resulterende individuele cloud. Andere medewerkers werden aangesloten door de fulltime systeembeheerder en technische ondersteuning van Pvtbox.

De afgelopen periode zijn er geen klachten van de vriend geweest. Ik hoop dat mijn recensie Habr-lezers in een soortgelijke situatie zal helpen.

Bron: www.habr.com

Voeg een reactie