● XSS(교차 사이트 스크립팅 공격)에는 두 가지 형태가 있습니다. JS 코드 또는 HTML 코드를 입력하면 페이지가 엉망이 됩니다.
● XSS(교차 사이트 스크립팅 공격)를 사용하여 다른 사용자의 쿠키 정보를 훔칠 수 있습니다. 이러한 문제를 방지하려면 다음 솔루션을 사용할 수 있습니다.
모든 JavaScript 스크립트를 직접 필터링합니다.
Html 메타 문자를 탈출하고 htmlentities를 사용합니다. , htmlspecialchars 및 기타 기능
시스템의 확장 기능 라이브러리는 XSS 보안 필터링을 위한 Remove_xss 메소드를 제공합니다.
새 버전은 이미 URL을 통해 액세스되는 일부 시스템 변수에 대해 XSS 처리를 수행했습니다.
사용자가 양식 정보를 제출할 때 양식에 관련 "코드"(html/css/js 및 기타 코드)가 있을 수 있으며, 이는 정보가 표시될 때 페이지 효과를 방해할 수 있습니다.
1. htmlpurifier를 다운로드하고, 라이브러리 폴더를 압축 해제하여 ThinkPhp 플러그인 폴더에 넣고, 그룹화된 공통 폴더에 function.php를 생성합니다
2. function과 php
3에서 xss 공격을 방지하는 방법을 만듭니다. 먼저 hThinkphp 시스템과 함께 제공되는 I() 메서드를 통해 게시물에서 얻은 데이터를 필터링한 다음 fanXSS
함수를 호출하여 필터링할 수 있습니다. 다음 예를 살펴보세요.
thinphp에서 백그라운드 프로세스 개발 필요 편집기를 추가하려면 편집기가 정상적으로 표시되도록 하려면 I 함수를 필터링하지 않도록 설정해야 합니다.
이제 문제가 발생합니다. 필터링하지 않으면 XSS의 공격을 받게 됩니다. 온라인 편집기를 필터링하면 해결 방법이 작동하지 않습니다.
오픈 소스 필터링 패키지를 사용할 수 있습니다. : htmlpurifier Bag.
다운로드한 패키지를 디렉터리로 추출하고 이름을 HTMLpurifier로 바꿉니다
함수 만들기
그런 다음 I 함수가 이 함수를 사용하여 필터링할 수 있도록 구성 파일 config.php를 수정합니다.
이제 웹사이트에서 I 함수는 우리가 필터링할 때 작성한 함수를 사용합니다: 선택적 필터링은 위험한 코드만 필터링합니다.
웹사이트는 매우 안전합니다!
이 기사는 ThinkPHP 프레임워크 기술 기사 칼럼에서 발췌한 것입니다: http://www.php.cn/phpkj/thinkphp/
위 내용은 thinkphp에서 XSS 공격을 방지하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!