워드프레스에서 xmlrpc.php를 통한 Brute Force 공격 차단하기 [XML-RPC 비활성화]

  • 네이버 블로그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 트위터 공유하기
  • 카카오스토리 공유하기
워드프레스 보안 - XML-RPC 비활성화

워드프레스에서 XML-RPC를 비활성화하여 보안을 강화할 수 있습니다. 이 글에서는 여러 가지 방법으로 XML-RPC 비활성화가 가능합니다.

워드프레스에서 XML-RPC 비활성화 방법

XML-RPC란 XML을 사용하여 호출과 HTTP를 전송 메커니즘으로 인코딩하는 원격 프로시저 호출(a remote procedure call which uses XML to encode its calls and HTTP as a transport mechanism)이라고 합니다. 무슨 말인지 어렵네요. 쉽게 말하자면 사용자가 Windows Live Writer와 같은 인기 웹블로그 클라이언트(weblog client)를 사용하여 워드프레스 블로그에 글을 게시하도록 허용하는 시스템이라고 합니다.

이 기능을 사용하지 않는다면 XML-RPC를 비활성화하는 것이 보안상 좋다고 합니다. XML-RPC를 통한 Brute Force 공격(DoS 공격)과 같은 해킹 공격이 자주 발생하는 것 같습니다.

.htaccess 파일에 코드 추가하기

XML-RPC를 비활성화하려면 다음 코드를 .htaccess 파일에 추가하도록 합니다.

# BEGIN protect xmlrpc.php
<files xmlrpc.php>
order allow,deny
deny from all
</files>
# END protect xmlrpc.php

특정 IP를 허용하려면 deny from all 아래에 다음 라인을 추가하도록 합니다.

allow from 123.123.123.123

다른 방법으로 다음 코드를 함수 파일에 추가해도 된다고 합니다. 차일드 테마를 만들어 작업해야 테마가 업데이트되는 경우에 추가한 코드가 초기화되지 않습니다.

add_filter('xmlrpc_enabled', '__return_false');

보안 플러그인에서 XML-RPC 비활성화 설정하기

iThemes Security 같은 일부 보안 플러그인에서 XML-RPC를 비활성화하는 옵션을 제공합니다. iThemes에서는 워드프레스 알림판 > Security > Settings > WordPress Tweaks로 이동하여 XML-RPC 옵션을 "Disable XML-PRC"로 설정하면 됩니다.

워드프레스 XML-RPC 비활성화하기

XML-RPC 비활성화 플러그인 사용

XML-RPC를 비활성화하기 위해 플러그인까지 사용하는 것은 별로 바람직하지 않지만, FTP에 접속할 수 없는 경우 워드프레스 알림판 > 플러그인 > 새로 추가로 이동하여 disable xml-rpc를 검색하여 Disable XML-RPC 플러그인을 설치하여 활성화할 수 있습니다.

워드프레스 XML-RPC 플러그인

이 플러그인은 10만 개 이상 사이트에 사용되고 있습니다. 이 플러그인이 제대로 작동하지 않으면 Manage XML-RPC 플러그인을 사용할 수 있습니다.

참고:



3 개 댓글