Izdanje sustava za sigurnosno kopiranje Restic 0.18. Napad na CDC

Predstavljen je izlaz sustava za izradu sigurnosnih kopija Restic 0.18, koji omogućava pohranu sigurnosnih kopija u šifriranom obliku u verzioniranim repozitorijima s podrškom za deduplikaciju. Sustav je prvotno dizajniran za okruženja koja se ne mogu smatrati pouzdanim, tako da ne bi trebalo doći do kompromitacije sustava ako sigurnosna kopija padne u pogrešne ruke. Pri izradi sigurnosne kopije moguće je definirati fleksibilna pravila za uključivanje i isključivanje datoteka i mapa (format pravila podsjeća na rsync ili gitignore). Podržava rad u sustavima Linux, macOS, Windows i BSD. Kod projekta napisan je na jeziku Go i distribuira se pod BSD licencom.

Sigurnosne kopije mogu biti pohranjene na lokalnom FS-u, na vanjskom serveru s pristupom putem SFTP/SSH ili HTTP REST, u oblacima Amazon S3, OpenStack Swift, BackBlaze B2, Microsoft Azure Blob Storage i Google Cloud Storage, kao i u svim skladištima za koja postoje rclon backendovi. Za pohranu se također može koristiti također razvijeni projektom rest server, koji omogućava veću učinkovitost u usporedbi s drugim backendovima i može raditi u načinu samo za dopunu, što ne omogućava brisanje ili mijenjanje sigurnosnih kopija u slučaju kompromitacije izvornih servera i pristupa ključevima šifriranja.

Sustav podržava snimke koje odražavaju stanje hijerarhije mapa u različitim trenucima vremena (snimke se automatski stvaraju za svaku sigurnosnu kopiju). Moguće je kopirati snimke između različitih repozitorija. Radi uštede prometa tijekom izrade sigurnosnih kopija kopiraju se samo izmijenjeni podaci. Snimka sa sigurnosnom kopijom može se montirati u obliku virtualne particije (montiranje se vrši pomoću FUSE-a). Također su dostupne naredbe za analizu promjena i selektivno vađenje datoteka.

Skladište sigurnosnih kopija u Resticu manipulira ne cijelim datotekama, već blokovima promjenjive veličine, odabranim pomoću Rabinove potpisa. Informacije se pohranjuju vezane uz sadržaj, a ne prema imenima datoteka (imena i objekti povezani s podacima definiraju se na razini metapodataka bloka). Radi uštede prostora u skladištu i isključenja suvišnog kopiranja podataka, provodi se deduplikacija.

Na vanjskim poslužiteljima informacije se pohranjuju u šifriranom obliku — za kontrolne zbrojeve i deduplikaciju koriste se SHA-256 hashovi, za šifriranje algoritam AES-256-CTR, a za jamstvo cjelovitosti — autentifikacijski kodovi temeljen na Poly1305-AES. Predviđena je mogućnost verifikacije sigurnosne kopije prema kontrolnim zbrojevima i autentifikacijskim kodovima za potvrdu da cjelovitost datoteka nije narušena.

U novoj verziji uklonjena je mogućnost izvođenja napada (PDF) kako bi se utvrdila prisutnost specifičnih datoteka u šifriranom spremištu sigurnosnih kopija. Napad omogućava utvrđivanje da li se u šifriranoj sigurnosnoj kopiji nalazi neka određena datoteka, pristupom spremištu sigurnosnih kopija ili analizom mrežnog prometa sa sigurnosnim kopijama. Na primjer, napad može izvesti administrator poslužitelja na kojem se pohranjuju sigurnosne kopije, davatelj internetskih usluga ili službe za provedbu zakona koje su dobile pristup poslužitelju ili prometu. Cilj napada može biti istraživanje curenja informacija, u kojem bi službe mogle procijeniti prisutnost dokumenta od interesa u spremištu sigurnosnih kopija.

Za iskorištavanje ranjivosti, napadač mora postići dodavanje vlastitih podataka u sigurnosnu kopiju žrtve ili znati da se poznata datoteka nalazi u sigurnosnoj kopiji. Ako u sigurnosnoj kopiji postoji datoteka za koju napadač zna (na primjer, neka vrsta standardnog sustavnog ili multimedijskog sadržaja), napadač može, pristupom šifriranom spremištu, utvrditi postoje li unutar druge datoteke od interesa.

Metoda se temelji na tome da se, iz specifičnosti kompresije sadržaja, mogu odrediti parametri blokova korištenih pri frakcioniranju sadržaja. Za određivanje takvih parametara dovoljno je prepoznati 3 šifrirana bloka koji sadrže podatke poznate napadaču.

Ranjivost nije specifična za Restic i utječe na druge sustave sigurnosnog kopiranja koji koriste podjelu podataka na blokove tehnikom CDC (Content-Defined Chunking), kao što su BorgBackup, Tarsnap, Bupstash i Duplicacy. U Tarsnapu je problem uklonjen u ažuriranju 1.0.41, a u BorgBackupu se radi na ispravci koja će biti uključena u granu borg 2. U Bupstashu je posljednja izmjena izvršena prije 2 godine, a u Duplicacyju prije 4 mjeseca.

Dodatno se navodi da je u sustavima koji koriste deduplikaciju, kada postoji mogućnost dodavanja vlastitih datoteka u sigurnosnu kopiju, moguće jednostavnije odrediti prisutnost zanimljivih datoteka indirektno. Nakon dodavanja datoteke koja se provjerava, možete procijeniti promjenu veličine pohrane — ako datoteka već postoji u pohrani, njeno ponovo dodavanje zbog deduplikacije neće uzrokovati značajno povećanje veličine.

Osim uklanjanja ranjivosti u Resticu 0.18, također su predložene neke novine:

  • Dodana je eksperimentalna podrška za 'hladne' spremnike sigurnosnih kopija (podatci postaju dostupni za vađenje nekoliko minuta ili sati nakon zahtjeva), koji podržavaju S3 protokol, poput Amazon S3 Glacier.
  • U naredbe check i tag dodana je podrška za izlaz u JSON formatu.
  • Prilikom izrade slika za GitHub Container Registry uzete su u obzir preporuke SLSA (razine opskrbnog lanca za softverske artefakte).
  • U naredbu ls dodan je odabir metode sortiranja ispisa. U naredbi find po defaultu se koristi sortiranje po datumu (od najnovijih prema starijim).
  • Omogućena je mogućnost isključivanja iz operacije repakiranja datoteka manjih od zadane veličine.
  • Dodana je postavka za uključivanje/isključivanje vraćanja proširenih atributa datoteka.
  • Dodana je podrška za OS DragonFlyBSD.
  • Dodana je podrška za proširene atribute datoteka na sustavima s NetBSD 10+.
  • U grani restic 0.19.0 planira se uklanjanje podrške za zastarjele mogućnosti aktivirane putem postavki deprecate-legacy-index, deprecate-s3-legacy-layout, explicit-s3-anonymous-auth i safe-forget-keep-tags.
  • Prekinuta je podrška za stare verzije Windows i macOS; za rad sada je potrebna najmanje Windows 10, Windows Server 2016 ili macOS 11. Prekinuta je podrška za verzije TLS-a ispod 1.2.

Izvor: opennet.ru

Kupite pouzdan hosting za web stranice s DDoS zaštitom, VPS VDS servere 🔥 Kupite pouzdan hosting za web stranice s DDoS zaštitom, VPS VDS servere | ProHoster