Учебники

Разработка сайтов — Безопасность

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

По мнению экспертов по безопасности, они предложат провести проверку безопасности веб-сайта на основе OWASP TOP 10 , который является мощным информационным документом для безопасности веб-приложений. OWASP Top 10 представляет широкий консенсус в отношении наиболее важных недостатков безопасности веб-приложений.

SQL-инъекции

Недостатки внедрения, такие как внедрение SQL, OS и LDAP, происходят, когда ненадежные данные отправляются интерпретатору как часть команды или запроса. Враждебные данные злоумышленника могут заставить интерпретатора выполнить непреднамеренные команды или получить доступ к данным без надлежащей авторизации.

Решение. Чтобы защитить свою веб-страницу от iSQL, необходимо проверить входные данные и символы фильтрации.

впрыскивание

Сломанная аутентификация и управление сессиями

Прикладные функции, связанные с аутентификацией и управлением сеансами, часто не реализуются правильно, что позволяет злоумышленникам взломать пароли, ключи, токены сеансов или даже использовать другие недостатки реализации для принятия идентификационных данных других пользователей.

Решение. Чтобы обезопасить свой сайт от этого недостатка, вы должны создавать файлы cookie и сеансы со сроком действия.

Межсайтовый скриптинг (XSS)

Недостатки XSS возникают всякий раз, когда приложение берет ненадежные данные и отправляет их в веб-браузер без надлежащей проверки или экранирования. XSS позволяет злоумышленникам выполнять сценарии в браузере жертвы, которые затем могут захватывать пользовательские сеансы, портить веб-сайты или перенаправлять пользователя на вредоносные сайты.

Решение — Защита от этого находится на том же уровне, что и для iSQL.

Scripting

Небезопасная прямая ссылка на объект

Прямая ссылка на объект возникает, когда разработчик предоставляет ссылку на внутренний объект реализации, такой как файл, каталог или ключ базы данных. Без проверки контроля доступа или другой защиты злоумышленники могут манипулировать этими ссылками для доступа к несанкционированным данным.

Решение. Для защиты таких файлов вы должны внедрить специальные механизмы защиты, такие как пароли.

Неправильная настройка безопасности

Хорошая безопасность требует наличия безопасной конфигурации, определенной и развернутой для приложения, сред, сервера приложений, веб-сервера, сервера базы данных и платформы. Безопасные настройки должны быть определены, реализованы и поддерживаться, так как настройки по умолчанию часто небезопасны.

Решение — Программное обеспечение должно быть обновлено.

Конфиденциальная информация

Многие веб-приложения не обеспечивают надлежащую защиту конфиденциальных данных, таких как кредитные карты, налоговые идентификаторы и учетные данные для аутентификации. Злоумышленники могут украсть или модифицировать такие слабо защищенные данные для совершения мошенничества с кредитными картами, кражи личных данных или других преступлений.

Решение — конфиденциальные данные заслуживают дополнительной защиты, такой как шифрование в покое или при передаче, а также особые меры предосторожности при обмене с браузером.

Отсутствует контроль доступа на уровне функций

Большинство веб-приложений проверяют права доступа на уровне функций, прежде чем сделать эту функцию видимой в пользовательском интерфейсе. Однако приложения должны выполнять одинаковые проверки контроля доступа на сервере при доступе к каждой функции. Если запросы не проверены, злоумышленники смогут подделывать запросы на доступ к функциям без надлежащей авторизации.

Решение — Вы должны проверить уровни аутентификации.

Подделка межсайтовых запросов (CSRF)

CSRF-атака заставляет вошедшего в систему браузера жертвы отправлять поддельное HTTP-запрос, включая cookie-файл сеанса жертвы и любую другую автоматически включаемую информацию аутентификации, в уязвимое веб-приложение. Это позволяет злоумышленнику заставить браузер жертвы генерировать запросы, которые уязвимое приложение считает законными запросами жертвы.

Решение . Наиболее часто используемое предупреждение заключается в том, чтобы прикреплять некоторые непредсказуемые токены на основе запросов к каждому запросу, исходящему с веб-сайта, и связывать их с сеансом пользователя.

Использование компонентов с известными уязвимостями

Компоненты, такие как библиотеки, платформы и другие программные модули, почти всегда работают с полными привилегиями. Если уязвимый компонент используется, такая атака может способствовать серьезной потере данных или захвату сервера. Приложения, использующие компоненты с известными уязвимостями, могут подорвать защиту приложений и обеспечить ряд возможных атак и воздействий.

Решение. Проверьте, есть ли уязвимости в той версии компонента, и попытайтесь избежать или изменить ее с помощью другой версии.

Недействительные перенаправления и пересылки

Веб-приложения часто перенаправляют и перенаправляют пользователей на другие страницы и веб-сайты. Эти приложения используют ненадежные данные для определения целевых страниц. Без надлежащей проверки злоумышленники могут перенаправить жертв на фишинговые или вредоносные сайты или использовать пересылки для доступа к несанкционированным страницам.

Решение — Всегда проверяйте URL.

Безопасные используемые протоколы

Это тот случай, когда у вас есть план VPS, и вы управляете всем самостоятельно. Когда службы установлены, они используют порты по умолчанию. Это облегчает работу хакеру, потому что он знает, где искать.

Некоторые из основных сервисных портов, которые используются при хостинге сайтов, приведены ниже —

  • SSH — порт 22
  • FTP — порт 21
  • MySQL — порт 3306
  • DNS — порт 53
  • SMTP — порт 25

Изменение порта этих служб зависит от операционной системы и ее разных версий. В дополнение к этому, вы должны установить брандмауэр. Если это ОС Linux, мы порекомендуем IPtables и заблокируем все остальные ненужные порты. Если ваша ОС — Windows, вы можете использовать встроенный брандмауэр.

Чтобы заблокировать вход в систему с помощью грубой силы, вы можете использовать Fail2ban , программное обеспечение на основе Linux, и заблокировать все IP-адреса, которые делают много неудачных попыток входа в систему.