Как именно вы настраиваете cookie httpOnly в ASP Classic?

Я ищу для реализации httpOnly на моих старых сайтах ASP classic. Кто-нибудь знает, как это сделать?

Ответ 1

Response.AddHeader "Set-Cookie", "mycookie=yo; HttpOnly"

Другие опции, такие как expires, path и secure, также могут быть добавлены таким образом. Я не знаю какого-либо волшебного способа изменить всю вашу коллекцию файлов cookie, но я мог ошибаться.

Ответ 2

Если вы запустите свои классические веб-страницы 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

Для фона, HTTPOnly файлы cookie необходимы для соблюдения требований PCI. Люди стандартов PCI (для обеспечения безопасности кредитных карт) заставляют вас иметь HTTPOnly на ваши файлы cookie sessionID, по крайней мере, для предотвращения атак XSS.

Кроме того, в настоящее время (2-11-2013) все основные браузеры поддерживают ограничение HTTPOnly на файлы cookie. Сюда входят текущие версии IE, Firefox, Chrome и Safari.

См. здесь для получения дополнительной информации о том, как это работает и поддерживается различными версиями браузера: https://www.owasp.org/index.php/HTTPOnly

Ответ 3

Вам нужно добавить "; HttpOnly" в коллекцию файлов ответов Response.

Ответ 4

Response.AddHeader "Set-Cookie", ""&CStr(Request.ServerVariables("HTTP_COOKIE"))&";path=/;HttpOnly"&""

Ответ 5

HttpOnly делает очень мало для улучшения безопасности веб-приложений. Во-первых, он работает только в IE (Firefox "поддерживает" его, но в некоторых ситуациях раскрывает файлы cookie для Javascript). С другой стороны, он предотвращает атаку "приводов" на ваше приложение; он не делает ничего, чтобы межсайтовая сценария атаки от сброса паролей, изменения адресов электронной почты или размещения заказов.

Должны ли вы использовать его? Конечно. Это не повредит вам. Но есть 10 вещей, которые вы должны быть уверены, что делаете, прежде чем начинать возиться с HttpOnly.