Зааврыг гүйцэтгэх хугацаа нь ARM болон Intel CPU-ийн өгөгдлөөс хамаарах

Adiantum шифрийг бүтээгчдийн нэг, Linux цөмийн fscrypt дэд системийг дэмжигч Эрик Биггерс Intel процессорын онцлогоос үүдэлтэй аюулгүй байдлын асуудлуудыг блоклох хэд хэдэн нөхөөсийг санал болгосон бөгөөд энэ нь янз бүрийн боловсруулсан өгөгдлийг тогтмол гүйцэтгэх хугацааг баталгаажуулдаггүй. Асуудал нь Ice Lake гэр бүлээс эхлээд Intel процессоруудад гарч ирдэг. Үүнтэй төстэй асуудал ARM процессоруудад ажиглагдаж байна.

Зааврыг гүйцэтгэх хугацаа нь эдгээр зааварт боловсруулсан өгөгдлөөс хамаарч байгаа эсэхийг засварын зохиогч процессорын эмзэг байдал гэж үздэг, учир нь ийм үйлдэл нь системд хийгдсэн криптограф үйлдлийн аюулгүй байдлыг хангаж чадахгүй. Криптографийн алгоритмын олон хэрэгжилт нь өгөгдлийг зааврын гүйцэтгэлд нөлөөлөхгүй байхаар зохион бүтээсэн бөгөөд энэ зан үйлийг зөрчих нь түүнийг боловсруулах хугацааны шинжилгээнд үндэслэн өгөгдлийг сэргээдэг хажуугийн сувгийн халдлагыг бий болгоход хүргэдэг.

Ажиллах үеийн өгөгдлийн хамаарлыг мөн хэрэглэгчийн орон зайнаас цөмийн өгөгдлийг тодорхойлох халдлага эхлүүлэхэд ашиглаж болно. Эрик Биггерсийн хэлснээр, нэмэлт болон XOR үйлдлийг гүйцэтгэдэг зааварчилгаа, түүнчлэн тусгай AES-NI зааврын хувьд ч гэсэн тогтмол гүйцэтгэлийн хугацааг анхдагчаар өгдөггүй (мэдээлэл нь туршилтаар батлагдаагүй, бусад өгөгдлүүдийн дагуу нэг удаа хоцордог. векторын үржүүлэх болон бит тоолох үеийн мөчлөг ).

Энэ үйлдлийг идэвхгүй болгохын тулд Intel болон ARM нь шинэ тугуудыг санал болгосон: ARM CPU-д зориулсан PSTATE бит DIT (Өгөгдлийн бие даасан хугацаа) ба Intel CPU-д зориулсан MSR бит DOITM (Өгөгдлийн операнд хамааралгүй цагийн горим) нь байнгын гүйцэтгэлийн хугацаатайгаар хуучин үйлдлийг буцаана. Intel болон ARM нь чухал кодонд шаардлагатай хамгаалалтыг идэвхжүүлэхийг зөвлөж байна, гэхдээ бодит байдал дээр чухал тооцоолол нь цөм болон хэрэглэгчийн орон зайд хаана ч тохиолдож болох тул бид бүх цөмд DOITM болон DIT горимуудыг үргэлж идэвхжүүлэх талаар бодож байна.

ARM процессоруудын хувьд Linux 6.2 цөмийн салбар нь цөмийн үйл ажиллагааг өөрчилдөг засваруудыг аль хэдийн нэвтрүүлсэн боловч эдгээр засварууд нь зөвхөн цөмийн кодыг хамардаг бөгөөд хэрэглэгчийн орон зайн үйл ажиллагааг өөрчилдөггүй тул хангалтгүй гэж үздэг. Intel процессоруудын хувьд хамгаалалтыг оруулах нь хяналтын шатандаа байна. Нөхөөсний гүйцэтгэлд үзүүлэх нөлөөг хараахан хэмжээгүй байгаа ч Intel-ийн баримт бичгийн дагуу DOITM горимыг идэвхжүүлснээр гүйцэтгэлийг бууруулдаг (жишээлбэл, өгөгдөлд тусгайлан урьдчилан ачаалах гэх мэт зарим оновчлолыг идэвхгүй болгох замаар) ба ирээдүйн процессорын загваруудад гүйцэтгэлийн бууралт нэмэгдэж магадгүй юм. .

Эх сурвалж: opennet.ru

сэтгэгдэл нэмэх