Как именно вы настраиваете файлы cookie httpOnly в ASP Classic?
-
09-06-2019 - |
Вопрос
Я хочу реализовать httpOnly на своих устаревших классических сайтах ASP.Кто-нибудь знает, как это сделать?
Решение
Response.AddHeader "Set-Cookie", "mycookie=yo; HttpOnly"
Другие варианты, такие как expires
, path
и secure
также можно добавить таким образом.Я не знаю никакого волшебного способа изменить всю вашу коллекцию файлов cookie, но могу ошибаться.
Другие советы
Если вы запускаете веб-страницы Classic ASP в IIS 7/7.5, вы можете использовать модуль перезаписи URL-адресов IIS, чтобы написать правило, которое сделает ваши файлы cookie только HTTPOnly.
Вставьте следующее в раздел вашего web.config:
<rewrite>
<outboundRules>
<rule name="Add HttpOnly" preCondition="No HttpOnly">
<match serverVariable="RESPONSE_Set_Cookie" pattern=".*" negate="false" />
<action type="Rewrite" value="{R:0}; HttpOnly" />
<conditions>
</conditions>
</rule>
<preConditions>
<preCondition name="No HttpOnly">
<add input="{RESPONSE_Set_Cookie}" pattern="." />
<add input="{RESPONSE_Set_Cookie}" pattern="; HttpOnly" negate="true" />
</preCondition>
</preConditions>
</outboundRules>
</rewrite>
Подробности смотрите здесь: http://forums.iis.net/t/1168473.aspx/1/10
Для справки, файлы cookie HTTPOnly необходимы по соображениям соответствия PCI.Ребята из стандартов PCI (для безопасности кредитных карт) требуют, чтобы в файлах cookie с идентификатором сеанса был только HTTPOnly, чтобы предотвратить XSS-атаки.
Кроме того, в настоящее время (11 февраля 2013 г.) все основные браузеры поддерживают ограничение HTTPOnly для файлов cookie.Сюда входят текущие версии IE, Firefox, Chrome и Safari.
Дополнительную информацию о том, как это работает и поддерживается различными версиями браузера, можно найти здесь:https://www.owasp.org/index.php/HTTPOnly
Вам необходимо добавить «;HttpOnly» в коллекцию файлов cookie Response.
Response.AddHeader "Set-Cookie", ""&CStr(Request.ServerVariables("HTTP_COOKIE"))&";path=/;HttpOnly"&""
HttpOnly мало что делает для повышения безопасности веб-приложений.Во-первых, он работает только в IE (Firefox «поддерживает» его, но в некоторых ситуациях все же раскрывает файлы cookie для Javascript).Во-вторых, он только предотвращает атаку «проездом» на ваше приложение;он не мешает атаке с использованием межсайтовых сценариев сбросить пароли, изменить адреса электронной почты или разместить заказы.
Стоит ли вам его использовать?Конечно.Это не причинит тебе вреда.Но есть 10 вещей, которые вы должны обязательно сделать, прежде чем начнете возиться с HttpOnly.