Введение в безопасность веб-приложений
Сейчас мы живем в мире Интернета. Каждый день в Интернете происходит миллиард транзакций в каждой области, такой как банковское дело, школы, бизнес, ведущие институты мира, исследовательские центры. Чрезвычайно важно, чтобы передаваемые данные были очень безопасными, а связь - надежной. Следовательно, наступает важность защиты сети.
Что такое безопасность веб-приложений?
Безопасность веб-приложений - это отрасль информационной безопасности, которая занимается безопасностью веб-приложений, веб-сервисов и веб-сайтов. Это своего рода защита приложений, которая применяется на уровне сети или Интернета.
Веб-безопасность важна, поскольку веб-приложения подвергаются атакам из-за плохого кодирования или неправильной очистки входных и выходных данных приложения. Распространенными атаками веб-безопасности являются межсайтовый скриптинг (XSS) и инъекции SQL.
Помимо XSS, SQL-инъекций, другими типами атак веб-безопасности являются выполнение произвольного кода, раскрытие пути, повреждение памяти, удаленное включение файла, переполнение буфера, включение локального файла и т. Д. Веб-безопасность полностью основана на людях и процессах. Следовательно, крайне важно, чтобы разработчики использовали надлежащие стандарты кодирования и проверку работоспособности для любых таких угроз веб-безопасности, прежде чем веб-сайты начали работать.
Фактически, проверки безопасности должны применяться на самой ранней стадии разработки и применяться на каждом этапе жизненного цикла разработки программного обеспечения. Разработчики должны быть хорошо обучены навыкам кибербезопасности и безопасного кодирования. Одноразовое тестирование приложения определенно неэффективно. Непрерывная регрессия для атак веб-безопасности должна быть реализована на каждом этапе.
Стандартизация веб-безопасности
OWASP (Open Security Application Project Project) является органом стандартизации безопасности веб-приложений. Он предоставляет полную документацию, инструменты, методы и методологии в области безопасности веб-приложений. OWASP является одним из непредвзятых источников информации о лучших практиках в области безопасности веб-приложений.
OWASP Основные риски веб-безопасности
Ниже приведены основные риски веб-безопасности, о которых сообщалось в OWASP.
SQL-инъекция:
Это тип инъекционной атаки, которая позволяет выполнять вредоносные и неправильные запросы SQL, которые могут контролировать базы данных веб-сервера. Злоумышленники могут использовать операторы SQL, чтобы обойти меры безопасности приложения. Они могут аутентифицировать или авторизовать веб-страницы или веб-сайты и получать содержимое баз данных SQL, минуя операторы SQL. Эта атака может происходить на сайтах, которые используют SQL, MYSQL, Oracle и т. Д. В качестве баз данных. Это самая распространенная и опасная атака безопасности согласно документации OWASP 2017.
Межсайтовый скриптинг (XSS):
Это позволяет злоумышленникам внедрять сценарии на стороне клиента в веб-приложения и веб-страницы, просматриваемые другими пользователями. Уязвимость межсайтового скриптинга может использоваться для обхода таких политик, как одна и та же политика происхождения. По данным на 2007 год, XSS составлял 84% всех атак безопасности в сети.
В зависимости от чувствительности данных XSS может представлять собой небольшую атаку или серьезную угрозу веб-сайтам.
Эксплойты складывают вредоносные данные в контент, который доставляется в браузер клиента. Когда данные доставляются клиенту, похоже, что объединенные данные получены с самого доверенного сервера и имеют все наборы разрешений на стороне клиента. Теперь злоумышленник может получить расширенный доступ и привилегии для содержимого конфиденциальной страницы, файлов cookie сеанса и различной другой информации.
Сломанная аутентификация и управление сессиями:
Эта атака позволяет захватить или обойти аутентификацию на веб-странице или в приложении.
Это более слабый стандарт, которому следуют разработчики веб-сайтов, которые вызывают такие проблемы, как, например,
- Предсказуемые учетные данные для входа.
- Не защищает учетные данные пользователя при хранении должным образом.
- Идентификаторы сеанса, отображаемые в URL.
- Пароли, идентификаторы сеансов не отправляются по зашифрованным URL-адресам.
- Значения сеанса не истекают через определенное время.
Чтобы предотвратить подобные атаки, разработчик должен соблюдать осторожность при поддержании надлежащих стандартов, таких как защита паролей и правильное хеширование их во время передачи, не раскрывая идентификаторы сеанса, тайм-аут сеанса через определенное время, воссоздавая идентификаторы сеанса после успешного входа в систему попытка.
Исправить сломанную аутентификацию
- Длина пароля должна быть не менее 8 символов.
- Пароль должен быть сложным, чтобы пользователь не мог его предсказать. При этом следует использовать правильные правила набора паролей, такие как буквенно-цифровые, специальные символы и комбинации прописных и строчных букв.
- Ошибки аутентификации никогда не должны указывать, какая часть данных аутентификации неверна. Ответы об ошибках должны быть в некоторой степени общими. Например: неверные учетные данные вместо того, чтобы показывать имя пользователя или пароль, что в точности неверно.
Ошибки в настройках безопасности:
Это одна из плохих практик, которая делает сайты уязвимыми для атак. Например, Конфигурации сервера приложений возвращают полную трассировку стека пользователям, информируя злоумышленников о недостатках и, соответственно, атакуя сайты. Чтобы предотвратить такие случаи, важно, чтобы была реализована мощная архитектура приложения и периодически проводилось сканирование безопасности.
Вывод
Очень важно, чтобы каждый веб-сайт следовал надлежащим стандартам, поддерживал надлежащие методы кодирования, имел надежную архитектуру приложения, периодически запускал сканирование и старался в большей степени избегать атак веб-безопасности.
Рекомендуемые статьи
Это было руководство по безопасности веб-приложений. Здесь мы обсудили введение, стандартизацию, основные риски веб-безопасности. Вы также можете посмотреть следующие статьи, чтобы узнать больше -
- Интервью по кибербезопасности
- Интервью по веб-разработке
- Карьера в веб-разработке
- Что такое Elasticsearch?
- Что такое межсайтовый скриптинг?