Khắc phục: ERR_BLOCKED_BY_XSS_AUDITOR
Chrome liên tục được phát triển tích cực với các phiên bản mới được phát hành thỉnh thoảng bao gồm các tính năng mới và cải tiến bảo mật. Chrome không chỉ được sử dụng để duyệt web; nó cũng được sử dụng cho nhiều dịch vụ web mà các nhà phát triển sử dụng.
Với bản dựng Chrome 57 gần đây, khả năng phát hiện kiểm toán viên XSS đã được cải thiện đáng kể. Họ đã đặt ra các nguyên tắc mới do đó các dịch vụ web ngừng hoạt động và đưa ra thông báo lỗi ‘ERR_BLOCKED_BY_XSS_AUDITOR’.
Thông báo lỗi này được gây ra khi nội dung HTML được gửi qua phương thức POST bên trong yêu cầu. Google Chrome có tính năng XSS Security luôn phân tích HTML được gửi qua các biểu mẫu và chặn các yêu cầu đó. Bằng cách này, các biểu mẫu không bao giờ được gửi qua và tránh được việc khai thác XSS.
Nguyên nhân gây ra thông báo lỗi ‘ERR_BLOCKED_BY_XSS_AUDITOR’ trong Chrome?
Như đã đề cập trước đây, xây dựng gần đây của Chrome đã cải tiến XSS Auditor để các lỗ hổng XSS không bị khai thác. Do đó, bạn có thể nhận được thông báo lỗi nếu bạn chưa cập nhật mã nguồn của mình cho phù hợp.
Hầu hết thời gian, có một dương tính giả khi trình duyệt tin rằng một cuộc tấn công 'tạo kịch bản chéo trang web' đang bị ép buộc. Các cuộc tấn công này chủ yếu xảy ra khi trình duyệt bị lừa kết xuất JavaScript hoặc HTML không phải là một phần của khía cạnh hiển thị của trang web.
Giải pháp (Nếu bạn quản trị trang web)
Nếu bạn là quản trị viên trang web và thông báo lỗi này xảy ra khi bạn đang sử dụng bình thường, bạn có thể thử loại bỏ nó bằng cách thêm một số tiêu đề trang vào tiêu đề ĐĂNG. Đây là một bản sửa lỗi tạm thời cho đến khi bạn có thể đưa ra một giải pháp thay thế thích hợp để xử lý đúng yêu cầu XSS Auditor.
PHP
Thêm tiêu đề sau vào tệp PHP của bạn:
header ('X-XSS-Protection: 0');
ASP.NET
Ở đây, chúng tôi tạm thời vô hiệu hóa tính năng bảo vệ XSS cho đến khi bạn có thể thêm trình xử lý thích hợp vào mã nguồn của mình.
HttpContext.Response.AddHeader ("X-XSS-Protection", "0");
Nếu bạn đang định cấu hình Web.Config , bạn có thể thêm mã sau để thay thế:
[...]
Xác thực yêu cầu máy chủ ASP.NET
Trong một số trường hợp, máy chủ sẽ từ chối yêu cầu ĐĂNG ngay cả khi chúng tôi đã thêm tiêu đề bắt buộc. Một giải pháp khác là sử dụng ‘Yêu cầu. Chưa được xác thực"Sẽ là một đối tượng được tạo riêng để xử lý việc nhận được yêu cầu dữ liệu" không an toàn ".
var code = Request.Unvalidated.Form ["code"];
Điều này có lẽ sẽ chỉ hoạt động cho Xác thực yêu cầu ASP.NET.
Nếu bạn đang sử dụng biểu mẫu web, bạn có thể dùng:
<@ Page validateRequest="false" %>
Nếu bạn đang sử dụng MVC, chúng ta có thể tận dụng ‘[ValidateInput (false)]'Là một thuộc tính trên bộ điều khiển. Điều này được thực hiện để ngăn chặn xác thực.
[ValidateInput (false)] Chuyển đổi ActionResult công khai (yêu cầu CodeRequest) {...}
Cài đặt IIS HttpRuntime
IIS Express được Visual studio sử dụng cho các dịch vụ web và là một trong những kiến trúc được sử dụng nhiều nhất cho đến nay. Khi bạn đang sử dụng ASP.NET, IIS có thể chặn yêu cầu của bạn ngay cả trước khi ASP.NET giành được quyền kiểm soát. Chúng tôi sẽ cố gắng tắt điều này trong web.config và cố gắng đạt được hành vi cũ bằng cách sử dụng mã sau:
Nếu chúng tôi không làm điều này, IIS sẽ không thành công và từ chối yêu cầu ngay cả trước khi nó được chuyển đến ASP.NET.
Ghi chú: Những giải pháp thay thế này là ý tưởng hay nếu trang web của bạn không thể truy cập được và đang khiến bạn thua lỗ. Bạn nên luôn luôn sửa đổi mã nguồn của bạn để bạn có thể xử lý XSS Auditor đúng cách. Chỉ sử dụng chúng tạm thời cho đến khi bạn có thể tìm ra cách khắc phục phù hợp.
Giải pháp (Nếu bạn không quản trị trang web)
Nếu bạn là người dùng thông thường và không có quyền truy cập hoặc quản trị trang web, bạn có thể thử khởi chạy Chrome mà không cần Trình kiểm tra XSS. Chúng tôi sẽ tạo một lối tắt của Google Chrome và thêm các cờ cần thiết để khởi chạy nó trong điều kiện của chúng tôi.
- Nhấp chuột phải vào bất kỳ đâu trên màn hình của bạn và chọn Mới> Lối tắt.
- Bây giờ, hãy dán các dòng mã sau theo phiên bản Google Chrome được cài đặt trên máy tính của bạn.
Đối với Chrome 64 bit
"C: \ Program Files \ Google \ Chrome \ Application \ chrome.exe" -disable-xss-auditor
Đối với Chrome 32 bit
"C: \ Program Files (x86) \ Google \ Chrome \ Application \ chrome.exe" -disable-xss-auditor
- Lối tắt Chrome của bạn bây giờ sẽ được tạo. Bây giờ hãy thử truy cập vào trang web và kiểm tra xem thông báo lỗi đã được giải quyết chưa.
Ghi chú: Phương pháp này đang vô hiệu hóa XSS Auditor trên trình duyệt của bạn. Đây là một phần không thể thiếu của cơ chế bảo mật. Vui lòng tự chịu rủi ro khi tiến hành và bạn chỉ nên sử dụng tính năng này tạm thời.