Добро пожаловать! Это — архивная версия форумов на «Хакер.Ru». Она работает в режиме read-only.
 

Антивирус Касперского 2009

Пользователи, просматривающие топик: none

Зашли как: Guest
Все форумы >> [Треп] >> Антивирус Касперского 2009
Имя
Сообщение << Старые топики   Новые топики >>
Антивирус Касперского 2009 - 2008-10-10 19:35:15.613333   
Diabolus

Сообщений: 127
Оценки: 0
Присоединился: 2006-11-18 05:35:27.343333
Задумывались ли вы, как касперский качает обновления?
Кое-что меня натолкнуло на мысль посмотреть это. Скачал новенький Антивирус Касперского 2009 с kaspersky.ru,
и начал дизассемблировать updаtеr.dll. Из этого получилось следующее…

Чтение сокета при приёме апдейтов.
6D94EF5D |. 57 PUSH EDI ; /Flags 6D94EF5E |. FF75 0C PUSH DWORD PTR SS:[EBP+C] ; |BufSize 6D94EF61 |. FF75 08 PUSH DWORD PTR SS:[EBP+8] ; |Buffer 6D94EF64 |. FF36 PUSH DWORD PTR DS:[ESI] ; |Socket 6D94EF66 |. FF15 A8A49A6D CALL DWORD PTR DS:[&lt;&WS2_32.#16&gt;] ; \recv Запомним: [ebp+8] - поинтер на данные, далее пригодится.
6D94EF75 |. 397D 0C CMP DWORD PTR SS:[EBP+C],EDI 6D94EF78 |. 8945 08 MOV DWORD PTR SS:[EBP+8],EAX 6D94EF7B 75 0B JNZ SHORT updаtеr.6D94EF88 6D94EF7D |. C703 1D000000 MOV DWORD PTR DS:[EBX],1D 6D94EF83 |. E9 85000000 JMP updаtеr.6D94F00D Если получили не то число байт, которое запрашивали, идём на 6D94EF88, а иначе - на 6D94F00D.
Интересно, что tcp пакеты настоящих обновлений касперский всегда подгоняет байт-в-байт, левые же - всегда
ровно 96 байт, хотя зачастую с байтами 90 (в хексе) в конце. Подробнее об этом ниже.
Смотрим далее: что происходит, если пакет "неожиданно" оказался не того размера.
6D94EF88 57 PUSH EDI 6D94EF89 55 PUSH EBP 6D94EF8A 56 PUSH ESI Все используемые для чтения из сокета регистры сохраняются в стек…
6D94EF8B 33D2 XOR EDX,EDX 6D94EF8D 8B75 08 MOV ESI,DWORD PTR SS:[EBP+8] 6D94EF90 B9 18000000 MOV ECX,18 6D94EF95 AD LODS DWORD PTR DS:[ESI] 6D94EF96 8982 A1EF946D MOV DWORD PTR DS:[EDX+6D94EFA1],EAX 6D94EF9C 83C2 04 ADD EDX,4 6D94EF9F ^E2 F4 LOOPD SHORT updаtеr.6D94EF95 24 раза (18 hex = 24 dec) загружаем 4 байта из полученного нами от сервера обновлений, и столько же раз
аккуратно расставляем их в теле своей программы начиная с адреса 6D94EFA1. То есть у нас будет заполнено
96 байт.
А что же далее?
Далее - самое интересное. Мы же были на адресе *9F, а за ним идёт как раз *A1.
6D94EFA1 90 NOP ... 6D94F004 90 NOP То есть пусто. И так пусто вплоть до адреса 6D94F004. 6D94F004-6D94EFA1 в переводе в десятичную систему - 99.
А ведь после предыдущего цикла у нас здесь уже не пусто, а то, что передал нам сервер апдейтов. И приходит
черёд выполнения именно этих команд.

Ну и далее завершающая часть:
6D94F005 5E POP ESI 6D94F006 5D POP EBP 6D94F007 5F POP EDI 6D94F008 ^E9 50FFFFFF JMP updаtеr.6D94EF5D 6D94F00D |&gt; 33C0 XOR EAX,EAX Восстанавливаем регистры и прыгаем туда, откуда пришли, читаем "обновления" дальше. Возможно, следущее
окажется реальным. До адреса начала обработки реальных обновлений (6D94F00D) не доходим.

Запустил сниффер, и результат не заставил себя ждать. Уже через пару недель пришло три серии "нестандартных"
обновлений. Отсортировать пакеты длиною 96 байт не составило труда, ну и вкрадце: первая серия пакетов
проверяла, существует ли папка %Program Files%\DrWeb, вторая - я так и не понял что делала, а вот третья,
после которой я и решил написать об этом, искала в файлах, находящихся в папке %AppData%,
последовательности из четырёх байт (помещая указатель на файл в esi и через lods dword в цикле с sub esi,3
в том же цикле) - подстроки "hack", "xake", "secu", "viru". После каждой найденной подстроки - отправка
подстроки и последующих 16 байт на "сервер обновлений". Весело, не находите?

Использовали все три "программы-обновления" WinAPI функции, доступные из updаtеr.dll - удобно, не правда ли?
Апдейтер как раз должен работать с интернетом и файлами, отличное средство для проведения всяческих левых
действий.

Ну в общем-то как в реальной жизни получается зачастую с милицией, так и в киберпространстве - с антивирусами.
Вроде бы должны охранять нас, а делают чёрт знает что.



Написал с утра, хотел запостить на секлаб, но не нашёл, куда отправлять. Отправил на хакер.
Post #: 1
RE: Антивирус Касперского 2009 - 2008-10-10 20:07:01.470000   
oRb

Сообщений: 4044
Оценки: 597
Присоединился: 2007-03-28 18:45:06.630000
А им вполне удобно, пока кто-то будет разрабатывать новую малварь, касперский будет уже иметь сигнатуры)
Post #: 2
RE: Антивирус Касперского 2009 - 2008-10-11 03:00:45.556666   
Osemenator

Сообщений: 308
Оценки: 0
Присоединился: 2008-05-14 12:33:06.953333
Интересно, с KIS 7 та же ситуация?
Post #: 3
Страниц:  [1]
Все форумы >> [Треп] >> Антивирус Касперского 2009







Связаться:
Вопросы по сайту / xakep@glc.ru

Предупреждение: использование полученных знаний в противозаконных целях преследуется по закону.