Эта статья является кратким изложением статьи «Белая шляпа, говорящая о веб-безопасности» ---- Wu Hanqing Заинтересованные студенты могут прочитать ее.
1. Краткое описание
Интернет изначально был безопасным, а поскольку есть люди, изучающие безопасность, Интернет стал небезопасным.
1.1 Что такое безопасность?
Словарное определение означает отсутствие угрозы, опасности, вреда, потери.
1.2 При каких обстоятельствах могут возникнуть проблемы с безопасностью?
Подобно тому, что мы делаем в аэропортах и на вокзалах, прежде чем пассажиры начнут садиться в поезд, будет необходимая процедура: проверка безопасности. Без проверок безопасности у нас есть то, что мы называем проблемами безопасности. Во время проверки безопасности мы проверим, есть ли у пассажиров зажигалки, легковоспламеняющиеся жидкости и другие опасные предметы.
Из вышесказанного мы видим, почему у нас есть проверки безопасности? В конечном счете ещедоверятьпроблема. Проблемы с безопасностью возникают из-за нарушения наших доверительных отношений.
1.3 Как провести эффективную оценку безопасности?
Процесс оценки безопасности может быть просто разделен на 4 этапа: классификация активов, анализ угроз, анализ рисков и подтверждение решений.
Иерархия активов: проясните, к чему мы стремимся и что мы хотим защитить. Основной проблемой безопасности в Интернете на самом деле является безопасность данных. Пользовательские данные — это то, что нам нужно защищать.
Анализ угроз: найдите все возможные источники вреда, обычно используя мозговой штурм для перечисления всех ситуаций.
Анализ рисков: Оцените размер причиненных убытков.
Подтверждение решения по безопасности: результатом оценки безопасности является подтверждение решения по безопасности. Решение должно быть целевым, и эта релевантность определяется классификацией активов, анализом угроз, анализом рисков и подтверждением решений.
2. Безопасность браузера
В последние годы, с развитием Интернета, было обнаружено, что браузер является самым большим входом в Интернет, а инструментом для большинства пользователей, использующих Интернет, является браузер. Поэтому конкуренция на рынке браузеров становится все более жесткой. В условиях жесткой конкуренции все больше и больше людей серьезно относятся к безопасности браузера.
2.1 Гомологическая политика
Безопасность браузеров основана на том же происхождении, что является основной и основной функцией безопасности браузера. Если политика одного и того же происхождения отсутствует, это может повлиять на обычные функции браузера.
Политика браузера в отношении одного и того же источника запрещает «документам» или сценариям из разных источников читать или устанавливать определенные свойства для текущего «документа».
Эта стратегия очень важна.Представьте, что если нет стратегии того же происхождения, JS-скрипт a.com может по желанию изменять страницу b.com, когда скрипт не был загружен b.com. Чтобы не путать поведение страницы браузера, браузер предлагает концепцию «Происхождение», и объекты из разных источников не могут мешать друг другу.
Факторами, влияющими на «источник», являются: хост, имя поддомена, порт, протокол.
2.2 Блокировка вредоносных URL-адресов
Принцип работы вредоносного интерната веб-сайта прост. Как правило, браузер будет периодически получать черный список с сторон сервера. Если URL посетили, когда пользователь находится в Интернете, браузер появится на всю работу. Предупреждение.
3. Атаки с использованием межсайтовых сценариев
Межсайтовый скриптинг (XSS) — враг номер один в безопасности сценариев на стороне клиента.
XSS: Атака с использованием межсайтовых сценариев, английское название — Cross Site Script, первоначально сокращенное как CSS, чтобы отличаться от каскадных стилей CSS, поэтому в области безопасности он называется «XSS».
3.1 XSS-атака
Атака XSS обычно относится к атаке, при которой хакеры вмешиваются в веб-страницы с помощью «внедрения HTML» и вставляют вредоносные сценарии, тем самым контролируя браузеры пользователей, когда пользователи просматривают веб-страницы. Например: хакер публикует статью, содержащую вредоносный JS-код, и каждый, кто посещает статью, будет выполнять этот JS-код, тем самым завершая XSS-атаку.
3.2 Отраженный XSS
Отраженный XSS просто отражает данные, введенные пользователем в браузере. Другими словами, хакерам часто нужно заманить пользователей, чтобы они щелкнули существующее соединение, чтобы успешно атаковать.
3.3 Хранить XSS.
Тип хранилища будет «хранить» введенные пользователем данные на стороне сервера. Этот XSS обладает высокой стабильностью. Хакеры сохраняют вредоносные скрипты на сервер пользователя, поэтому такая атака является хранилищем, теоретически она существует уже давно.
3.4 Защита от XSS
Защита от XSS сложна.
3.4.1 HttpOnly
HttpOnly был впервые предложен Microsoft и реализован в IE6 и постепенно стал стандартом. Браузер предотвратит доступ JS страницы к файлам cookie с атрибутом HttpOnly.
На самом деле, строго говоря, HttpOnly не предназначен для борьбы с XSS — HttpOnly решает атаку перехвата файлов cookie после XSS. HttpOnly в настоящее время в основном поддерживает различные браузеры, но HttpOnly помогает только смягчить атаки XSS, но по-прежнему необходимы другие решения, которые могут устранить уязвимости XSS.
3.4.2 Проверка ввода
В защиту XSS проверка ввода обычно проверяет, содержат ли данные, введенные пользователем, некоторые специальные символы, такие как и так далее. Если эти символы найдены, они фильтруются или кодируются. Этот способ проверки ввода можно назвать «Фильтр XSS». В Интернете существует множество реализаций XSS-фильтра с открытым исходным кодом.
Фильтр XSS получает переменные, когда пользователь отправляет данные, и выполняет проверку XSS, но в это время пользовательские данные не объединяются с HTML-кодом отображаемой страницы, поэтому понимание контекста фильтром XSS является неполным. Возможно даже, что пользователь вводит 1
3.4.3 Проверка выхода
В целом, за исключением книг с форматированным текстом, когда переменные выводятся на HTML-страницы, перенос кода может использоваться для защиты от XSS-атак. Почти так же, как проверка ввода.
4.CSRF
4.1 Что такое CSRF
CSRF: подделка межсайтовых запросов, которая является распространенной веб-атакой.
Например: у нас есть система блогов.Когда пользователь входит в блог, ему нужно только запросить этот URL, а блог с номером «1» можно удалить.
Этот URL также имеет уязвимость CSRF.Во-первых, злоумышленник создает страницу в своем собственном домене:
Его содержание:
<img src="blog.com/manage/Давай…"/>
использовалтег с адресом, указывающим на ссылку для удаления сообщения в блоге.
Злоумышленник обманом заставляет целевого пользователя, блогера, посетить эту страницу:
Блог будет удален после посещения.
4.2 Защита от CSRF
CSRF-атаки в основном основаны на тайной отправке запросов за спиной пользователя без его ведома.
4.2.1 Код подтверждения
Капча считается наиболее лаконичной и эффективной защитой от CSRF-атак.
Потому что в процессе CSRF-атаки часто сетевые запросы строятся без ведома пользователя. Код проверки фактически заставляет пользователя взаимодействовать с нашим текущим приложением для выполнения запроса.
4.2.2referer Check
Определите, является ли это атакой CSRF, проверив исходный Referer текущего запроса. Определить текущую ре
4.2.3anti csrf token
Основная причина, по которой csrf может успешно атаковать, заключается в том, что злоумышленник может угадать параметры важных операций, и необходимо добавить новый токен параметра. Токен помещается в файл cookie клиентом, и каждый раз, когда страница того же источника отправляет запрос, токен, прочитанный в файле cookie, добавляется в заголовок или параметр запроса для завершения проверки. CSRF может передавать файлы cookie только через сам браузер и не может использовать файлы cookie для получения токена и добавления его в параметры http-запроса. Поскольку токен зашифрован и хранится в файле cookie, его может прочитать только страница того же происхождения, и токен используется в качестве важного параметра проверки.CSRF не может получить токен и поместить его в параметр, а также не может имитировать правильный токен, который предотвращается.
5. Наконец
Эта статья является кратким изложением статьи «Белая шляпа, говорящая о веб-безопасности» ---- Wu Hanqing Заинтересованные студенты могут прочитать ее.
Для получения дополнительной информации, пожалуйста, подпишитесь на мой официальный аккаунт
Наконец, эта статья была включена в JGrowing, всеобъемлющий и отличный маршрут изучения Java, совместно созданный сообществом.Если вы хотите участвовать в обслуживании проектов с открытым исходным кодом, вы можете создать его вместе.Адрес github:GitHub.com/Java растет…Пожалуйста, дайте мне маленькую звезду.
Если вы считаете, что эта статья полезна для вас, или вы хотите получить статьи в последующих главах заранее, или если у вас есть какие-либо вопросы и вы хотите предоставить бесплатный VIP-сервис 1 на 1, вы можете подписаться на мой официальный аккаунт.Ваше внимание и пересылка самая большая поддержка для меня. , O(∩_∩)O: