readme.html, license.txt, wp-config-sample.php 액세스 또는 자동 삭제 방지


13

보안에 약간의 도움이 될 수있는 간단한 질문입니다. readme.html 파일에 버전 번호가 나열되어 있습니다. 각 업그레이드 후에 다시 나타나며 licence.txt 및 wp-config-sample.php도 나타납니다.

업그레이드 후 WordPress에서 이러한 파일을 자동으로 제거하는 쉬운 방법이 있습니까?

메타 태그, RSS 피드, 원자 등에서 버전 번호가 표시되지 않도록 차단했습니다.

나는이 보안 유형이 정확히 아니라는 것을 알고 그 많은 도움이 있지만, 그냥 작은 시작이 될 줄 알았는데. 사람들이 WP-include에 포함 된 jQuery 버전을 확인하고 어떤 버전의 WP가 제공했는지 상호 참조 할 수 있다고 들었습니다.

답변:


19

실제로 이러한 파일을 제거 할 필요는 없습니다. 액세스를 차단하는 것이 훨씬 쉽습니다. pretty URL을 사용하는 경우 이미 .htaccess 파일이 있습니다. .htaccess를 사용하여 파일을 차단하는 것은 안전하며 지시문을 한 번만 추가하면됩니다.

파일 차단은 다음과 같이 .htaccess에 지시문을 추가하여 수행됩니다.

    <files filename.file-extension>
         order allow,deny
         deny from all
    </files>

따라서 readme.html을 차단하려면 다음을 수행하십시오.

    <files readme.html>
         order allow,deny
         deny from all
    </files>

라이센스 파일 또는 다른 사람이 액세스하지 못하게하려는 다른 파일과 동일하게 수행하십시오. 메모장이나 다른 기본 텍스트 편집기에서 .htaccess를 열고 지시문을 추가하고 저장하여 텍스트 편집기가 파일 이름을 정확하게 유지하는지 확인하십시오.


1
이것은 실제로 내가 끝내는 옵션입니다. 완벽하게 작동합니다.
— Sahas Katta

1
주의 구문 위의 아파치 2.2에만 유효 최대입니다! 그런 다음 Require all deniedApache 2.4 이상에 (내부 2 줄 바꾸기) 사용하십시오 . 자세한 내용은 여기
— Frank Nocke

5

여기 내 테이크가 있습니다 :

RewriteRule (?:readme|license|changelog|-config|-sample)\.(?:php|md|txt|html?) - [R=404,NC,L]
  • 존재에 대한 단서를 피하기 위해 403 (금지) 대신 404 (존재하지 않음).
  • 하위 폴더에도 (예 : 공격 기회를 제공 할 수있는 테마 및 플러그인)
  • 대소 문자를 구분하지 않고 확장 가능하며 README.html 또는 license.html을 포착합니다 (changelogs | faq | 기여와 같은 일반적인 용의자를 자유롭게 추가하십시오)

개인적으로 나는 또한 차단할 것이다 :

RewriteRule \.(?:psd|log|cmd|exe|bat|c?sh)$ - [NC,F]

nb :

  • '? :'는 대괄호가 일치하지 않는 것으로 선언합니다 (중요하지 않음).
  • RewriteEngine이 필요합니다 on .
  • .htaccess 의 섹션 앞에 삽입 # BEGIN WordPress하십시오.

3
add_action('core_upgrade_preamble','my_function_to_delete_files');

편집 : 당신은 또한 이것을 시도 할 수 있습니다

add_action('upgrader_pre_install','my_function_to_delete_files');
add_action('upgrader_post_install','my_function_to_delete_files');

고마워, 나는 PHP 링크 해제 기능을 알아 냈지만 작동하지만 한 가지 문제가 있습니다. 제공 한 후크는 대시 보드 아래의 업데이트 섹션을 방문하면 실행되는 것처럼 보입니다. 업그레이드가 발생한 후 또 다른 후크가 있습니까?
— Sahas Katta

1
보고, 알려주세요
— Atif Mohammed Ameenuddin

@Sahas @ atif089이 작업을 제대로 수행하셨습니까?
— INT

삭제 대신 (실제로 읽어보기를 원한다면!) 이것을 함수에서 사용할 수 있습니다chmod("/path/to/readme.txt", 0640);
— Bysander
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.