Program Tip

PHP의 "easter egg"URL을 비활성화하려면 어떻게해야합니까?

programtip 2020. 11. 21. 09:23
반응형

PHP의 "easter egg"URL을 비활성화하려면 어떻게해야합니까?


최근 에 PHP에서 소위 "이스터 에그 URL"발견했습니다 .

다음은 (다소) 숨겨진 이미지 또는 웹 페이지를보기 위해 PHP 웹 페이지 끝에 추가 할 수있는 네 가지 QUERY 문자열입니다.

  1. ?=PHPE9568F36-D428-11d2-A769-00AA001ACF42

이것은 가장 흥미롭고, 집에있는 토끼 (Carmella라는 이름의 Sterling Hughes의 토끼), 풀밭에있는 갈색 개, 검은 스코틀랜드 테리어 개, 엉성한 아이 손의 "부활절 달걀"이미지를 표시합니다. 그린, 크레용 색깔의 PHP 로고, 빵집 (연필이나 감자 튀김처럼 생겼음)이 입에서 해마처럼 튀어 나와있는 남자, 또는 PHP 코끼리 로고.

여기에 이미지 설명 입력

기타 :

  • ?=PHPE9568F34-D428-11d2-A769-00AA001ACF42 (PHP 로고)
  • ?=PHPE9568F35-D428-11d2-A769-00AA001ACF42 (Zend 로고)
  • ?=PHPB8B5F2A0-3C92-11d3-A3A9-4C7B08C10000 (PHP 크레딧)

내 웹 사이트를 포함하여 많은 웹 사이트에서 이것이 작동한다는 사실에 충격을 받았습니다. 나는 이것이 멍청하다고 생각하고 비활성화하고 싶지만 내가 듣는 유일한 방법은 php.ini with expose_php = Off이며 런타임ini_set().

라이브 서버에서 php.ini에 직접 액세스 할 수 없습니다. 그러나 in 또는 PHP 코드 X-Powered-By를 사용하여 헤더 를 설정 해제하는 방법을 알아 냈습니다 .Header unset X-Powered-By.htaccessheader('X-Powered-By: ')

이 "이스터 에그"를 비활성화 할 수있는 다른 방법이 있습니까? 아니면 메인에서이 설정을 변경해야합니까 php.ini(실제로 이러한 URL을 비활성화하는 올바른 / 유일한 방법입니까)?


빠른 HTACCESS 전역 재 작성은 모든 URL에서 바로 정확한 문자열을 정규식으로 만들 수 있으므로 ini 파일을 건드 리거나 모든 파일의 시작 부분에 함수가 필요하지 않고 PHP의 유일한 재미있는 부분을 제거 할 수 있습니다.

아직 테스트하지 않았지만 작동합니다.

RewriteEngine On
RewriteCond %{QUERY_STRING} \PHPE9568F36-D428-11d2-A769-00AA001ACF42\ [NC]
RewriteRule .* - [F]

물론 다른 가능한 쿼리 각각에 대해 마지막 두 줄을 복사하거나 더 일반적인 정규식을 작성하십시오. 나는 정규식이 좋지 않습니다. :)

이 버전은 모든 이스터 에그 재미를 다루며 여기 에서 찾을 수 있습니다.

RewriteEngine On
RewriteCond %{QUERY_STRING} \=PHP[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12} [NC]
RewriteRule .* - [F]

php.ini에서

; Decides whether PHP may expose the fact that it is installed on the server
; (e.g. by adding its signature to the Web server header).  It is no security
; threat in any way, but it makes it possible to determine whether you use PHP
; on your server or not.
; http://php.net/expose-php
 expose_php = Off

이것은 부활절 달걀을 효과적으로 제거합니다


업데이트 : 이것은 PHP 5.5에서 제거되었습니다. 이러한 링크가 php.net에서 더 이상 작동하지 않는지 확인하십시오.

http://phpsadness.com/sad/11


귀하의 사례에 대해서는 확실하지 않지만 내 사이트에서 작동합니다. 희망, 귀하의 사이트에서도 작동합니다.

RewriteEngine On
RewriteCond %{QUERY_STRING} \PHPE9568F36-D428-11d2-A769-00AA001ACF42\ [NC]
RewriteRule .* - [F]

물론 다른 가능한 쿼리 각각에 대해 마지막 두 줄을 복사하거나 더 일반적인 정규식을 작성하십시오. 나는 정규식이 좋지 않습니다. :)

참고 URL : https://stackoverflow.com/questions/10458610/how-can-i-disable-phps-easter-egg-urls

반응형