1 (18-01-2012 09:57:32 отредактировано Белый Тигр)

Тема: Исследование защищённости веб-сайтов и отдельных веб-приложений

Здравствуйте. Меня зовут Антон Кузьмин. Я занимаюсь безопасностью веб-сайтов. Опыт работы в данной области более 5 лет. Список предоставляемых мною услуг состоит из следующих пунктов:

1. Внешнее исследование веб-сайтов или отдельных веб-приложений (тестирование методом чёрного ящика).

  • Когда проверяемый сайт/приложения располагаются на рабочем сервере.

  • Когда проверяемый сайт/приложения располагаются на тестовом сервере заказчика.

  • Когда проверяемый сайт/приложения располагаются на моём тестовом сервере (по необходимости предоставляю VDS).

2. Исследование исходных кодов веб-приложений на наличие уязвимостей (PHP/Zend Framework/Kohana).
3. Предоставление оперативной помощи при взломе или инфицировании сайта.
4. Консультации в области защиты веб-приложений.

Отзывы клиентов.

Ниже каждый из этих пунктов расписан более подробно.

1. Внешнее исследование веб-сайтов или отдельных веб-приложений
В данном случае тестирование проводится методом «чёрного ящика». Я исполняю роль атакующего, которому ничего неизвестно о системе (или известно, но очень мало). Обнаружение изъянов производится как автоматизированными методами (использование специализированных утилит, сканеров), так и вручную. По желанию заказчика ПО, автоматизирующее какие-либо действия злоумышленника, может быть исключено из списка используемых инструментов. Например, необходимость в этом может возникать, когда постоянная нагрузка на сервер, на котором находится проверяемое приложение, очень высока.
Данная услуга предоставляется в трёх вариантах, различающихся расположением целевых приложений.

1.1 Когда проверяемый сайт/приложения располагаются на рабочем сервере
В данном случае все действия по поиску уязвимостей будут произведены «по живому» — на рабочих экземплярах приложений, с которыми в момент проверки взаимодействуют реальные пользователи. Это очень опасно, так как при исследованиях методом «чёрного ящика» всегда есть вероятность нарушения работы приложения по причине незнания его архитектуры. А в данном случае, при столь неблагоприятном развитии событий, это напрямую затронет реальных посетителей, что может нанести материальный ущерб заказчику. Со стороны тестировщика здесь также имеется множество неудобств — необходимо действовать очень аккуратно и отказываться от многих проверок, дабы свести риск появления ущерба для заказчика к нулю. К тому же, в случае успешного проникновения высока вероятность того, что в руки к исполнителю случайно могут попасть персональные данные или другая чувствительная информация, принадлежащая реальным людям.

1.2 Когда проверяемый сайт/приложения располагаются на тестовом сервере заказчика
Думаю, название этого варианта говорит само за себя. Заказчик располагает целевые приложения в тестовом окружении и даёт к ним доступ исполнителю. Основным условием здесь является то, что всё, что происходит с тестовыми копиями приложений, никак не должно влиять на их рабочие экземпляры. Это даёт тестировщику полную свободу действий, а также сводит к нулю вероятность попадания в его руки какой-либо чувствительной информации (хеши паролей реальных пользователей, их имена, почтовые адреса), персональных данных и т. д. Ведь заказчик просто может изменить их на фиктивные.

1.3 Когда проверяемый сайт/приложения располагаются на моём тестовом сервере
Тоже самое, что и вариант описанный выше, только здесь тестовые экземпляры приложений располагаются на моём оборудовании. В случаях когда заказчик понимает всю опасность тестирования рабочих копий приложений, но по каким-либо причинам не может организовать тестовое окружение, я бесплатно предоставляю ему для этого одну или более VDS (количество и характеристики подбираются для каждого случая отдельно). Контролировать их работу (по VNC/SSH/NX) заказчик может с самого начала установки. При этом, если виртуальных серверов несколько, они будут объединены друг с другом в локальную сеть, доступ к которой осуществляется по зашифрованному VPN-соединению. Вся работа по настройке серверов и развёртыванию тестовых копий целевых приложений может производиться как специалистами заказчика, так и мною под его руководством.

2. Исследование исходных кодов веб-приложений на предмет наличия в них уязвимостей
Так как тестирование происходит методом «белого ящика», вероятность обнаружения уязвимостей значительно возрастает. Возьмусь за исследование приложений написанных на языке PHP. Знаком с фреймворками ZendFramework и Kohana.

3. Оперативное оказание помощи при взломе или инфицировании веб-сайта.
Думаю из названия услуги сразу можно понять её смысл. В процессе работы происходит обнаружение и закрытие уязвимостей через которые было совершено нападение, устранение последствий атаки, принимаются меры для предотвращения подобных инцидентов в будущем. Работа идёт до тех пор, пока проблема заказчика не будет решена окончательно (например прекратится заражение веб-сайта вирусами).

4. Консультации в области защиты веб-приложений
Помощь с вопросами идентификации и устранения каких-либо уязвимостей, защиты веб-приложений и пр. Связь возможна как по электронной почте, так и по телефону или Skype.


По окончанию работ связанных с услугами №1.* и №2 заказчику предоставляется отчёт, в котором содержится общая оценка защищённости приложения(ий) и список найденных уязвимостей с их подробным описанием, демонстрационными примерами и рекомендациями по устранению.

В случае работы с услугами 1.1 и 1.2 заказчику предоставляется телефон для экстренной связи, по которому меня можно найти в любое время суток.

Предвидя распространённый вопрос «А на какие виды уязвимостей проводятся проверки?», могу сказать, что всё зависит от конкретного случая, ведь в разных приложениях могут использоваться разные технологии, и проводить проверки, связанные с неиспользуемой технологией, бессмысленно. Поэтому весь список проводимых проверок формируется непосредственно в процессе работы. Думаю, полезнее будет указать классы знакомых мне изъянов:

  • Уязвимости инъективной группы (XSS, всевозможные инъекции (MX, CRLF, LDAP, SQL и т.д.), RFI/LFI)

  • Нарушения логики работы приложения

  • Проблемы авторизации и идентификации пользователей

  • Уязвимости связанные с устройством файловой структуры сайта

  • Небезопасная настройка ПО (как самого приложения, так и его окружения - СУБД, веб-сервера и т. д.)

  • Ошибки, позволяющие осуществить атаки направленные на отказ в обслуживании (не путайте с DDoS-атаками)

  • Остальное (раскрытие информации, JavaScript Hijacking, возможность обхода CAPTCHA, возможность сбора почтовых адресов и пр.)

На каждую из вышеприведённых услуг с заказчиком заключается договор. Его подписание возможно двумя способами — с помощью ЭЦП или через пересылку Почтой России. В последнем случае письмо высылается экспресс-почтой (EMS), так что времени на само заключение договора уходит немного. По желанию заказчика возможно использование договора его образца.
В случае заказа услуг №1.3 (если установкой целевых приложений занимаюсь я) и №2 оформляется акт приёма-передачи исходных кодов.
В конце работы заказчику предоставляется счёт на сумму, оговариваемую при подписании договора, а также акт сдачи-приёмки оказанных услуг/работ. По желанию может быть предоставлен товарный чек.

Каких-то фиксированных сроков и цен у меня нет. Всё это определяется в ходе ознакомления с целевым приложением. Если вдруг цена для заказчика оказывается слишком высокой, всегда есть возможность её корректировки. В среднем месяц моей работы с одним заказчиком стоит 20 000 рублей. Но заказы с таким временем выполнения встречаются редко. Чаще всего всё решается в течении 1-3 недель.
Работаю только с фиксированной оплатой, то есть на схемы «n рублей за уязвимость» не соглашусь.

Оплата производится любым удобным для заказчика способом — банковским переводом, WebMoney, YandexMoney и т. д.

Любые вопросы можете задать мне на этом форуме, по Skype на логин anton.kuzmin.russia, по ICQ на номер 639281445, или по электронной почте на адрес [email protected] . Обязательно отвечу на все поступившие сообщения.

Добавлено: 07-12-2011 13:31:23

Обновил первое сообщение т.к. добавился новый пункт в списке предоставляемых услуг (Оперативное оказание помощи при взломе или инфицировании веб-сайта).

Добавлено: 18-01-2012 09:57:46

В первом сообщении опубликована ссылка на отзывы клиентов.