XMLRPC là gì? Cách hoạt động và vai trò trong WordPress

XMLRPC từng là một trong những giao thức phổ biến trong việc chỉnh sửa nội dung website từ xa. Giao thức này từng được sử dụng nhiều trong những giai đoạn đầu của quản trị web. Tuy nhiên, trong thời đại hiện nay với sự phát triển nhanh chóng của hạ tầng internet và công nghệ web, XML-RPC dần bị thay thế bởi các phương thức hiện đại hơn. Trong bài viết dưới đây, HTH DIGI sẽ cùng bạn tìm hiểu rõ hơn về XMLRPC là gì, chức năng, ứng dụng và lý do vì sao nhiều quản trị viên WordPress hiện nay đã không còn sử dụng nó.

XMLRPC là gì?

XMLRPC là một giao thức sử dụng ngôn ngữ XML để chuẩn hóa dữ liệu và truyền thông qua giao thức HTTP. Đây là một dạng giao tiếp giúp các hệ thống khác nhau, bao gồm cả WordPress, có thể trao đổi thông tin với nhau một cách đồng bộ. Cụ thể hơn, RPC trong XMLRPC là viết tắt của “Remote Procedure Call”, tức gọi hàm từ xa thông qua các gói dữ liệu được mã hóa bằng XML.

Tập tin xmlrpc.php trên WordPress cho phép bạn kết nối, chỉnh sửa và đăng nội dung từ các thiết bị hoặc ứng dụng không trực tiếp truy cập vào giao diện quản trị. Trước đây, các quản trị viên thường sử dụng tính năng này để làm việc offline, sau đó kích hoạt kết nối để đồng bộ nội dung lên website chính.

Ứng dụng thực tế của XMLRPC

Giao thức XMLRPC bao gồm hai thành phần chính:

  • XMLRPC server: Máy chủ web chịu trách nhiệm nhận dữ liệu XML đã được mã hóa từ phía client.

  • XMLRPC client: Thiết bị hoặc hệ thống bên ngoài dùng XML để gửi các lệnh và dữ liệu tới server.

Việc sử dụng hay vô hiệu hóa XMLRPC phụ thuộc vào mục đích cụ thể của người dùng. Với một số nhu cầu nhất định, XMLRPC vẫn hữu ích. Tuy nhiên, hiện nay đã có các lựa chọn bảo mật và hiệu quả hơn.

Cách kích hoạt XMLRPC trong WordPress

Nếu bạn cần bật lại XMLRPC cho một mục đích nhất định, bạn có thể thực hiện các bước sau:

  1. Truy cập vào phần quản lý plugin và tìm kiếm “Control XML RPC publishing”.

  2. Cài đặt plugin này và vào Settings > Write.

  3. Tại mục Remote publishing with XMLRPC, chọn Enabled.

  4. Nhấn Save changes để hoàn tất.

Sau khi kích hoạt, bạn đã có thể xử lý các yêu cầu từ cả phía XMLRPC Server và Client theo nhu cầu sử dụng.

Tại sao XMLRPC không còn được ưa chuộng?

Mặc dù trước đây XMLRPC rất tiện lợi, nhưng trong thời đại hiện tại, giao thức này không còn được khuyến nghị do nhiều lý do bảo mật nghiêm trọng, cụ thể:

1. Tấn công thông qua Pingback

XMLRPC hỗ trợ các tính năng như pingback và trackback, cho phép hiển thị các liên kết từ các trang web khác trong phần bình luận. Tuy nhiên, tin tặc có thể lợi dụng điều này để gửi hàng loạt yêu cầu pingback đến một trang khác nhằm thực hiện các cuộc tấn công DDoS.

2. Tấn công Brute Force

Mỗi lần XMLRPC gửi yêu cầu, nó truyền username và password để xác thực. Tin tặc có thể khai thác điểm này bằng cách thực hiện hàng loạt thử nghiệm tên người dùng và mật khẩu cho đến khi tìm được thông tin đăng nhập hợp lệ. Nếu thành công, chúng có thể truy cập hệ thống, thay đổi dữ liệu hoặc phá hoại website.

Chính vì các rủi ro này, nhiều quản trị viên WordPress đã lựa chọn chuyển sang sử dụng WordPress REST API – một phương pháp an toàn hơn, bảo mật hơn và được hỗ trợ chính thức từ WordPress core.

Hướng dẫn vô hiệu hóa XMLRPC trong WordPress

Do những rủi ro bảo mật trên, việc vô hiệu hóa XMLRPC là cần thiết nếu bạn không sử dụng tính năng này. Dưới đây là hai cách phổ biến:

Cách 1: Dùng plugin để tắt XMLRPC

  • Truy cập Add New Plugin trong dashboard WordPress.

  • Tìm và cài plugin Disable XML-RPC – plugin này sẽ tự động vô hiệu hóa XMLRPC hoàn toàn.

  • Nếu bạn chỉ muốn chặn một phần (ví dụ vẫn cần Jetpack hoạt động), có thể dùng Stop XML-RPC Attack để giữ lại một số tính năng cần thiết.

Cách 2: Vô hiệu hóa XMLRPC thủ công bằng .htaccess

Nếu bạn không muốn dùng plugin, có thể chỉnh sửa file .htaccess với đoạn mã sau:

# Block WordPress xmlrpc.php requests
<Files xmlrpc.php>
order deny,allow
deny from all
allow from 123.123.123.123
</Files>

Trong đó 123.123.123.123 là IP bạn muốn cho phép truy cập XMLRPC nếu cần. Tất cả truy cập khác sẽ bị chặn.

Kết luận

Trong bối cảnh công nghệ web hiện đại, XMLRPC đã trở thành một giao thức lỗi thời với nhiều điểm yếu bảo mật. Với sự xuất hiện của API REST, các nhà phát triển và quản trị viên đã có công cụ thay thế phù hợp hơn cho việc tương tác với WordPress từ xa. Nếu bạn vẫn còn sử dụng XMLRPC, hãy cân nhắc việc tắt nó để bảo vệ hệ thống.

Nếu bạn đang tìm kiếm giải pháp quản trị website, thiết kế web chuyên nghiệpan toàn bảo mật cao, hãy liên hệ với HTH DIGI để được tư vấn và hỗ trợ tốt nhất.

.
.
.
.