Tôi có một trình soạn thảo cho phép người dùng thêm HTML được lưu trữ trong cơ sở dữ liệu và được hiển thị trên trang web. Vì đây là đầu vào không tin cậy, tôi dự định sử dụng Microsoft.Security.Application.AntiXsSS.GetSafeHtmlFragment
để khử trùng HTML.Vệ sinh HTML trước khi lưu trữ trong DB hoặc trước khi hiển thị? (Thư viện AntiXSS trong ASP.NET)
- Tôi có nên santiize trước khi lưu vào cơ sở dữ liệu hoặc trước khi hiển thị đầu vào không đáng tin cậy vào trang web không?
- Có lợi thế nào trong việc bao gồm mã nguồn AntiXSS trong dự án của tôi thay vì chỉ là DLL không? (Có lẽ tôi có thể tùy chỉnh các danh sách trắng?)
- Những tập tin lớp tôi nên nhìn vào thực hiện thực tế của GetSafeHtmlFragment
Tôi đã trở lại và bình chọn bạn bởi vì tôi đồng ý với các đối số của bạn và đề xuất của bạn phù hợp với đề xuất của OWASP. Hy vọng rằng, @ user102533 sẽ chuyển đổi và chấp nhận của bạn. – David
Anh ấy không lưu trữ dữ liệu được mã hóa, anh ấy đang lưu trữ dữ liệu được khử trùng - sự khác biệt lớn (nó vẫn chưa được mã hóa HTML) – orip
Điểm 2 vẫn đứng đó (và vâng, tôi không chú ý nhiều đến việc đọc!) Điều gì sẽ xảy ra nếu có một lỗi trong chất khử trùng? Hoặc bạn muốn thay đổi các quy tắc an ủi? – blowdart