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

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

5 ответов


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

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


при запуске классических веб-страниц ASP в IIS 7/7.5, затем вы можете использовать модуль перезаписи URL IIS для написания правила, чтобы сделать ваши файлы cookie HTTPOnly.

вставьте следующее в раздел вашего веб-сайта.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 cookies необходимы по причинам соответствия PCI. Люди стандартов PCI (для безопасности кредитной карты) делают вас иметь HTTPOnly на ваших файлах cookie sessionID, по крайней мере, для предотвращения атак XSS.

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

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


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


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

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

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