> 백엔드 개발 > PHP 튜토리얼 > 앱에 h5 페이지를 삽입할 때 보안을 강화하는 방법

앱에 h5 페이지를 삽입할 때 보안을 강화하는 방법

WBOY
풀어 주다: 2016-08-04 09:21:28
원래의
3303명이 탐색했습니다.

패킷이 캡처되거나 앱에서 전송되는 데이터가 변경되는 경우 보안을 강화하고 XSS 공격 및 SQL 주입을 방지하는 방법.

답글 내용:

패킷이 캡처되거나 앱에서 전송되는 데이터가 변경되는 경우 보안을 강화하고 XSS 공격 및 SQL 주입을 방지하는 방법.

앱이 HTML5에 내장되어 있는지 여부와는 아무런 관련이 없습니다.
API 인터페이스를 사용하여 xss 및 sql을 삽입할 수도 있습니다
(1) 서버가 수동으로 공격받는 경우 분석 방법 그것과 해결책은 무엇입니까?
1 먼저 Windows/Linux 시스템 로그를 확인하여 해커가 공격을 통해 서버 권한을 얻었는지 확인합니다. 서버에 gotshell이 ​​있는 경우 현재로서는 취약점을 수정해도 여전히 쓸모가 없기 때문입니다.

Mysql 인젝션 분석 솔루션
1 취약점 방법 분석 및 찾아내기
(프로그램 진입 시 로그 파일 작성) apache/nginx/iis 로그 파일, 즉 모든 POST 및 GET 요청과 매개변수를 분석하여 제출된 매개변수가 mysql 키워드
에 존재합니다(전체 파일에서 mysql 키워드 Union/select/and/from/sleep 검색). 존재하는 경우 요청 주소에 해당하는 PHP 파일과 해당 PHP 코드 및 mysql을 검색합니다. 실행문. 그런 다음 전체 웹 디렉토리 폴더와 텍스트의 생성 및 수정 시간을 찾아 백도어가 있는지 확인하십시오.

2 예방
1 프로그램에 전역 SQL 키워드 필터링을 추가합니다.
2 PHP 작은따옴표 이스케이프를 활성화합니다(php.ini Magic_quotes_gpc 수정).
3 Apache/nginx/iis는 서비스 로그, mysql 느린 쿼리 로그 및 프로그램 항목 기록 요청 로그를 활성화합니다.
4 서버는 SafeDog와 같은 웹 애플리케이션 보안 소프트웨어를 설치합니다.
5 데이터베이스 링크에 UTF-8을 사용합니다. gbk 더블 바이트 주입 방지
6 mysql 비밀번호 복잡도 강화, mysql 외부 링크 금지, 기본 포트 번호 변경
7 프로그램 mysql 계정 권한을 줄이고, 일반적인 추가, 삭제, 확인, 수정만 허용 권한. 파일작업 권한 부여를 금지합니다

XSS 크로스 사이트 공격 솔루션
1 htmlspecialchars를 사용하여 텍스트가 작성된 위치를 탈출합니다
2 SSL을 사용하여 외부 js 로드 및 참조를 금지합니다
3 쿠키 획득을 금지하도록 httponly 설정
4 이미 게시됨 인젝션이 없는지 확인하세요. (인젝션이 있는 경우 16진수를 사용하여 htmlspecialchars를 우회하여 xss 공격 효과를 얻을 수 있습니다.)
5 백엔드와 프론트엔드에 대해 라우팅 규칙이 다른 2세트의 프로그램을 사용하는 것이 가장 좋습니다. . 백엔드(백업 데이터베이스)의 주요 작업은 CSRF를 방지하기 위해 보조 비밀번호를 설정하고 요청 매개변수의 복잡성을 높여야 합니다

PHP 보안
1 파일이 업로드되는 곳에 접미사 필터링을 추가하고 필터링 시 '논리적 부정' 판단을 하지 않는다.
2 접미사 php 및 htaccess가 포함된 파일을 업로드하는 것은 금지되어 있습니다. 파일 이름 접미사를 얻기 위해 클라이언트가 제출한 데이터를 사용하지 마십시오. 접미사 및 임의의 파일 이름을 추가하려면 프로그램을 사용해야 합니다.
3 무단 액세스를 제한하는 통합 라우팅
4 PHP 다운그레이드 처리, 웹 디렉토리는 폴더 및 텍스트 생성을 제한합니다(프로그램에 필요한 폴더를 제외하고 일반적으로 쓰기 권한이 필요한 캐시 디렉토리가 있습니다)
5 필터 IIS /nginx 파일 파싱 취약점 악용
6 비밀번호를 찾으려면 휴대폰 인증번호를 사용하여 이메일로 비밀번호를 찾으려면 추가 서버를 이용하세요. (비밀번호 검색 기능을 통해 실제 IP를 알아내는 것을 방지합니다.) 사용자의 메일함으로 전송된 비밀번호를 재설정하기 위한 마지막 링크에는 복잡한 암호화 매개변수가 있어야 합니다
7 사용자 로그인 시스템은 사용자가 로그인한 경우 다른 사람에게도 로그인하라는 메시지를 표시해야 합니다. 다시.
8 webroot 디렉토리는 외부 방어를 위해 하나의 index.php(항목 파일)만 가질 수 있습니다. 다른 모든 디렉토리는 외부 방어가 금지됩니다. 모든 리소스(업로드된) 파일에는 nginx에 안티 핫링크 기능이 있습니다.

1 보안 지식
1 웹 애플리케이션은 사이트 라이브러리 분리를 사용하고, 환경 웹 디렉터리의 기본 경로를 변경
2 통합 환경을 사용하는 경우에는 php 프로브, phpmyadmin, phpinfo(프로브)를 삭제해야 합니다. 설치가 완료되면 바늘로 웹 경로를 확인할 수 있고, phpmyadmin은 무차별 대입 크랙을 할 수 있습니다)
2 사용자 비밀번호는 비밀번호 솔팅 후 md5 값을 사용하는 것이 가장 좋습니다
3 해당 위치에 인증 코드를 추가합니다. 사용자 로그인, 무차별 대입 크래킹을 방지하기 위해 오류 수에 제한을 추가하는 방법
4 cdn 가속을 사용하여 실제 IP 숨기기
5 사용자가 로그인할 때 C를 방지하기 위해 일반 텍스트 계정 비밀번호를 전달하지 마십시오. -사이드 스니핑 및 ARP 스푸핑을 통해 사용자 및 관리자 일반 텍스트 계정 비밀번호 획득
6 PHP 시스템 명령 비활성화 행 수 exec, 시스템 등
7 서버에 SafeDog와 같은 보안 소프트웨어 설치
8 웹 디렉토리는 .rar, zip 파일 저장이 금지되어 있습니다

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿