[HttpPost]
속성은 HTTP 요청 유형을 제한하여 어느 정도 보호를 제공하지만 JSON 응답을 완전히 보호하기에는 충분하지 않습니다. JsonRequestBehavior
클래스는 HTTP GET 요청을 통해 노출된 JSON 데이터를 악용하는 보안 취약점인 JSON 하이재킹의 위험을 완화하는 데 중요합니다.
JSON 응답에 대한 ASP.NET MVC의 기본 설정인 DenyGet
은 이 공격에 대한 중요한 보호 기능을 제공합니다. 작업 메서드가 민감한 정보를 처리하는 경우 JSON 하이재킹은 심각한 보안 위험을 초래합니다. 기본 DenyGet
동작
너머 [HttpPost]
:
[HttpPost]
속성은 HTTP GET 요청을 차단하는 것을 목표로 하지만 제한 사항으로 인해 JSON 하이재킹에 취약합니다. 최신 브라우저(Firefox 21, Chrome 27, IE 10 포함)는 본질적으로 JSON 응답을 민감하게 처리하지 않으므로 악의적인 행위자가 [HttpPost]
를 우회하고 GET 요청
안전하게 GET 요청 활성화:
작업 방법이 민감한 데이터를 처리하지 않는 경우 GET 요청을 허용하는 것이 허용될 수 있습니다. 그러나 명시적인 JsonRequestBehavior.AllowGet
매개변수를 사용하는 것은 두 가지 중요한 이유 때문에 여전히 모범 사례로 남아 있습니다.
DenyGet
을 선택적으로 비활성화할 수 있습니다.주요 내용:
JsonRequestBehavior
은 JSON 하이재킹에 대한 필수 보안 조치입니다. 기본 DenyGet
설정은 본질적인 보호를 제공하지만, 강력한 애플리케이션 보안을 위해서는 관련 위험에 대한 철저한 이해와 명시적인 JsonRequestBehavior
설정의 전략적 사용이 필수적입니다.
위 내용은 JSON 납치 : JSONREQUESTBEHAVIOR가 안전한 JSON 응답에 중요한 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!