Описание
CRLF, или Carriage Return Line Feed, относится к тому типу
уязвимостей, которые происходят, когда юзер вставляет CRLF
в приложение. Символы CRLF означают конец строки для
множества интернет-протоколов, включая HTML, и выглядят
как %0D%0A, что декодируется в \r\n. Они могут быть ис-
пользованы для обозначения переноса строк и в сочетании
с заголовками HTTP-запросов и ответов могут приводить к
различным уязвимостям, включая HTTP Request Smuggling и
HTTP Response Splitting.
Если говорить о HTTP Request Smuggling, это обычно про-
исходит когда HTTP-запрос проходит через сервер, который
обрабатывает его и передает другому серверу, как прокси или
файрволл. Этот тип уязвимости может привести к:
• Отравлению кэша, ситуации, в которой атакующий мо-
жет изменять записи в кэше и отдавать вредоносные
страницы (например, содержащие javascript) вместо кор-
ректных
• Обходу файрволла, ситуации, в которой запрос может
быть создан таким образом, чтобы обойти проверки без-
опасности, обычно, включает в себя CRLF и чрезмерно
большие тела запросов
• Кражу запроса, ситуации, в которой атакующий может
украсть HttpOnly cookies и информации о HTTP аутен-
тификации. Это похоже на XSS, но не требует взаимо-
действия между клиентом и хакером Хотя эти уязвимости существуют, их трудно обнаружить. Я
описываю их здесь, чтобы вы могли понять, насколько опас-
ной может быть Request Smuggling (кража запроса).
Зная о HTTP Response Splitting, хакеры могут устанавливать
произвольные заголовки ответа, контролировать тело ответа
или разделять ответ полностью, предоставляя два ответа вме-
сто одного, как показано в примере #2 - разделение ответа
на v.shopify.com (если вам нужно напоминание о заголовках
HTTP запросов и ответов, перелистните на главу “Фоновые
знания”).
#42523 в Разное
#1025 в Бизнес-литература
#5052 в Развитие личности
хакер, хакинг, основы этичного хаки...
16+
Отредактировано: 08.03.2019