Yn Pecyn Cymorth ar gyfer Rheoli Cynwysyddion Dociwr Linux Arunig bregusrwydd (), sydd, o dan set benodol o amgylchiadau, yn caniatáu ichi gael mynediad i'r amgylchedd gwesteiwr o gynhwysydd os oes gennych y gallu i lansio'ch delweddau ar y system neu gyda mynediad i gynhwysydd rhedeg. Mae'r broblem yn ymddangos ym mhob fersiwn o Docker ac yn parhau i fod yn ansefydlog (arfaethedig, ond heb ei dderbyn eto, , sy'n gweithredu ataliad y cynhwysydd wrth berfformio gweithrediadau gyda'r FS).
Mae'r bregusrwydd yn caniatáu i ffeiliau gael eu tynnu o gynhwysydd i ran fympwyol o system ffeiliau'r system westeiwr wrth weithredu'r gorchymyn “docker cp”. Mae echdynnu ffeil yn cael ei berfformio gyda hawliau gwraidd, sy'n ei gwneud hi'n bosibl darllen neu ysgrifennu unrhyw ffeiliau yn yr amgylchedd gwesteiwr, sy'n ddigon i ennill rheolaeth ar y system westeiwr (er enghraifft, gallwch chi drosysgrifo /etc/shadow).
Dim ond pan fydd y gweinyddwr yn gweithredu'r gorchymyn “docker cp” i gopïo ffeiliau i'r cynhwysydd neu ohono y gellir cynnal yr ymosodiad. Felly, mae angen i'r ymosodwr rywsut argyhoeddi gweinyddwr y Dociwr o'r angen i gyflawni'r llawdriniaeth hon a rhagweld y llwybr a ddefnyddir wrth gopïo. Ar y llaw arall, gellir cynnal ymosodiad, er enghraifft, pan fydd gwasanaethau cwmwl yn darparu offer ar gyfer copïo ffeiliau cyfluniad i gynhwysydd, wedi'u hadeiladu gan ddefnyddio'r gorchymyn “docker cp”.
Achosir y broblem gan ddiffyg yng nghymhwysiad y swyddogaeth , sy'n cyfrifo'r llwybr absoliwt yn y brif system ffeiliau yn seiliedig ar y llwybr cymharol, gan ystyried lleoliad y cynhwysydd. Wrth weithredu'r gorchymyn "docker cp", tymor byr , lle mae'r llwybr eisoes wedi'i wirio, ond nid yw'r llawdriniaeth wedi'i chyflawni eto. Gan fod y copïo'n cael ei berfformio yng nghyd-destun prif system ffeiliau'r system westeiwr, o fewn cyfnod penodol o amser, gallwch chi lwyddo i ddisodli'r cyswllt â llwybr arall a chychwyn copïo data i leoliad mympwyol yn y system ffeiliau y tu allan i'r cynhwysydd.
Gan fod y ffenestr amser i gyflwr hil ddigwydd yn gyfyngedig iawn mewn paratoad Wrth berfformio gweithrediadau copi o gynhwysydd, roedd yn bosibl cyflawni ymosodiad llwyddiannus mewn llai nag 1% o achosion wrth ailosod cyswllt symbolaidd yn gylchol yn y llwybr a ddefnyddiwyd yn y llawdriniaeth copi (cynhaliwyd yr ymosodiad llwyddiannus ar ôl tua 10 eiliad o ymdrechion i gopïo'r ffeil yn barhaus mewn dolen gyda'r gorchymyn “docker cp”).
Trwy berfformio gweithrediad copi i mewn i gynhwysydd, gallwch gyflawni ymosodiad trosysgrifo ffeil ailadroddadwy ar y system westeiwr mewn ychydig iteriadau yn unig. Mae'r posibilrwydd o ymosodiad oherwydd y ffaith, wrth gopïo i mewn i gynhwysydd, bod y cysyniad “chrootarchive” yn cael ei ddefnyddio, ac yn unol â hynny mae'r broses archive.go yn echdynnu'r archif nid i groot gwraidd y cynhwysydd, ond i groot y cyfeiriadur rhiant y llwybr targed, a reolir gan yr ymosodwr, ac nid yw'n atal gweithredu'r cynhwysydd (defnyddir chroot fel arwydd i fanteisio ar amodau hil).
Ffynhonnell: opennet.ru
