Gjatë portimit të instrumentarëve cryptsetup-suspend për NixOS, u zbulua një gabim në nën-sistemin e enkriptimit të disqeve LUKS (Linux Unified Key Setup), për shkak të të cilit, duke filluar nga bërthama e Linux 6.9 (komiteti problematik), lëvizja e çelësave të enkriptimit nga memoria RAM ndërsa sistemi kalon në modalitetin e pritjes, nuk funksionon më.
Instrumentari cryptsetup-suspend pĂ«rdoret nĂ« Debian pĂ«r tĂ« bllokuar nĂ« mĂ«nyrĂ« automatike ndarjet LUKS para se tĂ« kalojĂ« nĂ« modalitetin e gjumit. Supozohet se nĂ« rast tĂ« vjedhjes sĂ« laptopit, i cili Ă«shtĂ« kaluar nĂ« modalitetin e gjumit, grabitĂ«si do tĂ« humbasĂ« mundĂ«sinĂ« pĂ«r tĂ« q ì ê·ŒŃ nĂ« tĂ« dhĂ«nat, pasi pĂ«r tĂ« dalĂ« nga gjumi do tĂ« kĂ«rkohet tĂ« jepet njĂ« fjalĂ«kalim pĂ«r tĂ« rikuperuar qasjen nĂ« tĂ« dhĂ«nat e enkriptuara. PĂ«r shkak tĂ« gabimit nĂ« bĂ«rthamĂ«n e Linux, pas bllokimit tĂ« ndarjes LUKS me komandĂ«n "cryptsetup luksSuspend", çelĂ«sat nuk u pastruan nga memoria dhe mbeteshin tĂ« dukshĂ«m pĂ«rmes /proc/keys, duke lejuar qĂ« sulmuesi t'i nxjerrĂ« ata, pĂ«r shembull, me metodĂ«n e "rikthimit tĂ« ftohtĂ«", dhe t'i pĂ«rdorĂ« pĂ«r tĂ« qasur nĂ« tĂ« dhĂ«nat.
Mungesa e pastrimit të çelësave u zbulua gjatë debugimit të një gjendjeje garuese, për shkak të së cilës u shfaqën probleme me kalimin në modalitetin e gjumit. Gabimi ndodhi pas zhvillimit të ristrukturimit në bërthamën 6.9, rezultat i të cilit çelësat u lidhën me thread-in që bëri thirrjen dhe duhet të hiqeshin kur ai përfundonte, por në të vërtetë mbeteshin në memorie. Përfshirja në bërthamën Linux është propozuar një patch një-rresht, që eliminon gabimin e bërë.
Ky patch nuk u pranuar në bërthamë, pasi u zbulua një pasak. Patch-i vepron vetëm për disqet fizike, por nuk funksionon për pajisjet virtuale loop. Në vend të rregullimit të problemit nga ana e bërthamës, zhvilluesit e instrumentarit cryptsetup ofruan një rrugë për të pastruar çelësat. Ky ndryshim tashmë është pranuar dhe do të përfshihet në lëshimin e cryptsetup 2.8.7.
Përveç kësaj, për NixOS u krijua një implementim i veçantë i skripteve për bllokimin e disqeve të enkriptuara para kalimit në modalitetin e gjumit, në të cilin është përdorur një patch i vjetër për bërthamën, i cili nuk u pranua në 2015, i cili pastron detyrimisht çelësat nga memoria para kalimit në modalitetin e gjumit.
Burimi: opennet.ru
