По эту сторону взлома

Блин, неприятно оказываться взломанным… Злые хацкеры из Бразилии поломали мне хостинги – дефейснули, точнее, через очередную дырку в пхп-софте клиентов, в принципе, это фигня, но вот дальнейший разбор полетов показал, что взлом зашел слишком далеко – на серваке обнаружился rootkit. Штука весьма неприятная, но тоже лечимая – поскольку удалось вычислить кто и как им управляет и я это дело быстренько закрыл, но потом оказалось, что половина системных файлов уже пропатчена для того, чтобы руткит нельзя было вычислить. Помогла штука под названием busybox – она включает в себя практически все файлы, которые обычно подменяются. С ее помощью я начал вычищать и восстанавливать файлы. Хакеры (или руткит) использовали очень интересную штуку – аттрибуты файлов (у ext2 файловой системы есть набор некоторых аттрибутов, которые так просто и не увидишь). Когда я пытался удалить “зараженный” файл, система сообщала мне, что Operation not permitted. И это при том, что я был рутом! Спасли команды lsattr, chattr – которые как раз и показывают и меняют эти хитрые аттрибуты. В общем процесс более-менее наладился, пока я не напоролся на файл ifconfig – он не удалялся никак… Дальнейшие проверки показали, что файловая система повреждена – inode файла был отрицательным. Я попробовал запустить fsck – меня предупредили о неприятностях и я ребутнул машину. Больше я ее удаленно не видел. Звонок к провайдеру обрадовал – на консоли висела надпись Unable to mount root file system.
Пришлось ехать на площадку к провайдеру, большое спасибо товарищу apl, за содействие в последующем. На месте оказалось, что fsck после 2х часовой работы не принес никаких результатов и linux пришлось снести… Хорошо, что были бэкапы юзерских данных и конфигов. Правда я уже вторые сутки занимаюсь восстановлением сервера и спал за это время только часа четыре, но все-равно, могло быть и хуже.
Теперь там вместо линукса стоит FreeBSD и я надеюсь, что с безопасностью будет полегче, все ж под фрю ставить необходимый софт и его потом апдейтить значительно легче, чем под линух. Да и саму фрю держать в свежем виде легче.
Из всего произошедшего можно сделать следующие выводы:
-Паранойя в среде админов – это правильное явление.
-Самое большое внимание надо уделять php – именно тудой происходит большинство “пролезаний” в систему.
-Нужно ставить системы мониторинга целостности системы и регулярно читать их отчеты.
-Вполне неплохим решением может быть установка системы обнаружения проникновения или осуществления попыток.
-Фаерволл должен находится в режиме default to deny и держать открытым ограниченное количество портов. В идеале не должны быть вообще доступны непривилегированные порты.
-/tmp должна быть отдельной системой, смонтированной как nodev, nosuid, noexec – т.е. даже если “плохие парни” выполнят код, скачают в темп какой-нить эксплойт, то запустить его им не удастся.
Наверняка найдется еще куча советов, но сейчас я очень хочу спать и вряд ли их вспомню 🙂

Similar Posts

  • Пластиковые карточки

    Сегодня в банке взял выписку со счета карточного. Надо было для того, чтобы подтвердить счет на пейпеле. Решил заодно подсчитать расходы по Турции, точнее перевод валют. Вывод меня порадовал: Карточка оказалась выгоднее налички Вот подсчеты Выписка: Сумма: 165 YTL Комиссия: 5.72 грн. Общая сумма: 578.15 грн Считаем: 165 лир – это 114 долларов по курсу…

  • Генератор облаков

    Я написал эту шнягу, я даже заставил ее работать, но блин, она не хочет создавать прикольные облака, получаются только какие-то пасмурные небеса и усе… Еще я задолбался переделывать этот генератор, но я все-таки заставлю его делать то, что надо 🙂 Share this post: Share on X (Twitter) Share on Facebook Share on LinkedIn Share on…

  • Движение камеры

    Сегодня наконец занялся доводкой движения камеры вокруг персонажа – после того, как она начала крутиться, я почти родился заново 🙂 Усердие удвоилось, так что скоро наверно буду делать очередной релиз, но в котором уже можно будет хоть как-то интересно бегать по прото-уровню. Недавно удалось удвоить ФПС – что не может не радовать 🙂 На данный…

  • Perl

    Вчера у нас был кранч, по ходу пьесы оказалось, что нужно для игры написать скрипт, в который забить полтора десятка компонент с разными настройками – самая настоящая Monkey Job. И тут я вспомнил про то, что умею писать на перле. Написал скриптец для генерации кода за 15 минут и сэкономил эдак час времени, а может…

  • Возвращение

    Вот наконец-то прилетел назад из Турции, и завтра уже идти на работу. Но теперь это сделать значительно легче чем раньше, все-таки 2 недели отпуска – это хорошо. Share this post: Share on X (Twitter) Share on Facebook Share on LinkedIn Share on Email Share on Reddit

  • PSP Video

    Как бы я не любил эту приставку, но иногда она своей “юзабилити” ставит в тупик. Что может объяснить удобство просмотра видео на ней? Для того, чтобы глянуть ролик, его надо положить в папку MP_ROOT, внутри которой будет ещё одна дружелюбная – 100MNV01. И в неё вы кладёте заботливо созданный video.mp4 файл. Вот только он называться…