У услужном програму е2фсцк који се испоручује као део пакета , (), који вам омогућава да извршите нападачки код приликом провере система датотека који садржи посебно дизајниране директоријуме. Рањивост је потврђена у издањима од 1.43.3 до 1.45.4. Рањивост је исправљена у ажурирању . У дистрибутивним комплетима проблем и даље остаје неисправљен (, , , , ).
Рањивост је узрокована грешком у функцији мутате_наме() у датотеци рехасх.ц, која се користи када се поново праве хеш табеле повезане са директоријумом, осигуравајући да се све датотеке у директоријуму подударају са директоријумом. Оштећење структуре хасх_ентри повезане са директоријумом може довести до тога да нападач упише податке у област изван додељеног бафера. Ако је неколико датотека са истим именом идентификовано у хеш табели као повезане са директоријумом, услужни програм е2фсцк преименује дуплиране датотеке додавањем ~0, ~1, итд. имену. За привремено складиштење новог имена током таквог преименовања, на стеку се додељује бафер величине 256 бајтова.
Величина података који се копирају одређена је изразом "ентри->наме_лен & 0кфф", али вредност уноса->наме_лен се учитава из структуре на диску уместо да се израчунава из стварне величине имена. Ако је величина нула, онда индекс низа узима вредност -1 и стварају се услови за преливање целог броја кроз доњу границу бафера (прелив целог броја) и преписивање других података на стеку вредношћу „~0“. За 64-битне системе, искоришћавање рањивости се процењује као мало вероватно и не захтева ограничења на величину стека (улимит -с неограничено). За 32-битне системе, експлоатација се сматра могућом, али резултат у великој мери зависи од тога како је компајлер компајлирао извршни фајл.
Да би извршио напад, нападач треба да поквари податке на одређени начин у партицији са ект2, ект3 или ект4 системом датотека. Пошто ова операција захтева привилегије суперкорисника, рањивост представља претњу када услужни програм е2фсцк скенира спољне диск јединице или екстерно примљене ФС слике.
Извор: опеннет.ру
