2008-09-10 5 views

답변

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

다른 옵션도이 방법으로 추가 할 수 있습니다. 나는 당신의 전체 쿠키 수집을 바꾸는 마법 같은 방법을 모르지만 나는 그것에 대해 잘못 될 수있다.

1

응답 쿠키 모음에 "; HttpOnly"를 추가해야합니다. expires, pathsecure 같은

+3

그것은 명확하지 않다, 코드의 비트가 –

-1

웹 응용 프로그램의 보안을 향상시키기 위해 HttpOnly은 거의 기능하지 않습니다. 한 가지만, IE에서만 작동합니다 (Firefox는 "지원"하지만 일부 상황에서는 여전히 Javascript에 쿠키를 공개합니다). 또 다른 한가지는 응용 프로그램에 대한 "드라이브 바이"공격 만 방지하는 것입니다. 암호 재설정, 전자 메일 주소 변경 또는 주문을 수행하는 것으로부터 크로스 사이트 스크립팅 공격을 유지할 수 없습니다.

사용 하시겠습니까? 확실한. 너를 다치게하지 않을거야. 하지만 HttpOnly로 시작하기 전에해야 할 일 10 가지가 있습니다.

+1

그래, 내가 아는 좋은 것입니다. 그러나 하나 이상의 보호 층을 추가하는 것은 결코 아프지 않습니다. –

+5

2012 년에 이것이 사실이라고 생각하지 않습니다. – Philluminati

14

IIS 7/7.5에서 Classic ASP 웹 페이지를 실행하는 경우 IIS URL 다시 쓰기 모듈을 사용하여 쿠키를 HTTP 전용으로 만들기위한 규칙을 작성할 수 있습니다.

은 당신의 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

, Http 만 쿠키가 PCI 컴플라이언스 이유로 필요합니다. PCI 표준 사용자 (신용 카드 보안 용)는 최소한 XSS 공격을 막기 위해 sessionID 쿠키에 HTTPOnly를 사용합니다.

또한 현재 (2-11-2013) 모든 주요 브라우저는 쿠키에 대한 HTTPOnly 제한을 지원합니다. 여기에는 IE, Firefox, Chrome 및 Safari의 최신 버전이 포함됩니다.

는 다양한 브라우저 버전에서 더이 어떻게 작동하는지에 대한 정보 및 지원 여기를 참조하십시오 : https://www.owasp.org/index.php/HTTPOnly

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