TUF 1.0 disponeblas, kadro por organizi sekuran liveron de ĝisdatigoj

La eldono de TUF 1.0 (La Ĝisdatiga Kadro) estis publikigita, provizante ilojn por sekure kontroli kaj elŝuti ĝisdatigojn. La ĉefa celo de la projekto estas protekti la klienton kontraŭ tipaj atakoj sur deponejoj kaj infrastrukturo, inkluzive de kontraŭbatali la reklamadon de atakantoj de fikciaj ĝisdatigoj kreitaj post akiri aliron al ŝlosiloj por generi ciferecajn subskribojn aŭ endanĝerigi la deponejon. La projekto estas disvolvita sub la aŭspicioj de la Linukso-Fondaĵo kaj estas uzata por plibonigi la sekurecon de ĝisdatigo livero en projektoj kiel Docker, Fuchsia, Automotive Grade Linux, Bottlerocket kaj PyPI (la inkludo de elŝuta konfirmo kaj metadatenoj en PyPI estas atendita en la proksima estonteco). La TUF-referenca efektivigkodo estas skribita en Python kaj distribuita sub la licenco Apache 2.0.

La projekto disvolvas serion de bibliotekoj, dosierformatoj kaj utilecoj, kiuj povas esti facile integreblaj en ekzistantajn aplikaĵajn ĝisdatigsistemojn, provizante protekton en la okazo de ŝlosila kompromiso flanke de programistoj. Por uzi TUF, sufiĉas aldoni la necesajn metadatenojn al la deponejo, kaj integri la procedurojn provizitajn en TUF por elŝuti kaj kontroli dosierojn en la klientkodon.

La TUF-kadro prenas la taskojn kontroli por ĝisdatigo, elŝuti la ĝisdatigon kaj kontroli ĝian integrecon. La ĝisdatiga instalsistemo ne rekte malhelpas aldonajn metadatenojn, kies kontrolado kaj ŝarĝo estas entreprenita de TUF. Por integriĝo kun aplikoj kaj ĝisdatigaj instalsistemoj, malaltnivela API estas ofertita por aliro al metadatenoj kaj efektivigo de la altnivela kliento API ngclient, preta por integriĝo kun aplikoj.

Inter la atakoj, kiujn TUF povas kontraŭstari, estas la anstataŭigo de malnovaj eldonoj sub la alivestiĝo de ĝisdatigoj por bloki la korekton de programaraj vundeblecoj aŭ la retrovon de la uzanto al malnova vundebla versio, same kiel la promocio de malicaj ĝisdatigoj ĝuste subskribitaj per kompromitita. ŝlosilo, DoS atakas klientojn, kiel plenigi la diskon per senfinaj ĝisdatigoj.

Protekto kontraŭ kompromiso de la infrastrukturo de la softvarprovizanto estas atingita konservante apartajn, kontroleblajn rekordojn de la stato de la deponejo aŭ aplikaĵo. Metadatenoj kontrolitaj de TUF inkluzivas informojn pri ŝlosiloj, kiuj povas esti fidindaj, kriptografikajn haŝojn por taksi la integrecon de dosieroj, kromajn ciferecajn subskribojn por kontroli metadatenojn, informojn pri versionumeroj kaj informojn pri la vivdaŭro de rekordoj. La ŝlosiloj uzataj por konfirmo havas limigitan vivdaŭron kaj postulas konstantan ĝisdatigon por protekti kontraŭ subskriboformado per malnovaj ŝlosiloj.

Redukti la riskon de kompromiso de la tuta sistemo estas atingita per la uzo de komuna fidmodelo, en kiu ĉiu partio estas limigita nur al la areo por kiu ĝi estas rekte respondeca. La sistemo uzas hierarkion de roloj kun siaj propraj ŝlosiloj, ekzemple, la radika rolo signas ŝlosilojn por roloj respondecaj pri metadatumoj en la deponejo, datumoj pri la tempo de generacio de ĝisdatigoj kaj celaj asembleoj, siavice, la rolo respondeca por asembleoj signas roloj asociitaj kun la atestado de liveritaj dosieroj.

TUF 1.0 disponeblas, kadro por organizi sekuran liveron de ĝisdatigoj

Por protekti kontraŭ ŝlosilkompromiso, mekanismo por rapida revoko kaj anstataŭigo de ŝlosiloj estas uzata. Ĉiu individua ŝlosilo enhavas nur la minimumajn necesajn potencojn, kaj aŭtentikigoperacioj postulas la uzon de pluraj ŝlosiloj (la liko de ununura ŝlosilo ne permesas tujan atakon sur la kliento, kaj por endanĝerigi la tutan sistemon, la ŝlosiloj de ĉiuj partoprenantoj devas esti kaptita). La kliento nur povas akcepti dosierojn, kiuj estas pli freŝaj ol antaŭe ricevitaj dosieroj, kaj datumoj nur elŝutas laŭ la grandeco specifita en la atestitaj metadatenoj.

La publikigita eldono de TUF 1.0.0 ofertas tute reverkitan kaj stabiligitan referencan efektivigon de la TUF-specifo, kiun vi povas uzi kiel pretan ekzemplon dum kreado de viaj propraj efektivigoj aŭ por integriĝo en viajn projektojn. La nova efektivigo enhavas signife malpli da kodo (1400 linioj anstataŭ 4700), estas pli facile konservebla kaj povas esti facile etendebla, ekzemple, se necesas aldoni subtenon por specifaj retaj stakoj, stokadsistemoj aŭ ĉifrado-algoritmoj.

fonto: opennet.ru

Aldoni komenton