Hướng dẫn dùng htmlpurifier tutorial trong PHP
I. Lời mở đầu Show Trong bài trước Hacker đã tấn công trang web của tôi như thế nào mình có đề cập đến lỗi XSS mà trang web của mình đã bị hacker tấn công. Cụ thể là mình đã bị hacker tấn công bởi lỗi Stored XSS. Mình xin giải thích cụ thể hơn về lỗi XSS này. Stored XSS: là dạng tấn công mà hacker chèn trực tiếp các mã độc vào cơ sở dữ liệu của website. Dạng tấn công này xảy ra khi các dữ liệu được gửi lên server không được kiểm tra kỹ lưỡng mà lưu trực tiếp vào cơ sở dữ liệu. Khi người dùng truy cập vào trang web này thì những đoạn script độc hại sẽ được thực thi chung với quá trình load trang web. Trong
PHP có một hàm là Ví dụ bạn có một đoạn string có chứa các thẻ html, bây giờ bạn cần loại bỏ nó khỏi string này. Bạn có thể làm như sau:
Và ta thu được kết quả như mong muốn:
Test paragraph. Mặc dù II. Nội dung chínhCài đặt package HTML PurifierHTML Purifier đã có sẵn trong packagist.org. Nếu bạn đang sử dụng composer để quản lý các dependencies. Để thực hiện cài đặt package bạn thực hiện theo command sau:
Sau khi cài đặt thành công package sẽ được add trong composer.json.
Sử dụng package HTML PurifierTạo File App\Support\HTMLPurifier.php để setup config cho HTMLPurifier
Với HTMLPurifier bạn không cần phải điền list thẻ html nữa, thay vào đó là ta whitelist các attribute thôi ví dụ như class, url, ... rất là tiện đúng không nào. Và tại phần store data mà chúng ta muốn sử dụng chỉ cần gọi nó ra
Với HTMLPurifier các thẻ html không cần thiết đã bị xóa đi và việc tấn công XSS phần nào được ngăn chặn. Demo
III. Tạm kếtHTML Purifier là một packge hiệu quả cho các giải pháp phòng tránh XSS. Hãy bảo vệ trang web của bạn đươc tốt nhất, mang đến trải nghiệm người dùng hiệu quả nhất. Đây chỉ là 1 trong những package trong vô vàn giải pháp ngăn ngừa và phòng tránh XSS. Rất mong được sự góp ý từ mọi người. |