
| Tên plugin | Cuộc hẹn dễ dàng |
|---|---|
| Loại lỗ hổng | Phơi bày dữ liệu nhạy cảm |
| Số CVE | CVE-2026-2262 |
| Tính cấp bách | Cao |
| Ngày xuất bản CVE | 2026-04-20 |
| URL nguồn | CVE-2026-2262 |
Rò rỉ dữ liệu nhạy cảm trong Cuộc hẹn dễ dàng (≤ 3.12.21): Những gì mỗi chủ sở hữu trang web phải làm ngay bây giờ
Tác giả: Nhóm bảo mật WP-Firewall
Ngày: 2026-04-20
Thẻ: WordPress, Bảo mật, Lỗ hổng, WAF, Cuộc hẹn dễ dàng, REST API
Bản tóm tắt: Một lỗ hổng ưu tiên cao (CVE-2026-2262, CVSS 7.5) ảnh hưởng đến các phiên bản plugin Cuộc hẹn dễ dàng lên đến và bao gồm 3.12.21. Truy cập REST API không xác thực có thể làm lộ dữ liệu cuộc hẹn và khách hàng nhạy cảm. Bài viết này giải thích về rủi ro, cách mà kẻ tấn công có thể khai thác nó, các biện pháp giảm thiểu ngay lập tức bạn có thể áp dụng (bao gồm WAF/ vá ảo và thay đổi cấu hình), các bước phát hiện và phản ứng sự cố, và các khuyến nghị tăng cường lâu dài.
Tại sao điều này quan trọng (ngôn ngữ đơn giản)
Cuộc hẹn dễ dàng là một plugin phổ biến để quản lý đặt chỗ và biểu mẫu cuộc hẹn trên các trang WordPress. Lỗ hổng cho phép người dùng không xác thực — bất kỳ ai trên internet — truy vấn các điểm cuối REST API được thêm bởi plugin và thu thập thông tin nhạy cảm (tên, email, số điện thoại, chi tiết cuộc hẹn). Đây không chỉ là một rò rỉ quyền riêng tư: kẻ tấn công có thể sử dụng dữ liệu khách hàng bị lộ để tạo ra các chiến dịch lừa đảo, kỹ thuật xã hội hoặc tống tiền có mục tiêu, và chuyển sang các cuộc tấn công khác vào trang web hoặc người dùng của bạn.
Một lỗ hổng như thế này có thể mở rộng: các công cụ quét tự động và bot có thể thu thập dữ liệu từ hàng ngàn trang web một cách nhanh chóng. Nếu trang web của bạn sử dụng Cuộc hẹn dễ dàng và phiên bản plugin là 3.12.21 hoặc trước đó, hãy coi đây là khẩn cấp.
Mã định danh CVE: CVE-2026-2262
Đã xuất bản: 20 tháng 4 năm 2026
Mức độ nghiêm trọng: Cao (CVSS 7.5)
Lỗ hổng là gì (tóm tắt kỹ thuật)
- Loại: Rò rỉ dữ liệu nhạy cảm qua REST API
- Các phiên bản bị ảnh hưởng: Cuộc hẹn dễ dàng ≤ 3.12.21
- Nguyên nhân gốc rễ: Một số điểm cuối REST của plugin có thể truy cập công khai mà không cần xác thực hoặc kiểm tra khả năng, trả về các bản ghi cuộc hẹn và các trường khách hàng liên quan.
- Dữ liệu có nguy cơ: Thông tin nhận dạng cá nhân (PII) như tên khách hàng, địa chỉ email, số điện thoại, mô tả cuộc hẹn, loại dịch vụ, trường tùy chỉnh và có thể là ghi chú.
- Khả năng khai thác: Không xác thực — một kẻ tấn công chỉ cần gửi các yêu cầu HTTP đến các tuyến REST công khai được đăng ký bởi plugin.
Nói ngắn gọn: một yêu cầu GET đến các tuyến REST của plugin có thể trả về các mục cuộc hẹn đã lưu. Nếu những mục đó bao gồm PII hoặc siêu dữ liệu đặt chỗ, chúng sẽ bị lộ cho bất kỳ ai truy vấn điểm cuối.
Danh sách kiểm tra hành động ngay lập tức (những gì cần làm trong giờ tới)
- Cập nhật plugin lên phiên bản 3.12.22 hoặc mới hơn (được khuyến nghị).
- Đăng nhập vào quản trị WordPress của bạn → Plugins → Tìm Cuộc hẹn dễ dàng → Cập nhật.
- Nếu bạn quản lý nhiều trang web, hãy đẩy bản cập nhật qua giao diện quản lý của bạn hoặc WP-CLI.
- Nếu một bản cập nhật không thể thực hiện ngay lập tức, hãy áp dụng các biện pháp giảm thiểu tạm thời bên dưới.
- Nếu bạn không thể cập nhật ngay lập tức, hãy áp dụng vá lỗi ảo thông qua WAF hoặc máy chủ web của bạn để chặn truy cập vào các điểm cuối REST dễ bị tổn thương (các ví dụ bên dưới).
- Kiểm tra nhật ký cho các yêu cầu GET đáng ngờ đến các điểm cuối REST API và việc rò rỉ dữ liệu bất thường.
- Thông báo cho các bên liên quan nếu dữ liệu khách hàng nhạy cảm có thể đã bị lộ và tuân theo quy trình thông báo vi phạm của tổ chức bạn (pháp lý / quyền riêng tư / bảo vệ dữ liệu).
Cách xác minh xem trang web của bạn có dễ bị tổn thương hay không
- Kiểm tra phiên bản plugin (quản trị viên WordPress hoặc WP‑CLI):
- WP Admin: Trang Plugins → Cuộc hẹn dễ dàng → xem phiên bản.
- WP-CLI:
wp plugin get easy-appointments --field=version
- Kiểm tra các điểm cuối REST công khai (kiểm tra curl nhanh):
- Thử kiểm tra các không gian tên phổ biến:
curl -s -I https://example.com/wp-json | head -n 20'
- Kiểm tra các đường dẫn plugin có khả năng (thay thế example.com):
curl -s https://example.com/wp-json/easy-appointments/v1/appointments
- Nếu có bất kỳ dữ liệu nào được trả về (HTTP 200 với JSON của các mục cuộc hẹn), quyền truy cập không xác thực tồn tại.
- Thử kiểm tra các không gian tên phổ biến:
- Kiểm tra các điểm cuối REST từ bên trong WordPress:
- Cài đặt một plugin chỉ dành cho quản trị viên liệt kê
rest_endpoints()đầu ra, hoặc chạy một đoạn mã nhanh qua WP‑CLI/roles:wp eval 'print_r(array_keys(rest_get_server()->get_routes()));'
- Cài đặt một plugin chỉ dành cho quản trị viên liệt kê
Nếu bất kỳ điểm cuối nào được kiểm tra trả về hồ sơ cuộc hẹn mà không cần xác thực, bạn đang dễ bị tổn thương cho đến khi plugin được cập nhật hoặc giảm thiểu.
Các tùy chọn giảm thiểu tạm thời (khi bạn không thể cập nhật ngay lập tức)
Áp dụng một hoặc nhiều biện pháp giảm thiểu sau đây. Mỗi giải pháp làm giảm rủi ro ngay lập tức — kết hợp chúng để có sự bảo vệ tốt nhất.
Ghi chú: Kiểm tra các thay đổi trên một trang thử nghiệm trước khi áp dụng vào sản xuất để tránh gián đoạn không mong muốn.
1) Bản vá ảo qua WP-Firewall (được khuyến nghị, không gây gián đoạn)
Nếu bạn chạy một WAF được quản lý (bảo vệ WP-Firewall của chúng tôi hoặc tương tự), hãy áp dụng một quy tắc để từ chối quyền truy cập không xác thực vào không gian tên REST của plugin. Ví dụ logic:
- Chặn bất kỳ yêu cầu nào đến URI khớp:
^/wp-json/(easy-appointments|easyappointments|ea|ea/v1|easy-appointments/v1)/.*
- Từ chối các yêu cầu nếu không được xác thực (không có cookie đã đăng nhập / không có tiêu đề nonce).
- Trả về HTTP 403 cho các yêu cầu bị chặn.
Điều này nhanh chóng và có thể đảo ngược và ngăn chặn việc thu thập tự động trong khi bạn cập nhật.
2) Ví dụ quy tắc ModSecurity (Apache)
# Chặn quyền truy cập công khai API REST Easy Appointments"
Đặt quy tắc này sớm trong bộ giai đoạn 1 để tránh trả về dữ liệu của plugin.
3) Cấu hình Nginx
location ~* ^/wp-json/(easy-appointments|easyappointments|ea)(/.*)?$ {
Tải lại Nginx sau khi thử nghiệm: nginx -t && service nginx reload
4) Giải pháp thay thế .htaccess (Apache)
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_URI} ^/wp-json/(easy-appointments|easyappointments|ea)(/.*)?$ [NC]
RewriteRule .* - [F,L]
</IfModule>
5) Vô hiệu hóa các điểm cuối REST trong PHP (cấp độ WordPress)
Thêm điều này vào mu-plugin hoặc functions.php của chủ đề trang web của bạn tạm thời. Điều này hủy đăng ký bất kỳ điểm cuối nào bao gồm không gian tên của plugin:
add_filter('rest_endpoints', function($endpoints) {
foreach ($endpoints as $route => $handlers) {
// Adjust substrings if the plugin uses a different namespace
if (strpos($route, '/easy-appointments/') !== false ||
strpos($route, '/easyappointments/') !== false ||
strpos($route, '/ea/') !== false) {
unset($endpoints[$route]);
}
}
return $endpoints;
});
Lưu ý: Điều này chặn hoàn toàn REST API của plugin - nếu trang web của bạn phụ thuộc vào những điểm cuối này cho chức năng hợp pháp (ứng dụng, tích hợp), hãy phối hợp trước khi vô hiệu hóa.
6) Giới hạn REST API chỉ cho người dùng đã xác thực
Giới hạn toàn cầu quyền truy cập REST API cho người dùng đã đăng nhập (cách tiếp cận rộng nhất):
add_filter( 'rest_authentication_errors', function( $result ) {;
Điều này chặn tất cả các điểm cuối REST API công khai. Sử dụng cẩn thận - nó có thể làm hỏng các nguồn cấp dữ liệu công khai hoặc tích hợp bên thứ ba.
Ví dụ về chữ ký quy tắc WAF (dành cho kỹ sư)
Dưới đây là các mẫu và logic ví dụ để các nhóm WAF triển khai. Chúng được thiết kế một cách tổng quát để bạn có thể chuyển đổi chúng thành cú pháp quy tắc mà tường lửa của bạn sử dụng.
- Khớp phương thức HTTP GET (có khả năng cao nhất cho việc truy xuất dữ liệu).
- Khớp regex URI:
^/wp-json/(easy-appointments|easyappointments|ea|easy-appointments/v1|easyappointments/v1)/?(\?.*)?$
- Tùy chọn kiểm tra tiêu đề cho WP nonces:
- Chặn nếu không có tiêu đề X-WP-Nonce HOẶC cookie phiên hợp lệ vắng mặt.
- Chặn hoặc giới hạn tỷ lệ.
Ví dụ về quy tắc giả:
- NẾU (REQUEST_METHOD == “GET”)
VÀ (REQUEST_URI khớp^/wp-json/(easy-appointments|easyappointments|ea)(/.*)?$)
VÀ (không có cookie chứa “wordpress_logged_in” HOẶC X-WP-Nonce thiếu/không hợp lệ)
THÌ trả về HTTP 403 và ghi lại.
Thêm giới hạn tỷ lệ trên điểm cuối ngay cả sau khi vá để giảm thiểu các nỗ lực thu thập dữ liệu.
Cách phát hiện khai thác và tác động phạm vi
- Tìm kiếm nhật ký máy chủ web (Apache/Nginx) hoặc nhật ký WAF cho các mẫu đáng ngờ:
- URIs chứa /wp-json/easy-appointments/ hoặc /wp-json/ea/ hoặc tương tự.
- Yêu cầu GET tần suất cao cho những tuyến đường đó từ cùng một IP hoặc tác nhân người dùng.
Ví dụ grep:
grep -i "wp-json" /var/log/nginx/access.log | grep -E "easy-appointments|easyappointments|/ea/"
- Tìm kiếm các đỉnh trong yêu cầu tương quan với các khoảng thời gian rò rỉ dữ liệu.
- Xác định các IP và tác nhân người dùng duy nhất đã truy cập các điểm cuối. Xuất và chặn các IP độc hại nếu cần thiết.
- Kiểm tra các bảng cơ sở dữ liệu plugin WordPress (nơi lưu trữ các cuộc hẹn) để đánh giá thông tin nào có mặt tại thời điểm bị lộ. Ghi lại thời gian và các bản ghi nào có thể đã được trả về bởi các điểm cuối REST.
- Nếu bạn sử dụng ghi nhật ký/phân tích bên ngoài (Cloudflare, CDN, SIEM), truy vấn ở đó để lấy quyền truy cập lịch sử.
- Nếu bạn nghi ngờ rằng đã xảy ra rò rỉ dữ liệu, hãy thực hiện theo kế hoạch phản ứng sự cố của bạn: bảo tồn nhật ký, tạo bản sao pháp y và liên hệ với các đội ngũ pháp lý/riêng tư khi cần thiết.
Danh sách kiểm tra sau khai thác (nếu bạn phát hiện lạm dụng)
- Bảo tồn nhật ký và tạo bản sao pháp y trước khi sửa đổi hoặc xóa bất cứ điều gì.
- Xác định các bản ghi nào đã bị lộ và thông tin PII nào đã được bao gồm.
- Thông báo cho người dùng bị ảnh hưởng theo nghĩa vụ riêng tư và quy định của bạn (GDPR, CCPA, v.v.) nếu dữ liệu cá nhân của họ bị xâm phạm.
- Buộc đặt lại mật khẩu cho bất kỳ người dùng quản trị nào có các nỗ lực đăng nhập đáng ngờ xung quanh thời điểm khai thác.
- Thay đổi khóa API và thông tin xác thực tích hợp có thể bị ảnh hưởng.
- Cân nhắc thuê trợ giúp pháp y để phân tích kỹ lưỡng nếu tập dữ liệu lớn hoặc có giá trị cao.
Ví dụ khai thác (cách kẻ tấn công có thể sử dụng dữ liệu bị lộ)
- Địa chỉ email và số điện thoại đã thu thập được sử dụng trong các chiến dịch lừa đảo nhắm mục tiêu tuyên bố xác nhận cuộc hẹn, hóa đơn hoặc đặt lại mật khẩu.
- Kỹ thuật xã hội nhắm vào các đội hỗ trợ, sử dụng chi tiết cuộc hẹn để vượt qua xác thực.
- Các nỗ lực spam hàng loạt và nhồi nhét thông tin xác thực nhắm vào tài khoản người dùng.
- Bán thông tin cá nhân đã thu thập trên các thị trường ngầm.
Ngay cả khi kẻ tấn công không ngay lập tức sử dụng dữ liệu, việc lưu trữ nó để kiếm tiền sau này là một chiến thuật phổ biến.
Tại sao việc cập nhật là giải pháp lâu dài tốt nhất
Vá ảo và chặn các tuyến REST là những biện pháp khẩn cấp tốt, nhưng chúng chỉ là tạm thời. Bản vá của nhà phát triển trong phiên bản 3.12.22 sửa chữa nguyên nhân gốc rễ bằng cách thêm xác thực và kiểm tra khả năng thích hợp cho các tuyến REST, đảm bảo API chỉ trả về dữ liệu cuộc hẹn khi phù hợp.
Cập nhật lên 3.12.22 (hoặc phiên bản mới hơn) càng sớm càng tốt và sau đó xóa các quy tắc WAF hoặc máy chủ tạm thời có thể gây cản trở chức năng hợp pháp.
Các khuyến nghị tăng cường để giảm thiểu các rủi ro tương tự trong tương lai
- Giảm thiểu các plugin: Chỉ cài đặt các plugin mà bạn sử dụng thường xuyên và giữ tổng số lượng plugin thấp để giảm bề mặt tấn công.
- Giữ mọi thứ được cập nhật: Core, giao diện và plugin. Đăng ký theo dõi bảo mật có ý nghĩa.
- Nguyên tắc quyền tối thiểu: Chỉ cấp cho tài khoản plugin và tích hợp những khả năng tối thiểu cần thiết.
- Ghi lại và theo dõi truy cập REST API như một phần của các cuộc kiểm toán bảo mật định kỳ của bạn.
- Sử dụng WAF / vá ảo như một phần của phòng thủ nhiều lớp. Chặn các điểm cuối nguy hiểm trước khi cập nhật giúp mua thêm thời gian trong các bản vá khẩn cấp.
- Quét định kỳ để phát hiện thông tin cá nhân bị lộ. Một công cụ quét tự động có thể phát hiện các điểm cuối REST có thể truy cập công khai mà rò rỉ nội dung.
- Kiểm tra các bản cập nhật plugin trong môi trường staging trước khi triển khai vào sản xuất. Duy trì sao lưu và kế hoạch quay lại bản cập nhật.
- Thêm một sổ tay phản ứng sự cố cho các sự cố lộ dữ liệu: ai cần thông báo, nơi lưu trữ nhật ký, thời gian báo cáo theo các luật dữ liệu áp dụng.
Cách kiểm tra các biện pháp giảm thiểu của bạn (danh sách kiểm tra nhanh)
- Sau khi áp dụng quy tắc WAF / máy chủ, chạy cùng một lệnh curl đã sử dụng để xác minh lỗ hổng. Xác nhận phản hồi HTTP 403/401.
curl -i https://example.com/wp-json/easy-appointments/v1/appointments
- Nếu bạn đã sử dụng phương pháp PHP unregister, hãy xác minh rằng điểm cuối đã biến mất từ
rest_get_server()->get_routes(). - Xác nhận rằng các tích hợp hợp pháp vẫn đang hoạt động. Nếu bạn đã chặn các điểm cuối REST của plugin nhưng vẫn cần tích hợp, hãy triển khai danh sách cho phép cho các IP hoặc tài khoản dịch vụ đáng tin cậy.
- Chạy lại trình quét bảo mật tự động hoặc kiểm tra lỗ hổng trên trang web.
Mẫu thời gian phản ứng sự cố cho chủ sở hữu trang web
- 0–1 giờ: Xác định plugin và phiên bản dễ bị tổn thương; áp dụng chặn tạm thời WAF/máy chủ.
- 1–6 giờ: Kiểm tra nhật ký để tìm truy cập đáng ngờ; bảo tồn chứng cứ.
- 6–24 giờ: Cập nhật plugin lên phiên bản đã vá; kiểm tra lại chức năng.
- 24–72 giờ: Hoàn thành đánh giá pháp y; xác định phạm vi lộ dữ liệu; thông báo cho các bên bị ảnh hưởng nếu cần.
- 72+ giờ: Thực hiện các bước tăng cường lâu dài (thêm vào giám sát, cập nhật chính sách, đào tạo nhân viên, sao lưu).
Những câu hỏi thường gặp
Hỏi: Nếu tôi chặn các điểm cuối REST, liệu các mẫu đặt chỗ vẫn hoạt động không?
Đáp: Nó phụ thuộc. Nếu mẫu đặt chỗ phía trước của bạn sử dụng API REST của plugin để gửi hoặc đọc dữ liệu cuộc hẹn (AJAX), việc chặn truy cập REST sẽ làm hỏng chức năng đó. Sử dụng quy tắc chọn lọc (chỉ chặn GET, hoặc chặn từ các IP không xác định) hoặc cho phép các yêu cầu từ trang web của bạn.
Hỏi: Tôi có thể dựa vào sao lưu máy chủ để phục hồi từ điều này không?
Đáp: Sao lưu là cần thiết, nhưng chúng không ngăn chặn việc lộ dữ liệu. Sao lưu giúp khôi phục trạng thái trang web sau khi bị xâm phạm nhưng không giảm thiểu rủi ro thu thập PII.
H: Tôi có nên gỡ bỏ plugin không?
Đáp: Nếu bạn không còn cần chức năng Easy Appointments, hãy gỡ cài đặt và xóa nó. Nếu bạn cần plugin, hãy cập nhật nó và tăng cường như đã khuyến nghị.
Ví dụ: chặn chọn lọc an toàn (cho phép AJAX từ các trang của bạn)
Nếu mẫu đặt chỗ của bạn sử dụng AJAX phía trước từ cùng một trang web, bạn có thể cho phép các yêu cầu bao gồm một người giới thiệu hoặc nonce hợp lệ trong khi chặn các yêu cầu khác.
Ví dụ Nginx (khái niệm):
location ~* ^/wp-json/(easy-appointments|ea)(/.*)?$ {
Tốt hơn: hãy để WAF của bạn xác thực các nonce WordPress hoặc cookie phiên thay vì dựa vào tiêu đề người giới thiệu, điều này có thể bị giả mạo.
Danh sách kiểm tra bảo mật cho các cơ quan và nhà cung cấp dịch vụ
- Kiểm kê tất cả các trang web đang chạy Easy Appointments và kiểm tra các phiên bản.
- Lên lịch cập nhật hàng loạt hoặc áp dụng các bản vá ảo được quản lý.
- Quét các điểm cuối bị lộ trên toàn bộ đội khách hàng bằng các kịch bản tự động.
- Tạo một mẫu thông báo để thông báo cho các chủ sở hữu và người dùng bị ảnh hưởng.
- Đảm bảo rằng các bản sao lưu tồn tại và cập nhật kế hoạch phục hồi.
Tiêu đề: Bảo vệ trang web của bạn ngay bây giờ — thử Kế hoạch Miễn phí của WP‑Firewall
Nếu bạn muốn bảo vệ ngay lập tức, được quản lý trong khi cập nhật các plugin và củng cố trang web của mình, WP‑Firewall cung cấp một kế hoạch Cơ bản miễn phí, luôn hoạt động bao gồm tường lửa được quản lý, băng thông không giới hạn, WAF, quét phần mềm độc hại và giảm thiểu các rủi ro OWASP Top 10 — mọi thứ bạn cần để chặn các nỗ lực thu thập dữ liệu và nhận diện tự động trong khi bạn khắc phục. Bắt đầu ở đây: https://my.wp-firewall.com/buy/wp-firewall-free-plan/
Tóm tắt những điểm nổi bật của kế hoạch:
- Cơ bản (Miễn phí): Tường lửa được quản lý, WAF, quét phần mềm độc hại, băng thông không giới hạn, giảm thiểu cho OWASP Top 10.
- Tiêu chuẩn ($50/năm): Mọi thứ trong Cơ bản, cộng với việc loại bỏ phần mềm độc hại tự động và kiểm soát danh sách đen/trắng IP (tối đa 20 IP).
- Pro ($299/năm): Mọi thứ trong Tiêu chuẩn, cộng với báo cáo bảo mật hàng tháng, vá ảo tự động và các tiện ích mở rộng quản lý cao cấp.
Nếu bạn thích kiểm soát trực tiếp, WP‑Firewall cho phép bạn thực hiện các quy tắc mục tiêu (chính xác là loại được khuyến nghị ở trên) ngay lập tức mà không cần thay đổi cấu hình máy chủ.
Ghi chú cuối cùng từ đội ngũ bảo mật của WP‑Firewall
Lỗ hổng này làm nổi bật một mẫu lặp lại: các plugin đăng ký các điểm cuối REST phải thực thi xác thực và kiểm tra khả năng. Là những người quản lý các trang web và dữ liệu khách hàng, chúng ta phải giả định rằng kẻ tấn công sẽ quét rộng rãi các điểm cuối REST mà tiết lộ các hồ sơ nhạy cảm.
Cập nhật ngay lập tức cho plugin (3.12.22 hoặc mới hơn) là cách sửa chữa đúng. Nếu bạn không thể cập nhật ngay lập tức, vá ảo — thông qua một WAF được quản lý, quy tắc máy chủ hoặc bộ lọc PHP ngắn — nên được áp dụng ngay lập tức. Sau khi vá, thực hiện xem xét nhật ký cẩn thận và tuân theo nghĩa vụ phản ứng sự cố và bảo vệ dữ liệu của bạn.
Nếu bạn cần trợ giúp áp dụng một quy tắc giảm thiểu hoặc xem xét nhật ký, các kỹ sư bảo mật của chúng tôi có thể giúp. Để bảo vệ nhanh chóng ngay bây giờ, hãy bắt đầu với kế hoạch miễn phí WP‑Firewall ở đây: https://my.wp-firewall.com/buy/wp-firewall-free-plan/
Hãy giữ an toàn,
Nhóm bảo mật WP‑Firewall
Phụ lục A — Lệnh & đoạn mã nhanh
- Kiểm tra phiên bản plugin (WP‑CLI):
wp plugin get easy-appointments --field=version
- Liệt kê các tuyến REST (WP‑CLI):
wp eval 'print_r(array_keys(rest_get_server()->get_routes()));'
- Ví dụ về thử nghiệm Curl:
curl -i https://example.com/wp-json/easy-appointments/v1/appointments
- Tìm nhật ký cho các điểm cuối đáng ngờ:
grep -i "wp-json" /var/log/nginx/access.log | grep -E "easy-appointments|easyappointments|/ea/"
- Đoạn mã PHP hủy đăng ký tạm thời:
// Place in mu-plugins/disable-ea-rest.php <?php add_filter('rest_endpoints', function($endpoints) { foreach ($endpoints as $route => $handlers) { if (strpos($route, '/easy-appointments/') !== false || strpos($route, '/easyappointments/') !== false || strpos($route, '/ea/') !== false) { unset($endpoints[$route]); } } return $endpoints; });
Phụ lục B — Các câu hỏi cần chuẩn bị khi liên hệ với hỗ trợ hoặc người phản ứng sự cố
- Khi nào bạn lần đầu tiên thấy bằng chứng về việc truy cập vào các điểm cuối REST?
- Phiên bản plugin nào đã được cài đặt vào thời điểm đó?
- Các trường dữ liệu khách hàng nào được lưu trữ trong các cuộc hẹn?
- Có sự gia tăng lưu lượng truy cập đến các đường dẫn /wp-json/ không?
- Bạn có bản sao lưu và nhật ký đã được lưu giữ từ khoảng thời gian có khả năng bị lộ không?
Cung cấp các câu trả lời ngay từ đầu để tăng tốc độ phân loại và kiểm soát.
