Всем здравствуйте от команды UNITWAY PW. Этой темой мы хотели бы продемонстрировать отсутствие нечестной конкуренции с нашей стороны и черной, некрасивой, лживой конкуренцией со стороны проекта NewDestiny. Здесь публикуется список решений от атак, которые когда-либо использовали администраторы NewDestiny loko9988, TyrikMan (Вчерашняя атака OOG была с IP адреса Йошкар Ола), Killer_Pooh (Так же фиксировалась атака с города Волжский). Помимо атак на нас, до нас дошла информация об атаке на ряд других серверов, которое связали с нашим открытием. Публикацией ряда фиксов от этих атак мы демонстрируем нашу непричастность к атакам на кого-либо, не смотря на ярко озабоченную позицию администратора Zzebra PW (mirthost) по нашему проекту. Мы совершенно не держим зла на всех, кто повелся на желтую статью о нас, у каждого своя голова на плечах. [ATTACH] [ATTACH] И это только часть их аккаунтов. Одной из причин публикации этой темы стали слухи, которые до нас дошли. Суть этих слухов в том, что loko9988 атакует сервера не только из-за конкуренции, но и для того, чтобы предлагать этим серверам защиту через него. Защита от OOG атак на основе iptables: Первым делом мы создаем скрипт-правила фаерволла, назвать можете как пожелаете. iptables -A INPUT -p tcp -m multiport --dports 29000 -m length --length 500:65535 -j LOG --log-prefix "PW" Этим правилом мы записываем все игровые пакеты с порта 29000 размером от 500 до 65535 байтов. iptables -A INPUT -p tcp -m multiport --dports 29000 -m length --length 500:65535 -m recent --name packets --set iptables -A INPUT -p tcp -m multiport --dports 29000 -m length --length 500:65535 -m recent --name packets --update --seconds 1 --hitcount 100 -j REJECT Этими правилами мы блокируем пользователя, если сервер получил от него больше 100 пакетов размером 500 - 65535 байт за 1 секунду на 29000 (игровой) порт. iptables -A INPUT -p tcp -m multiport --dports 29000 -m length --length SIZE -m recent --name packet1 --set iptables -A INPUT -p tcp -m multiport --dports 29000 -m length --length SIZE -m recent --name packet1 --update --seconds 15 --hitcount 3 -j REJECT Этими правилами мы блокируем пользователей, которые отправили больше 3-х пакетов за 15 секунд на порт 29000. SIZE - размер пакета в байтах. Как отследить размер пакета в байтах? После первого правила, где мы логируем все игровые пакеты, Вы сможете увидеть их в файле /var/log/syslog или командой dmesg в консоли сервера. Когда идет атака в syslog будет множество одинаковых пакетов за короткое время. [68003.357231] PW IN=ipip1 OUT= MAC= SRC=USER IP ADRESS DST=*.*.*.* LEN=547 TOS=0x00 PREC=0x00 TTL=241 ID=13328 DF PROTO=TCP SPT=22511 DPT=63947 WINDOW=254 RES=0x00 ACK PSH URGP=0 В примере выше - размером пакета является 'LEN=547'. С OOG защитой разобрались. Перейдем к другим способам конкуренции NewDestiny. Брут аккаунтов. Здесь все совершенно просто: #block brute force login iptables -A INPUT -p tcp -m multiport --dports 29000 -m conntrack --ctstate NEW -m recent --name brute --set iptables -A INPUT -p tcp -m multiport --dports 29000 -m conntrack --ctstate NEW -m recent --name brute --update --seconds 30 --hitcount 3 -j REJECT Этим правилом мы блокируем IP пользователя на 30 секунд, если он сделал больше 3-х запросов на подключение к порту 29000. Рекомендации защиты сервера от взлома: Делайте полное ограничение по портам, кроме игрового через iptables. Делайте подключение к серверу по ssh key (ключи) с кодовым словом. Используйте последние версии mysql, apache2 и других немаловажных пакетов. После нагрузки через OOG используйте logrotate, иначе при резервном копировании логов оперативная память Вашего сервера будет полностью использована. Это может стать последствием для взлома. Не используйте постороннее ПО на игровом сервере. Используйте нестандартный фильтр паролей игроков. За несколько часов на нашей авторизации было свыше 50.000 невалидных попыток авторизаций. У 30% наших игроков совпадали логины из этих пар логин-пароль. Мы предпочитаем честное ведение конкуренции, у нас нет времени и лишних финансов на атаки. Не связывайтесь с этими людьми, это может плохо кончиться.
Имена участников (разделяйте запятой).