Checkpoint Ofri Teknik Pwoteksyon Safe-Linking pou konplike eksplwatasyon vilnerabilite yo

Konpayi Checkpoint prezante Mekanis pwoteksyon Safe-Linking, ki fè li difisil pou kreye exploit ki manipile definisyon oswa modifikasyon endikasyon nan tanpon yo atribye ba lè w ap egzekite yon apèl malloc. Safe-Linking pa konplètman bloke posiblite pou eksplwate frajilite yo, men ak yon minimòm sou tèt li siyifikativman konplike kreyasyon sèten kategori nan eksplwatasyon, paske anplis debòde tanpon eksplwatasyon an, li nesesè pou jwenn yon lòt vilnerabilite ki lakòz flit enfòmasyon sou. plasman pil la nan memwa.

Patch ki aplike Safe-Linking yo te prepare pou Glibc (ptmalloc), uClibc-NG (dlmalloc), gperftools (tcmalloc) ak Google TCMalloc, epi yo pwopoze tou pou amelyore pwoteksyon nan Chromium (nan
Depi 2012, Chromium te deja bati nan teknik pwoteksyon MaskPtr ki vize pou rezoud pwoblèm nan menm, men solisyon an soti nan Checkpoint demontre pi wo pèfòmans).
Yo te deja apwouve patch yo sijere pou livrezon nan lage mwa Out la glibc 3.32 ak Safe-Linking pral pèmèt pa default. uClibc-NG sipòte Safe-Linking antre enkli nan lage 1.0.33 epi li aktive pa default. Chanjman nan gperftools (ansyen tcmalloc) aksepte, men yo pral ofri kòm yon opsyon nan yon lage nan lavni.

Devlopè TCMalloc (nouvo tcmalloc) refize aksepte chanje, site degradasyon pèfòmans grav ak bezwen pou ajoute tès vaste yo regilyèman tcheke ke tout bagay ap travay jan yo espere. Tès enjenyè Checkpoint te montre ke metòd Safe-Linking la pa mennen nan konsomasyon memwa adisyonèl, ak pèfòmans lè w ap fè operasyon pil yo redwi an mwayèn pa sèlman 0.02%, ak nan senaryo ki pi mal la pa 1.5% (pou konparezon, tèt la nan metòd yo itilize nan Chromium yo estime kòm "mwens pase 2%"). Enklizyon
Safe-Linking rezilta nan 2-3 enstriksyon asanble adisyonèl ke yo egzekite chak fwa gratis () yo rele, ak 3-4 enstriksyon chak fwa malloc () yo rele. Kouri inisyalizasyon ak etap jenerasyon valè o aza pa obligatwa.

Checkpoint Ofri Teknik Pwoteksyon Safe-Linking pou konplike eksplwatasyon vilnerabilite yo

Safe-Linking ka itilize non sèlman pou amelyore sekirite divès enplemantasyon pil pil, men tou pou ajoute kontwòl entegrite nan nenpòt estrikti done ki itilize lis endikasyon ki lye yon sèl ki mete akote tanpon yo tèt yo. Metòd la trè senp pou aplike epi li sèlman mande pou ajoute yon makro epi aplike li nan pwent pwochen blòk nan kòd la (pa egzanp, pou Glibc. chanjman jis kèk liy kòd). Metòd la kondui nan chanjman sa yo:

+#defini PROTECT_PTR(pos, ptr) \
+ ((__typeof (ptr)) ((((size_t) pos) >> 12) ^ ((size_t) ptr)))

+#defini REVEAL_PTR(ptr) PROTECT_PTR (&ptr, ptr)

- nextp = p->fd;
+ nextp = REVEAL_PTR (p->fd);
...

Sans metòd la se sèvi ak done o aza ki soti nan mekanis randomization adrès ASLR (mmap_base) pou pwoteje lis ki lye yon sèl tankou Fast-Bins ak TCache. Anvan yo aplike valè a nan yon konsèy sou pwochen eleman nan lis la, li fè yon konvèsyon mask ak tcheke pou aliyman paj. Pointeur a ranplase pa rezilta operasyon an "(L >> PAGE_SHIFT) XOR (P)", kote P se valè pointeur a ak L se kote memwa kote pointeur a sere.

Checkpoint Ofri Teknik Pwoteksyon Safe-Linking pou konplike eksplwatasyon vilnerabilite yo

Lè yo itilize nan sistèm lan ASLR (Address Space Layout Randomization) yon pati nan L bit yo ak adrès baz pil pil la gen valè o aza ke yo itilize kòm yon kle pou kode P (extrait pa yon operasyon chanjman 12-bit pou paj 4096-byte). Manipilasyon sa a diminye risk pou yo detounen konsèy nan yon eksplwate, paske konsèy la pa estoke nan fòm orijinal li epi ranplase li mande pou konesans enfòmasyon sou alokasyon pil. Anplis de sa, kòd patch la genyen tou yon chèk adisyonèl pou aliyman blòk, ki pa pèmèt yon atakè ranplase yon pointeur ak yon valè ki pa aliye epi li mande konesans sou kantite Bits ki aliyen, ki sou sistèm 64-bit Anplis de sa pèmèt bloke. 15 sou 16 tantativ atak ki pa pran aliyman an kont.

Metòd la efikas pou pwoteje kont atak ki sèvi ak reekri pointeur pasyèl (chanje byte ki ba), reekri pointeur konplè (redireksyon nan kòd atakè a) ak chanje pozisyon lis la nan yon adrès ki pa aliye. Kòm yon egzanp, yo montre ke itilizasyon Safe-Linking nan malloc ta pèmèt bloke eksplwatasyon dènyèman. idantifye pa menm chèchè vilnerabilite yo CVE-2020-6007 nan Philips Hue Bridge limyè entelijan, ki te koze pa yon debòde tanpon ak pèmèt ou pran kontwòl aparèy la.

Sous: opennet.ru

Add nouvo kòmantè