>백엔드 개발 >PHP 문제 >PHP 언어 웹사이트의 보안을 강화하는 방법

PHP 언어 웹사이트의 보안을 강화하는 방법

(*-*)浩
(*-*)浩원래의
2019-10-08 13:30:042508검색

Suhosin을 사용하여 PHP 스크립팅 언어 보안 강화

PHP는 매우 인기 있는 웹 사이트 스크립팅 언어이지만 본질적인 보안은 매우 취약합니다. PHP 강화 계획(Hardened-PHP 프로젝트)과 새로운 Suhosi 계획인 Suhosin은 강화된 PHP 보안 구성을 제공합니다.

PHP 언어 웹사이트의 보안을 강화하는 방법

PHP는 논란의 여지가 있지만 가장 인기 있는 웹사이트 스크립팅 언어입니다. 가격이 저렴하기 때문에 인기가 높습니다. 그러나 이러한 저렴한 가격으로 인해 PHP로 작성된 웹사이트 애플리케이션이 점점 더 많아지고 동시에 PHP 자체도 보안 취약점에 노출되는 경우가 늘어나고 있습니다. 기능은 PHP가 매우 신뢰할 수 없음을 보여줍니다. (추천 학습: PHP 비디오 튜토리얼)

그러나 동시에 이 스크립팅 언어 자체는 매우 유연하고 이를 사용하여 쉽게 코드를 구현할 수 있지만 이러한 코드는 비대하고 안전하지 않습니다. 그럼에도 불구하고 여전히 많은 문제가 있습니다. 사용자.

실제 상황을 토대로 여러 애플리케이션 소프트웨어에 이 취약점이 구현되어 있다고 가정할 수 있습니다. SQL 주입, 크로스 사이트 스크립팅, 임의 명령 실행 등에 취약합니다.

safe_mode 및 open_basedir과 같은 내장된 PHP 보안 조치가 무시되므로 PHP 강화 계획은 보다 안전한 PHP를 만들고 PHP에 대한 유효성 검사도 수행합니다.

처음에는 PHP 자체를 패치하고 다시 컴파일해야 하는 향상된 PHP 패치를 사용하여 이러한 작업을 수행했습니다. 최근 PHP Enhancement Project에서는 Suhosin이라는 새로운 프로젝트를 출시했습니다.

Suhosin은 PHP 프로그램 보호 시스템입니다. 이는 PHP 프로그램 및 PHP 코어의 알려지거나 알려지지 않은 결함으로부터 서버와 사용자를 보호하도록 설계되었습니다.

Sohosin은 두 부분으로 구성되어 있습니다. 첫 번째 부분은 PHP용 패치입니다. 이 패치는 Zend 엔진 자체를 강화하여 버퍼 오버플로를 방지하고 관련 약점을 방지합니다. 두 번째 부분은 PHP용 독립형 모듈인 Suhosin의 확장입니다. 두 부분이 함께 작동할 수도 있고 확장이 독립적으로 작동할 수도 있습니다.

개발자는 보안을 유지하기 위해 자신의 PHP 설치 설정을 유지할 필요가 없으며 공급업체가 제공하는 Linux 배포 시스템에서 직접 PHP를 사용하고 PHP 자체가 할 수 있는 것보다 더 많은 것을 제공하기 위해 확장 모듈을 사용하는 것을 선호합니다. 안전 기능을 수행하십시오.

확장 모듈은 설치가 쉽습니다. PECL을 통해 설치하거나 다운로드 후 컴파일하여 설치할 수도 있습니다.

    $ tar xvzf suhosin-0.9.17
  $ cd suhosin-0.9.17
  $ phpize
  $ ./configure
  $ make
  $ sudo make install

suhosin을 사용하려면 표시된 대로 /etc/php.ini도 추가해야 합니다. 아래:

extension=suhosin.so

For 대부분의 사람들에게는 기본 구성 옵션으로 충분합니다. 설정을 강화하려면 /etc/php.ini에 해당 값을 추가하면 됩니다. 다양한 구성 옵션이 웹사이트에 자세히 소개되어 있습니다. 이러한 지침은 초기 구성에 도움이 될 수 있습니다.

Suhosin을 사용하면 이러한 로그를 시스템 로그에 넣거나 동시에 다른 로그 파일에 쓸 수 있습니다. 또한 각 가상 호스트에 대해 블랙리스트와 화이트리스트를 생성할 수도 있습니다. POST 요청, 파일 업로드 및 쿠키. 암호화된 세션과 쿠키를 보내고, 보낼 수 없는 저장소를 설정하는 등의 작업도 할 수 있습니다.

원래 PHP 강화 패치와 달리 Suhosin은 Zend Optimizer와 같은 타사 확장 소프트웨어와 호환됩니다.

위 내용은 PHP 언어 웹사이트의 보안을 강화하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.