2011-08-23 4 views
3

모든 QueryString 값을 URLEncoding 할 수있는 유효한 보안 이유가 있습니까? 아니면 단순히 버그 방지 방지입니까?IIS 7이 설치된 ASP.NET - 모든 QueryString 값의 URLEncoding에 대한 합법적 인 보안 이유가 있습니까?

나는 그것이 버그를 줄이는 방법을 알고 있지만 더 이상 보안 조치라면 궁금하다.

This article은 우려 사항이라고 제안하지만 확실하지 않습니다.

문제에 대한 도움을 주시면 감사하겠습니다.

답변

2

IMO, 쿼리 문자열 값의 URL 인코딩은 보안을 향상시키지 않습니다. 웹 응용 프로그램 보안에 대한 요점은 모든 입력 데이터 (또는 외부 데이터)가 신뢰할 수없는 것으로 간주된다는 것입니다 (HTTP 요청의 GET/POST 데이터이거나 일부 파일 또는 웹 서비스를 통해 수신 된 데이터 일 수 있음). 유효성을 검사해야합니다. 또한 데이터를 데이터 저장소 (예 : SQL 삽입)로 푸시하거나 html (XSS)로 삽입하여 인쇄하는 동안주의해야합니다. URL 인코딩은 클라이언트와 서버간에 올바른 데이터 전달을 보장합니다.

기사를 읽으면 동일하게 제안합니다 (끝에 조언 단락이 필요합니다) - URL 인코딩이 실제로 보안 메커니즘이 아니라 애플리케이션 보안을위한 다양한 다른 방법을 사용한다는 것은 필수적입니다. .

관련 문제