Варианты «дыр», которые могут присутствовать на сайте[6]
Как видите, уязвимостей много и некоторые из них встречаются довольно часто.
Как закрыть «дыры»?
Сразу скажу, что на 100 % «дыры» в сайте закрыть очень тяжело. Иначе говоря, полную гарантию дают только в морге. Но самые «очевидные» уязвимости выявлять и устранять можно и нужно. Причем желательно еще на этапе разработки сайта. Это можно сделать с помощью специализированного программного обеспечения. Благо такое программное обеспечение есть, и даже можно попробовать бесплатные версии. Обзор некоторых программ можно найти по адресу www.xakep.ru/post/37183/default.asp. Практически все программы могут «ловить» те или иные уязвимости и выдавать отчеты с рекомендациями к действию.
Очень важно, чтобы эти действия были проведены как на уровне разработчиков сайта (веб-программистов), так и на уровне тех, кто отвечает за серверы (сисадминов). Иначе может оказаться, что на сайте все «дыры» закрыты, а на сервере для хакеров сплошное раздолье.
Мне приходилось работать с программой X-Spider. Это программный комплекс, позволяющий искать уязвимости как на уровне сервера, так и на уровне сайта. Достаточно мощный и с доступными отчетами. Подходит как для сисадмина, так и для обычного менеджера, ничего не понимающего в «железе» и Linux. Единственный «недостаток» такого софта – он стоит денег. Хотя и небольших. Подробнее про сам софт и отчеты можно почитать, например, в этом обзоре: http://www.ixbt.com/soft/xspider7.shtml.
Еще можно после всех своих свершений заплатить некоторую сумму в долларах хакерам, чтобы они попробовали вас поломать. Когда поломают, пусть заодно расскажут о «дырах», через которые поломали.
А теперь жуткая банальщина, но я вынужден это написать. После проведения тестирования уязвимостей надо составить некий план по их устранению. После того как все сделано, еще раз проверьте все на уязвимости. И так до бесконечности.☺
Организация бэкапов сайта
Бэкап – это резервная копия вашего сайта. Любая уважающая себя хостинговая компания предлагает услуги по резервированию данных. Как правило, бэкапы делаются каждую ночь и за определенный период времени. Основное назначение бэкапа – восстановление сайта после взлома или сбоя на сервере. В нашей практике встречались случаи, когда крупные хостинговые компании «теряли» или «забывали» делать бэкапы сайтов либо делали их не еженощно, а как бог на душу положит, несмотря на то, что договором было предусмотрено ежедневное резервное копирование. Таким образом, наличие бэкапов необходимо контролировать. А еще лучше, если бэкап будет вестись не только силами хостинговой компании, но и независимо вами либо кем– то из сотрудников вашей компании. Если же у вас собственный сервер, то делать бэкапы и следить за ними – обязанность системного администратора. Хотя и сисадмины нуждаются в вашем постоянном контроле.
Случаи из практики
Случай 1. Хостер забыл сделать бэкапы. В нашей практике был случай, когда один очень известный хостер (не будем показывать пальцами) «забыл» сделать бэкапы сайтов. Хотя по договору они заявлялись. Что-то у них там не сработало, и бэкапов за последние две недели не было. Пришлось восстанавливать сайты с бэкапов давностью 17 дней и считать потери.
Случай 2. Когда бэкапов вообще не было. Случаются и более экстремальные случаи, когда бэкапов нет вообще. У одного из клиентов вирус «съел» половину сайта. Естественно, что у хостера был запрошен бэкап, но бэкапов не оказалось. Итог печален – удалось восстановить только часть сайта.
Случай 3. Когда сисадмин забыл сделать бэкап.