Главная » 2010»Октябрь»14 » Новые HLDS exploits (янв-фев 2010), Описание и методы борьбы с hlds_vcrash, hlds_fuck и им подобными
21:40
Новые HLDS exploits (янв-фев 2010), Описание и методы борьбы с hlds_vcrash, hlds_fuck и им подобными
В этой теме я постараюсь собрать исчерпывающую информацию о эксплойтах некоего w4suuup и борьбе с ними.
Статья будет разделена на 2 части т.к. эксплойтов этот товарищ выпустил пока только 2 разновидности. I. Названия фаила: hlds_vcrash, hlds_vcrash_fuck, hlds_vshell, hlds_vshell2 и многочисленные вариации для использования в cron. Вызывает появление ошибки "FATAL ERROR (shutting down): Host_Error: SV_ParseVoiceData: invalid incoming packet.".
Уязвимы все сервера протоколов 47 и 48. Очень древние билды 46 протокола атаку выдерживают из-за ошибки авторизации эксплойта на сервере. А в чем соль? Первая информация о уязвимости появилась еще в 2002г .пруф Используется ошибка в обработке SV_ParseVoiceData (голосовые данные от игрока).
Сервер падает из-за данных во втором пакете: 00 00 00 01 00 00 00 00 5B 19 01 01 1B 01 11 41 01 11 41 01 56 04 18 41 04 54 14 04 11 51 41 44 53 41 11 01 41 11 01 01 Это зашифрованные данные. На самом деле это сообщение при расшифровке выглядит так: 08 44 44 44 44 44 44 44 В этой строке 8 означает пакет типа clc_voicedata (т.е. голосовые данные от игрока). Последующие 2 байта (0x4444) - это длина голосовых данных. А как известно при значении большем 0x1000 сервак сам падает (выдаёт ошибку "Host_Error: SV_ParseVoiceData: invalid incoming packet" и прекращает работу). При этом мы получаем запись в логе с IP атакующего. Примеры логов см. ниже. Windows [url=javascript:ShowOrHide(]Показать / Скрыть текст[/url]L 02/25/2010 - 23:55:09: [DPROTO]: Client 9 - Set AuthIdType 8 [dp_RevEmu]; pClient = 05C4E4E8 L 02/25/2010 - 23:55:09: "JWSD0ZpSYp4Ii5<>" connected, address "212.106.32.176:1104" L 02/25/2010 - 23:55:09: [META] ini: Begin re-reading plugins list: c:/program files/cs_srvrs/2/cstrike/addons/metamod/plugins.ini L 02/25/2010 - 23:55:09: [META] ini: Read plugin config for: dproto L 02/25/2010 - 23:55:09: [META] ini: Read plugin config for: AMX Mod X L 02/25/2010 - 23:55:09: [META] ini: Read plugin config for: xdsopt L 02/25/2010 - 23:55:09: [META] ini: Finished reading plugins list: c:/program files/cs_srvrs/2/cstrike/addons/metamod/plugins.ini; Found 3 plugins L 02/25/2010 - 23:55:09: [META] dll: Updating plugins... L 02/25/2010 - 23:55:09: [META] dll: Finished updating 9 plugins; kept 3, loaded 0, unloaded 0, reloaded 0, delayed 0 L 02/25/2010 - 23:55:09: "goblun xRUSx<>" disconnected L 02/25/2010 - 23:55:09: "182<>" disconnected L 02/25/2010 - 23:55:09: "veshaemso<>" disconnected L 02/25/2010 - 23:55:09: "F A N T I K<><>" disconnected L 02/25/2010 - 23:55:09: "Nemo<>" disconnected L 02/25/2010 - 23:55:09: "2GARIN<>" disconnected L 02/25/2010 - 23:55:09: "kakaxa<>" disconnected L 02/25/2010 - 23:55:09: "HLG AutoBot<>" disconnected L 02/25/2010 - 23:55:09: "PILOTIK<>" disconnected L 02/25/2010 - 23:55:09: World triggered "Round_Draw" (CT "0") (T "0") L 02/25/2010 - 23:55:09: World triggered "Round_End" L 02/25/2010 - 23:55:09: Server shutdown L 02/25/2010 - 23:55:09: Log file closed
L 03/01/2010 - 15:24:35: [META] ini: Begin re-reading plugins list: /home/djum/KS_servera/ubuntu_cs/cstrike/addons/metamod/plugins.ini L 03/01/2010 - 15:24:35: [META] ini: Read plugin config for: AMX Mod X L 03/01/2010 - 15:24:35: [META] ini: Read plugin config for: dproto L 03/01/2010 - 15:24:35: [META] ini: Read plugin config for: xdsopt L 03/01/2010 - 15:24:35: [META] ini: Finished reading plugins list: /home/djum/KS_servera/ubuntu_cs/cstrike/addons/metamod/plugins.ini; Found 3 plugins L 03/01/2010 - 15:24:35: [META] dll: Updating plugins... L 03/01/2010 - 15:24:35: [META] dll: Finished updating 10 plugins; kept 3, loaded 0, unloaded 0, reloaded 0, delayed 0 Dropped 2A6U776LxfC4n from server Reason: Server shutting down L 03/01/2010 - 15:24:35: Server shutdown L 03/01/2010 - 15:24:35: Log file closed L 03/01/2010 - 15:24:35: FATAL ERROR (shutting down): Host_Error: SV_ParseVoiceData: invalid incoming packet. FATAL ERROR (shutting down): Host_Error: SV_ParseVoiceData: invalid incoming packet. Лечение!? Теперь самое интересное - как бороться?
1. Первый и самый простой вариант - поставить AntiCSDoS. Начиная с версии 3.5 этот баг закрыт. Однако простой - не всегда самый правильный. Сама тулза периодически вылетает с ошибкой "OUT OF MEMORY", а у автора статьи вообще намертво вывесила хост. Используйте на свой страх и риск. Вариант для Linux: [url=http://forum.fastfrag.ro/index.php/topic,2839.0.html]HLShiel 2.4[/url]
2. Воспользоваться патчем VUP 2.7. VUP 2.7 3. Другой вариант заключается в патчинге бинарников сервера hex-редактором, к примеру, HxD
Windows [url=javascript:ShowOrHide(]Показать / Скрыть текст[/url]Открываем swds.dll и меняем 3D 00 10 00 00 89 45 ?? 76 на 25 FF 0F 00 80 89 45 ?? EB где ?? - 2 рандомных символа, которые надо пропустить. Результат должен быть таким:
Зарег. на сайте : Всего: 9075 овых за месяц: 0 Новых за неделю: 0 Новых вчера: 0 Новых сегодня: 0 Из них : Администраторов: 2 Модераторов: 0 Проверенных: 0 Обычных юзеров: 9070 Забаненных юзеров: 2 Из них: Парней: 7304 Девушек: 68
Кто нас посетил:
Статистика
Онлайн всего: 8
Гостей: 8
Пользователей: 0
При копировании материалов с сайта источник на info-cs.net.ru обязателен