Olen inseneriharidusega, kuid suhtlen rohkem ettevõtjate ja tootmisdirektoritega. Aeg tagasi pöördus minu poole ühe tööstusettevõtte omanik nõu saamiseks. Kuigi ettevõte on suur ja asutatud 90-ndatel, toimivad juhtimine ja raamatupidamine vana kooli kohaselt lokaalses võrgus.
See on mure oma äri pärast ja riigi kontrolli tugevnemise tagajärg. Seadusandlust ja määrusi võivad kontrollivad organid tõlgendada väga laialdaselt. Näitena võib tuua muudatused maksukoodis, tõeline häving .
Kuna see on tõusnud, hakkas ettevõtte omanik otsima lahendusi teabe usaldusväärseks salvestamiseks ja dokumentide turvaliseks edastamiseks. Virtuaalne "seif".
Töötasime probleemi välja oma süsteemiadministraatoriga: on vajalik süvitsi minev analüüs olemasolevatest platvormidest.
- teenus peab olema mitte-pilv, klassikalises tähenduses, st ilma kolmandatel organisatsioonidel tarnimise võimaluseta. Ainult oma server;
- vajalik on stabiilne salajane krüpteerimine edastatud ja salvestatud andmete jaoks;
- on vajalik võimalus sisu koheseks kustutamiseks igalt seadmel ühe nupuvajutusega;
- lahendus on välja töötatud välismaal.
Neljas punkt, mida ma soovitasin eemaldada, kuna Venemaa rakendused omavad ametlikke sertifikaate. Direktor ütles otse, mida nende sertifikaatidega ette võtta.
Valime variandid
Valisin kolm lahendust (mida rohkem valikuvõimalusi, seda rohkem kahtlusi):
- Avatud lähtekood — projekt , mida toetab entusiast-arendaja Jacob Borg.
- , mis on USA Resilio Inc. järelevalve all (varem nimetati see teenus BitTorrent Synciks).
- Projekt alates sünkroonimise rakendused. Küprose registreerimine.
Ettevõtte omanik ei oska tehnilisi nüansse hästi, seega koostasin ülevaate igasuguste plusside ja miinuste loendina.
Analüüsi tulemused
Syncthing
Plussid:
- Avatud lähtekood;
- Peamise arendaja aktiivsus;
- Projekt on olemas väga pikka aega;
- Tasuta.
Miinused:
- iOS-i liidese klienti pole;
- Aeglased Turn serverid (need on tasuta, seega viivisega). Neile, kes
ei tea, Turn'i kasutatakse, kui otsene ühendus ei ole võimalik; - Lihtne liidese seadistamine (vajalik pikaajaline programmeerimise kogemus);
- Kiire kaubandusliku toe puudumine.
Resilio
Plussid: Toetab kõiki seadmeid ja kiireid Turn-servereid.
Miinused: Üks väga oluline probleem – täielik ignoreerimine tugiteenuste poolt kõigist pöördumistest. Null reaktsiooni, isegi kui kirjutada erinevatelt aadressidelt.
Pvtbox
Plussid:
- Toetab kõiki seadmeid;
- Kiired Turn-serverid;
- Võimalus faili alla laadida ilma rakenduse installimiseta;
- Mugav tugiteenus, sealhulgas telefoni teel.
Miinused:
- Noor projekt (vähe ülevaateid ja häid arvustusi);
- Väga tehniline, mitte alati arusaadav veebilehe liides;
- Pole põhjalikku dokumentatsiooni, paljude küsimuste korral tuleb tugiteenust torgata.
Mida tellija valis
Tema esimene küsimus: mis mõtet on midagi tasuta arendada? Syncthingist loobuti kohe. Argumendid ei töötanud.
Paari päeva pärast lükkas tellija Resilio Synci tagasi toe puudumise tõttu, kuna ei olnud selge, kuhu pöörduda erakorralistes olukordades. Lisaks usaldamatus Ameerika ettevõtte aadressi suhtes.
Edasiseks analüüsiks jäi Pvtbox elektrooniline seif. Teostasime täieliku tehnilise auditi selle platvormi üle, keskendudes andmete pealtkuulamise, dekrüptimise ja volitamata sisenemise võimalustele.
Auditi protsess
Analüüsisime ühendusi programmi käivitamisel, töö käigus ja rahulikus olekus. Tänapäeva standardite järgi ringleb kogu algne liiklus krüpteerituna. Proovime läbi viia MITM rünnaku ja asendada sertifikaadi "käigus" Linux (Xubuntu Linux 18.04), Wireshark, Mitmproxy. Selleks paigaldame vahendaja rakenduse Pvtbox ja serveri pvtbox.net vahele (andmevahetus serveriga pvtbox.net toimub https-ühenduse kaudu).
Käivitame rakenduse, et veenduda, et programm ja failide sünkroniseerimine töötavad. Linuxis on võimalik kohe näha logimist, kui rakendus käivitada terminalist.

Lülitame rakenduse välja ja asendame hosti aadressi pvtbox.net failis /etc/hosts superkasutaja õigustega. Asendame aadressi meie proxy-serveri aadressiga.

Nüüd valmistame meie proxy-serveri ette MITM rünnakuks arvutis, mille aadress on 192.168.1.64 meie kohalikus võrgus. Selleks paigaldame mitmproxy paketi versiooniga 4.0.4.
Käivitame proxy-serveri pordil 443:
$ sudo mitmproxy -p 443
Käivitame esimeses arvutis programmi Pvtbox, vaatame mitmproxy väljundit ja rakenduse logisid.

Mitmproxy teatab, et klient ei usalda vaheserveri sertifikaati. Rakenduse logides näeme ka, et vaheserveri sertifikaat ei läbinud kontrolli ning programm keeldub töötamast.
Paigaldame vaheserveri sertifikaadi mitmproxy Pvtbox rakendusega arvutisse, et muuta sertifikaat „usaldusväärseks“. Arvutisse paigaldame paketi ca-certificates. Seejärel kopeerime sertifikaadi mitmproxy-ca-cert.pem vaheserveri .mitmproxy kataloogist Pvtbox rakenduse arvutisse katalooge /usr/local/share/ca-certificates.
Käivitame käsklused:
$ sudo openssl x509 -in mitmproxy-ca-cert.pem -inform PEM -out mitmproxy-ca-cert.crt
$ sudo update-ca-certificates

Käivitame Pvtbox rakenduse. Sertifikaat ei läbinud kontrolli, programm keeldub töötamast. Tõenäoliselt kasutab rakendus kaitsemehhanismi Certificate pinning.
Sarnane rünnak viidi läbi hostil signalserver.pvtbox.net, nagu ka otsesel peer-2-peer ühendusel sõlmpunktide vahel. Arendaja märgib, et peer-2-peer ühenduste moodustamiseks kasutatav rakendus kasutab avatud protokolli webrtc, kus rakendatakse lõpp-to-lõpp krüpteerimist protokolli DTLSv1.2.
Võtmed genereeritakse iga ühenduse loomise korral ja edastatakse krüpteeritud kanali kaudu läbi signalserver.pvtbox.net.
Teoreetiliselt oleks võimalik tabada webrtc pakkumise ja vastuse sõnumeid, muuta seal krüpteerimisvõtmeid ja olla võimeline dekrüpteerima kõik webrtc kaudu edastatavad sõnumid. Kuid mitte mingil viisil ei õnnestunud rünnata signalserver.pvtbox.net, seetõttu ei ole ka võimalik tabada ja muuta sõnumeid, mis saadetakse läbi signalserver.pvtbox.net.
Seetõttu ei ole võimalik selle rünnaku läbiviimine peer-2-peer ühendustele.
Leitakse ka faile, mis sisaldavad sertifikaate, mis on tarnitud koos programmiga. Fail asub teel /opt/pvtbox/certifi/cacert.pem. See fail asendati failiga, mis sisaldab meie vaheserveri mitmproxy usaldusväärset sertifikaati. Tulemused ei muutunud - programm keeldus süsteemiga ühendamast, logis oli sama tõrge,
et sertifikaat ei läbinud kontrolli.
Auditi kokkuvõte
Ma ei saanud liiklust tabada ega muuta. Failide nimed, rääkimata nende sisust, edastatakse krüpteeritud kujul, kasutatakse lõpp-to-lõpp krüpteerimist. Rakenduses on rakendatud mitmeid kaitsemehhanisme, mis takistavad pealtkuulamisi ja sisestamisi.
Tulemuseks ostis ettevõte kaks eraldiseisvat serverit (füüsiliselt erinevates kohtades), et tagada püsiv juurdepääs teabele. Esimest serverit kasutatakse teabe vastuvõtmiseks, töötlemiseks ja salvestamiseks, teist – varukoopiate tegemiseks.
Saadud individuaalsele pilve on ühendatud direktori tööterminal ja iOS-i mobiiltelefon. Teisi töötajaid ühendavad ettevõtte süsteemiadministraator ja Pvtboxi tehniline toetus.
Möödunud aja jooksul pole tuttavalt mingeid kaebusi olnud. Loodan, et minu ülevaade aitab Habra lugejaid sarnases olukorras.
Allikas: habr.com
