Злобный exploit - Server shutting down

Обсуждаем все, что относится к выделенным серверам *NIX (Unix, Linux) и Windows
Сообщение
Автор
retrib
Нович0к
Нович0к
Сообщения: 17
Зарегистрирован: 05.11.2008

#1 Сообщение 26.02.2010, 19:00

Добрый день. Имею следующий сервер:

Код: Выделить всё

18:58:14 version
18:58:14 Protocol version 48
         Exe version 1.1.2.6 (cstrike)
         Exe build: 15:34:33 Jun 15 2009 (4554)
18:58:19 meta list
18:58:19 Currently loaded plugins:
               description      stat pend  file              vers      src   load  unlod
          [ 1] dproto           RUN   -    dproto.dll        v0.3.7    ini   Start Never
          [ 2] AMX Mod X        RUN   -    amxmodx_mm.dll    v1.8.1.3  ini   Start ANY  
          [ 3] xdsopt           RUN   -    xds_opt.dll       v0.1      ini   Start Never
          [ 4] Fun              RUN   -    fun_amxx.dll      v1.8.1.3  pl2   ANY   ANY  
          [ 5] CStrike          RUN   -    cstrike_amxx.dll  v1.8.1.3  pl2   ANY   ANY  
          [ 6] CSX              RUN   -    csx_amxx.dll      v1.8.1.3  pl2   ANY   ANY  
          [ 7] FakeMeta         RUN   -    fakemeta_amxx.dl  v1.8.1.3  pl2   ANY   ANY  
          [ 8] Engine           RUN   -    engine_amxx.dll   v1.8.1.3  pl2   ANY   ANY  
         8 plugins, 8 running
swds.dll пропатчена VUP-ом v2.5 на предмет уязвимостей. С недавнего времени сервер стал вылетать, причина какой-то интересный exploit. Вот что видим в логе:
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<12><STEAM_ID_LAN><>" 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<-1><><CT>" disconnected
L 02/25/2010 - 23:55:09: "182<-1><><CT>" disconnected
L 02/25/2010 - 23:55:09: "veshaemso<-1><><CT>" disconnected
L 02/25/2010 - 23:55:09: "F A N T I K<-1><><>" disconnected
L 02/25/2010 - 23:55:09: "Nemo<-1><><CT>" disconnected
L 02/25/2010 - 23:55:09: "2GARIN<-1><><CT>" disconnected
L 02/25/2010 - 23:55:09: "kakaxa<-1><><TERRORIST>" disconnected
L 02/25/2010 - 23:55:09: "HLG AutoBot<-1><><TERRORIST>" disconnected
L 02/25/2010 - 23:55:09: "PILOTIK<-1><><CT>" 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
При этом всем игрокам выводится сообщение "Server shutting down". Есть какие-нибудь соображения по поводу того, как устранить проблему?

П.С. сервер падал и до применения VUP-a.

Аватара пользователя
Jonny
Полковник
Полковник
Сообщения: 1371
Зарегистрирован: 30.05.2008
Благодарил (а): 23 раза
Поблагодарили: 54 раза

#2 Сообщение 26.02.2010, 22:46

судя по всему уязвимость в метамоде
либо банить по ip (на фаерволле) либо отключать метамод
кстати, какая версия метамода используется? (meta version)
Никакого отношения к нацистским группам и направлениям не имею.

retrib
Нович0к
Нович0к
Сообщения: 17
Зарегистрирован: 05.11.2008

#3 Сообщение 26.02.2010, 23:52

23:55:43 meta version
23:55:43 Metamod v1.19p32 2007/08/12 (5:13)
by Will Day
http://www.metamod.org/
Patch: Metamod-P (mm-p) v32
by Jussi Kivilinna
http://metamod-p.sourceforge.net/
compiled: Aug 12 2007, 18:57:10 EET (optimized)
Отключать метамод это провал. Нужны еще идеи!

mcdemon
Сержант
Сержант
Сообщения: 53
Зарегистрирован: 16.03.2007
Контактная информация:

#4 Сообщение 27.02.2010, 01:57

retrib писал(а):
23:55:43 meta version
23:55:43 Metamod v1.19p32 2007/08/12 (5:13)
by Will Day
http://www.metamod.org/
Patch: Metamod-P (mm-p) v32
by Jussi Kivilinna
http://metamod-p.sourceforge.net/
compiled: Aug 12 2007, 18:57:10 EET (optimized)
Отключать метамод это провал. Нужны еще идеи!
Может стоит попробывать, обычный metamod?

Аватара пользователя
Jonny
Полковник
Полковник
Сообщения: 1371
Зарегистрирован: 30.05.2008
Благодарил (а): 23 раза
Поблагодарили: 54 раза

#5 Сообщение 27.02.2010, 10:35

вырезал из metamod p32 функцию, которая отвечала за перезагрузку списка плагинов, возможно поможет.
естественно даже если это поможет, это не решение проблемы. нужно ждать нормального обновления метамода
обрезанный метамод лежит тут: metamod_p32_j.dll
так же потребуется запихнуть msvcr100.dll в ..\windows\system32\
Никакого отношения к нацистским группам и направлениям не имею.

retrib
Нович0к
Нович0к
Сообщения: 17
Зарегистрирован: 05.11.2008

#6 Сообщение 27.02.2010, 13:36

Ребят, а почему такая уверенность что дело именно в метамоде, а не в самом HLDS и его dll-ках? Я попробовал покачто запустить еще и anti csdos посмотрим на результат...

Метамод уже давно не обновляется, наврядли стоит ждать что кто-то пофиксит) Придется делать своими силами.

Алсо, нельзя ли скомпилить так чтоб не требовались дополнительные дллки? не дело всеж!

Аватара пользователя
Jonny
Полковник
Полковник
Сообщения: 1371
Зарегистрирован: 30.05.2008
Благодарил (а): 23 раза
Поблагодарили: 54 раза

#7 Сообщение 27.02.2010, 14:00

Потому что метамод может вырубить сервер по собственной инициативе, если один из плагинов не был загружен
К тому же перезагрузка списка плагинов не совсем стандартная процедура вроде как

PS: Алсо конечно можно, благо исходники открыты. Качай и компиль :)
Никакого отношения к нацистским группам и направлениям не имею.

retrib
Нович0к
Нович0к
Сообщения: 17
Зарегистрирован: 05.11.2008

#8 Сообщение 27.02.2010, 22:30

Jonny, намекни пожалуйста (автозамена сукно) какие строки правил. антиксдос нифига не спасает, на дедикатед серверс требуют денег за неизвестно что. Буду пробовать править метамод :)

Аватара пользователя
Jonny
Полковник
Полковник
Сообщения: 1371
Зарегистрирован: 30.05.2008
Благодарил (а): 23 раза
Поблагодарили: 54 раза

#9 Сообщение 27.02.2010, 22:37

mlist.cpp

Код: Выделить всё

mBOOL DLLINTERNAL MPluginList::ini_refresh() {
	return(mTRUE);
}

mBOOL DLLINTERNAL MPluginList::refresh(PLUG_LOADTIME now) {
	return(mTRUE);
}
Впрочем, если обрезание не спасло, значит я был неправ
Про дедикейтед серверс - согласен. Вторичный так сказать ресурс, лично я предпочитаю брать всё из первых рук :)
Никакого отношения к нацистским группам и направлениям не имею.

VoidLess
Нович0к
Нович0к
Сообщения: 23
Зарегистрирован: 09.11.2009

#10 Сообщение 28.02.2010, 00:13

Попробуй xdsopt выключить
у меня с ним вообще серваки не запускались, когда его попробовал (linux)

retrib
Нович0к
Нович0к
Сообщения: 17
Зарегистрирован: 05.11.2008

#11 Сообщение 28.02.2010, 12:47

Благодарю, испробую оба совета!

hasta
Нович0к
Нович0к
Сообщения: 11
Зарегистрирован: 23.06.2008

#12 Сообщение 01.03.2010, 11:45

да, это все происходит через метамод, вот видео
https://www.youtube.com/watch?v=cnLgsdwDYpA

скоро распространится , все админы будут рады

retrib
Нович0к
Нович0к
Сообщения: 17
Зарегистрирован: 05.11.2008

#13 Сообщение 01.03.2010, 13:00

Значит нужно подготовиться и устранить уязвимость заранее) Кто-нибудь пробовал достать сам эксплойт для тестов?

P.S. валятся обе версии метамода :x

Аватара пользователя
Jonny
Полковник
Полковник
Сообщения: 1371
Зарегистрирован: 30.05.2008
Благодарил (а): 23 раза
Поблагодарили: 54 раза

#14 Сообщение 01.03.2010, 13:12

retrib писал(а):Значит нужно подготовиться и устранить уязвимость заранее) Кто-нибудь пробовал достать сам эксплойт для тестов?
Тут либо искать экспоит, либо анализировать пакеты. Второе мне кажется было бы проще.
Никакого отношения к нацистским группам и направлениям не имею.

retrib
Нович0к
Нович0к
Сообщения: 17
Зарегистрирован: 05.11.2008

#15 Сообщение 01.03.2010, 18:14

Я уже работаю над первым вариантом, все же надежнее будет. Конечно, можно просто просмотреть весь код метамода, и зная поведение эксплойта найти уязвимое место, но я не настолько силен в программировании.

Добавлено спустя 4 часа 34 минуты 4 секунды:
Новое инфо:

1. Ошибка в самом хлдс, не в метамоде. :( Ошибка выглядит так:
Изображение
Сервер падает как с метамодом, так и с родной mp.dll так что мучать исходники метамода смысла нет. Лучше мучать исходники dproto чтобы добавить защиту от уязвимости.

2. Падают вообще все сервера всех версий (linux/windows). Абсолютно нет разницы как сервер настроен и какие моды стоят. Спасает только установка пароля sv_password. Впрочем в подлом эксплойте уже предусмотрена возможность ввода пароля.

Ответить