| Веб-сайт является частью корпоративной инфраструктуры и не удивительно, что компании большое внимание уделяют вопросам безопасности.
По данным компании Positive Technologies:
|
Взлом корпоративного сайта - это удар по репутации и имиджу компании. Очень неприятное в подобных событиях - огласка происшествия. Но потеря данных с сайта, информации о клиентах – это уже прямые убытки. И огласка таких происшествий происходит далеко не всегда. Чем серьезнее компания и известнее ее имя и продукты, тем существеннее бывают риски и убытки от взлома корпоративного сайта.
Обеспечение информационной безопасности веб-систем - процесс сложный и кропотливый, в котором участвуют разные поставщики услуг и программных продуктов. С большой уверенностью можно утверждать, что нельзя создать безопасную систему и прекратить работу по обеспечению информационной безопасности. Создавая систему, вы должны непрерывно следить за безопасностью информационной среды и за безопасностью веб-приложений.
Использование продукта «1С-Битрикс: Управление сайтом», получившего сертификат «Безопасное веб-приложение» от компании Positive Technologies, проводившей аудит информационной безопасности системы, позволяет с уверенностью утверждать, что современные корпоративные сайты могут быть надежно защищены.
При разработке ASP.Net продукта сохранены все принципы разработки, используемые в PHP-версии. ASP.NET-версия и обновления к нему проходят обязательный аудит безопасности.
В качестве независимых экспертов для подготовки материалов данного раздела привлечены специалисты компании Positive Technologies.
Безопасность «1С-Битрикс: Управление сайтом ASP.NET»
При проектировании программного продукта «1С-Битрикс: Управление сайтом ASP.NET» вопросам безопасности продукта уделялось особое значение на всех этапах разработки и тестирования.
Для обеспечения более высокого уровня безопасности ваших интернет-проектов необходимо комплексно подойти к вопросу безопасности информационной среды и веб-приложений.
Используя для работы веб-проекта только «1С-Битрикс: Управление сайтом ASP.NET», вы можете минимизировать угрозы, связанные с веб-приложениями. Пользуясь технологией SiteUpdate, вы будете всегда располагать самой последней версией продукта. Усилия, которые предпринимает компания «Битрикс» для обеспечения высокого уровня безопасности в сочетании с независимым аудитом и непрерывным мониторингом со стороны компании Positive Technologies позволяют быть уверенными в высоком уровне защищенности сайта в целом.
![]() | ![]() | ||
|
| |||
![]() | ![]() |
1. Используйте функцию htmlspecialchars. Любой вывод на сайте из базы данных, HTML-формы или других источников должен быть предварительно приведен в безопасный, с точки зрения HTML, вид при помощи функции htmlspecialchars. У разработчика должно войти в привычку использование этой функции. Ни в коем случае нельзя писать "echo $_GET['id'];", везде пишите "echo htmlspecialchars($_GET['id']);", где бы этот вывод не находился: в заголовке, теле страницы или атрибуте тега <a href="". Применение этого простого правила навсегда избавит вас от XSS-атак. Следует также отметить, что в продукте "1С-Битрикс: Управление сайтом" есть методы, которые автоматизируют преобразование строк из БД или форм в HTML безопасный вид (например, CDBResult::GetNext), а некоторые API функции, выбирающие данные, сами преобразуют все строки, подготавливая их для вывода на страницу (например, GetIBlockElement). Подробности работы каждой функции можно найти в документации продукта.
2. Используйте метод $DB->ForSQL в запросах к БД. При обычной разработке веб-проекта на основе продукта "1С-Битрикс: Управление сайтом" вам не придется писать прямые запросы к базе данных, т.к. API функции сделают это за вас, но если вы разрабатываете свой модуль или хотите выбрать данные из собственных таблиц, то все параметры, входящие в запрос, необходимо обернуть методом CDatabase::ForSQL. В противном случае вы рискуете быть атакованы методом SQL инъекция.
3. Любой доступ к файлам должен быть контролируемым. Зачастую разработчики используют метод динамического подключения скриптов, имя которого передается параметром в URL (например, require($_REQUEST['act'])). В этом случае обязательно нужно составить список допустимых имен скриптов и подключать необходимый файл только после предварительной проверки его имени. В противном случае злоумышленник сможет выполнить произвольный скрипт или вывести содержимое файла с секретной информацией. Также один из возможных скриптов, представляющий угрозу безопасности, это скрипт, выводящий содержимое некоторого файла. В обоих случаях следует помнить, что путь к файлу может состоять из символов обратного пути (значок две точки, например "../secret.txt"). Файловая система корректно обработает такой путь к файлу и вы, сами того не представляя, можете дать доступ к файлу, находящемуся далеко от той папки, к которой вы планировали дать доступ пользователю. Важно не забывать про символ обратного слеша "\", так как такой символ является аналогом прямого слеша "/" в некоторых ОС. Перед обработкой пути к файлу воспользуйтесь функцией продукта Rel2Abs, которая приведет путь в абсолютный вид и позволит избежать дальнейших неприятностей с его использованием.
4. Проверяйте все, что посетитель загружает к вам на сайт. Одна из типичных ошибок, при обработке загрузки файлов на сервер - это недостаточная проверка или вообще отсутствие проверки расширений имен загружаемых файлов. Важно помнить, что потенциально опасны файлы не только с расширением .php, но и .pl и даже .asp файлы, т.к. сайт может находиться на веб-сервере IIS, который исполняет такие файлы. Используя такую уязвимость, злоумышленник может под видом аватара на форуме загрузить вредоносный код и выполнить его. Поэтому единственно правильный вариант это составить список допустимых расширений имен файлов (например: jpg, gif, png) и разрешать загружать только их. В продукте для безопасной загрузки файлов и их проверки разработан ряд функций, например, CFile::CheckFile.
5. Не храните и не передавайте в URL потенциально опасные данные. Ни в коем случае нельзя сохранять в cookie или передавать в URL секретную информацию, особенно в открытом (незашифрованном виде). Помните, что эти данные могут быть доступны из javascript или в лог-файлах прокси или веб-серверов. Размещая сторонний счетчик или баннер, вы рискуете, что эти данные станут доступны злоумышленнику. Поэтому вся закрытая информация должна передаваться в POST запросах, при возможности с использованием HTTPS протокола, и храниться в зашифрованном виде.
6. Избегайте потенциальных мест для DOS атаки. Любой вычислительный процесс, будь это запрос к базе данных или сложный алгоритм шифрования, является потенциально подверженным DOS атаке. Поэтому максимально используйте технологию кэширования или специальную защиту от таких атак. В продукте "1С-Битрикс: Управление сайтом" для этого имеются все необходимые инструменты: во-первых, это автоблокировка агрессивного клиента, реализованная в модуле статистики - механизм, который блокирует клиентов, выполнивших максимально допустимых запросов за некоторое время, во-вторых, это механизм кэширования для частоиспользуемых и ресурсоемких участков кода.
Все вышеприведенные правила должны применяться не только к параметрам, поступающим в GET или POST запросах, но также к любой другой информации, поступающей с клиентского компьютера, например cookies или другим параметрам HTTP запроса. Не стоит надеяться на такие переменные как HTTP_USER_AGENT, указывающий браузер посетителя или HTTP_X_FORWARDED_FOR, указывающий реальный IP адрес посетителя, зашедшего через прокси-сервер, - помните, вся эта информация передается в заголовке HTTP запроса и запросто может быть подделана злоумышленником.
Важно помнить, что сайт - это ваше лицо в Интернете, которое увидят миллионы посетителей со всего мира, и его безопасность и неуязвимость - это не просто меры предосторожности, это признак вашего профессионализма и надежности.
Обеспечение безопасности информационной среды - задача сложная и ответственная.
Вы можете поручить задачу обеспечения безопасности Информационной среды надежному дата-центру или хостинг-провайдеру. В штате крупных компаний обычно существует должность офицера безопасности, который отвечает за независимый мониторинг и обеспечение комплекса мер безопасности и защиты.
Мы располагаем достоверной информацией относительно уровня обеспечения безопасности Информационной среды в компании DATAFORT и можем рекомендовать размещение выделенных веб-серверов, требующих высокого уровня безопасности в данной компании.
|
Вниманию хостинг провайдеров Мы будем рады разместить информацию о вашей компании на сайте в разделе «Безопасность». Направьте нам запрос на адрес info@1c-bitrix.ru и информацию о вашей информационной инфраструктуре, используемых вами автоматизированных и ручных средствах мониторинга и обеспечения безопасности. | ||
Шифрование данных
Использование алгоритмов шифрования позволяет исключить целый класс потенциальных рисков, связанных с возможностью перехвата информации в канале передачи.
Промышленным стандартом для защиты веб-приложений является SSL-шифрования в рамках протокола HTTPS. Данный протокол поддерживается всеми браузерами и не требует установки дополнительных компонент для клиентов. Сертификат может быть получен на сайте компании Verisign http://www.verisign.com/
В России сертификат SSL можно оформить через компанию провайдера или в компании RBC http://ssl.rbc.ru/
В качестве сертифицированных ГОСТ алгоритмов, на основе которых строится защита веб-ресурса, используются российские стандарты шифрования данных:
Дополнительные материалы относительно механизмов шифрации по ГОСТ алгоритмам можно получить на сайтах компаний DIGT и "Крипто Про"
Независимый аудит
Несмотря на то, что компания «1С-Битрикс» уделяет важнейшее значение вопросам безопасности в программном продукте и безопасной разработке веб-приложений, для обеспечения нового уровня защищенности и предоставления большей уверенности для клиентов было решено провести независимый аудит информационной безопасности.
|
|
Компания Positive Technologies провела полномасштабное тестирование самой полной версии программного продукта «1С-Битрикс: Управление сайтом», располагая исходными текстами продукта и консультационной поддержкой технических специалистов компании «Битрикс».
Существует целый класс уязвимостей, которым подвержены веб-приложения. Но очень часто проблемы информационной безопасности остаются за рамками бюджета или вообще не фигурируют в этапах разработки.
Интересный материал на эту тему опубликован Алексеем Лукацким, руководителем отдела Интернет-решений компании «Информзащита» (в настоящее время менеджер по развитию бизнеса Cisco Systems) в журнале BYTE Россия:
«Автор прошелся по Web-сайтам некоторых, в том числе и именитых студий, предлагающих свои (недешевые, заметим) услуги по созданию сайтов, и что же? Ни одна из них не упомянула в своих "портфолио" понятие "защищенный сайт". И в типовых договорах нет ни слова о защите…
Что это - некомпетентность или осознанное нежелание ввязываться в неизвестную, а значит, таящую множество сюрпризов область ИТ? К сожалению, приходится признать, что скорее всего первое. Попробую проиллюстрировать этот тезис, опираясь на личный опыт участия в ряде Интернет-проектов...»
Полный текст статьи опубликован в разделе «Защищенный сайт».
Перечислим некоторые из наиболее часто встречающихся проблем:
Перечисленные типы уязвимостей могут встречаться во всех веб-приложениях, независимо от того, разработаны они одним специалистом или известной компанией. Только системное проектирование, продумывание вопросов безопасности на всех этапах разработки и детальное тестирование готового приложения могут позволить исключить появления уязвимостей.