readme.html, license.txt, wp-config-sample.php 액세스 또는 자동 삭제 방지 원자 등에서 버전 번호가 표시되지 않도록 차단했습니다. 나는이

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

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

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

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



답변

실제로 이러한 파일을 제거 할 필요는 없습니다. 액세스를 차단하는 것이 훨씬 쉽습니다. 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를 열고 지시문을 추가하고 저장하여 텍스트 편집기가 파일 이름을 정확하게 유지하는지 확인하십시오.


답변

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

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하십시오.

답변

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');