자습서 비디오에서 악의적 인 주사를 예방하기 위해 Html.Encode를 사용해야합니다. 그러나 인코딩 할 텍스트에 '문자 (예 : Dog)가 포함되어 있으면 브라우저의 출력은 Dog # 39입니다. 잠재적으로 위험한 모든 문자가 브라우저가 올바르게 렌더링 할 수있는 안전한 코드로 다시 매핑 될 것이라고 생각했을 것입니다. 그렇지 않은가요? 브라우저에 표시되지만 HTML 형식으로 표시하려면 어떻게해야합니까?안전한 방법으로 작은 따옴표를 렌더링하는 방법
2
A
답변
5
ASP.NET MVC 2 면도기 (MVC 3)에서 @ % : %>는 이미 값을 인코딩하고 있으므로 사용자가 값을 인코딩하므로 출력을 Html로 래핑 할 필요가 없습니다.
는 당신이`Response` 개체에 직접 쓰지는 않지만,
6
면도기의 @
은 자동으로 인코딩하므로 이중 인코딩을했을 가능성이 큽니다. 예 : 마지막 하나는하지만 면도기에서 작동하는 경우
@Html.Encode("This is \"safe\"")
같은 더 많거나 적은 같은
@{Response.Write(Html.Encode(Html.Encode("This is \"safe\"")));}
몰라입니다.
관련 문제
- 1. 작은 방법으로 주 방법 대기 (
- 2. 안전한 방법으로 memcpy 바꾸기
- 3. 정규 표현식에서 작은 따옴표를 지정하는 방법
- 4. Oracle SQL에서 작은 따옴표를 처리하는 방법
- 5. SQL 'LIKE'명령에서 작은 따옴표를 이스케이프 처리하는 방법
- 6. 문자열에서 작은 따옴표와 큰 따옴표를 제거하는 방법
- 7. 안전한 방법으로 클라이언트에서 MySQL DB를 쿼리하는 방법
- 8. 안전한 방법으로 jsp에서 getParameter를 사용하는 방법
- 9. 레일 안전한 방법으로 아약스에 데이터를 제공하는 방법?
- 10. 문자열에서 작은 따옴표를 제거하는 NSString
- 11. 문자열의 작은 따옴표를 '\'로 바꾸십시오.
- 12. 스레드로부터 안전한 방법으로 포인터 반환
- 13. 안전한 방법으로 Sql 스크립트를 묶기
- 14. Flash에서 작은 따옴표를 이스케이프 처리하는 방법은 무엇입니까?
- 15. jqGrid를 사용하여 쿼리 문자열 주위에 작은 따옴표를 추가하는 방법
- 16. char *에서 std :: string을 안전한 방법으로 만듭니다.
- 17. php 메일 기능; 안전한 방법으로 사용합니까?
- 18. 이 작은 방법으로 어떤 테스트를해야합니까?
- 19. 문자열의 작은 따옴표를 검색하여 다른 문자로 묶습니다.
- 20. oracle sql의 열 값에서 작은 따옴표를 제거하십시오.
- 21. jQuery 또는 JavaScript에서 작은 따옴표를 이스케이프 처리합니다.
- 22. javascript REGEX 일치하는 작은 따옴표를 제거
- 23. 큰 따옴표와 작은 따옴표를 올바르게 사용하고 있습니까?
- 24. 내용에 공백이있는 경우 작은 따옴표 나 큰 따옴표를 추가하는 방법
- 25. $ .ajax POST (JQuery)에서 작은 따옴표를 처리하는 방법?
- 26. h : outputText에서 작은 따옴표와 큰 따옴표를 쓰는 방법
- 27. Oracle 10g - 작은 따옴표를 이스케이프 처리하는 가장 좋은 방법
- 28. SQL 쿼리에서 작은 따옴표를 큰 따옴표로 바꾸는 방법 - Oracle 10g?
- 29. 내 작은 따옴표를 자동으로 변환하지 않는 방법 '
- 30. SQL WHERE 절을 사용하여 작은 따옴표를 포함한 문자열을 검색하는 방법
이 마지막 하나는, 면도기에서 일 것이다 이중 인코딩하지 있는지 확인 인코딩. 그렇게하면 예기치 않은 위치에서 일이 렌더링 될 수 있습니다. – marcind
무엇? 코드가 순차적으로 실행되지 않습니까? – Alxandr
코드는 순차적으로 실행되지만 면도기 출력은 페이지가 실행 완료되면 응답 스트림으로 만 플러시되는 텍스트 버퍼에 기록됩니다. Response 스트림에 직접 작성하는 경우 플러시가 발생하기 전에 출력을 주입 할 수 있으므로 예기치 않은 순서가 발생할 수 있습니다. – marcind