XSS 주입을 방어하는 PHP의 궁극적인 솔루션 [정보 보안] [해킹]
1: PHP는 html을 직접 출력하며 다음 방법을 사용하여 필터링할 수 있습니다.
1.htmlspecialchars 함수
2.htmlentities 함수
3.HTMLPurifier.auto.php 플러그인
4.RemoveXss 기능(Baidu에서 찾을 수 있음)
2: PHP가 JS 코드로 출력하거나 Json API를 개발하는 경우 프런트엔드를 필터링해야 함 JS:
1. innerText(IE)와 textContent(Firefox), 즉 jQuery의 text()를 사용하여 텍스트 콘텐츠를 출력해 보세요.
2 innerHTML 및 기타 기능을 사용해야 하는 경우 유사한 필터링을 수행해야 합니다. php의 htmlspecialchars에 (@eechen의 답변 참조)
Three: 기타 일반적인 보완 방어 방법
1 HTML 출력 시 콘텐츠 보안 정책의 Http Header
를 추가합니다. (기능: XSS의 공격을 방지할 수 있습니다. . 타사 스크립트 파일 등 삽입)
(결함: IE 이하 버전의 브라우저에서는 지원하지 않을 수 있음)
2. 쿠키 설정 시 HttpOnly 매개변수를 추가하세요.
(기능: 페이지가 표시되지 않도록 방지할 수 있음) XSS 공격을 받음. 쿠키 정보 도난, IE6 호환)
(결함: 웹사이트 자체의 JS 코드는 쿠키를 작동할 수 없으며 기능이 제한되어 쿠키의 보안만 보장할 수 있음)
3. API에서 요청한 Referer 매개변수를 확인하세요
(기능: CSRF 공격을 어느 정도 방지할 수 있음)
(결함: IE 이하 버전의 브라우저에서는 Referer 매개변수가 위조될 수 있음)
PHP 관련 더 많은 지식을 원하시면, PHP 튜토리얼을 방문하세요!
위 내용은 PHP에서 XSS 주입을 방어하는 궁극적인 솔루션의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!