DOMPurify
HtmlSanitizer
DOMPurify | HtmlSanitizer | |
---|---|---|
50 | 3 | |
14,420 | 1,578 | |
2.0% | 0.4% | |
9.0 | 7.7 | |
18 days ago | 6 months ago | |
JavaScript | C# | |
GNU General Public License v3.0 or later | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
DOMPurify
-
Your rich text could be a cross-site scripting vulnerability
Let's take a look at how we implement sanitization in the secure version of our vulnerable application. Since this application is primarily written using JavaScript, we use the dompurify library for the client side and the isomorphic-dompurify library for server-side sanitization. In the app.js program that acts as our web server, you will find an express endpoint /sanitized with a GET and POST implementation:
-
The Final Stretch of My Open Source Journey: Part 2
After several hours of code review, I finally spotted something unfamiliar in the Markdown Renderer component: a function called escapeHTML was being used to escape HTML, even though DOMPurify was already being used for sanitization right after!
-
Understanding Cross-Site Scripting (XSS): A Quick Reference
DOMPurify Documentation
-
Securing JavaScript Applications: Common Vulnerabilities and How to Avoid Them
Use libraries such as DOMPurify to sanitize input.
-
Mitigate XSS exploits when using React's `dangerously SetInnerHTML`
//https://github.com/cure53/DOMPurify import React from "react"; import DOMPurify from "dompurify"; const sanitize = (dirty) => DOMPurify.sanitize(dirty); const DangerousHtml = ({ innerHTML, tag }) => { const clean = sanitize(innerHTML); if (typeof tag === "undefined") { return
; } return ; }; export default DangerousHtml; -
Navigating the Security Risks of Arbitrary Values in Tailwind CSS
Input Sanitization: The most crucial step in preventing XSS attacks is to ensure that all user-generated content is properly sanitized before it is rendered on the page. Use libraries like DOMPurify or built-in sanitization functions provided by your framework (e.g., React's dangerouslySetInnerHTML) to strip out any potentially harmful code.
-
Safely Handling HTML in React
When using dangerouslySetInnerHTML, it is crucial to sanitize the HTML strings to prevent XSS attacks. DOMPurify is a robust library that cleans HTML content by removing or neutralizing potentially dangerous scripts or tags.
-
Show HN: Markdown HN profiles at {user}.at.hn
Since marked doesn't do it for you, make sure you sanitize the user input (the text on the user profiles) before rendering it to visitors.
Some libraries for doing that with good defaults:
- https://github.com/cure53/DOMPurify
- https://github.com/apostrophecms/sanitize-html
- https://github.com/bevacqua/insane
(right now your site looks vulnerable to XSS)
-
JavaScript Libraries for Implementing Trendy Technologies in Web Apps in 2024
DOMPurify
- Lessons from open-source: Use window.trustedTypes to prevent DOM XSS.
HtmlSanitizer
-
Should I sanitize html in the API to prevent XSS when using React?
React seems to automatically handle HTML Encoding of variables to prevent XSS. With that said, should I take further steps to sanitize the inputs on the Api? Using something like the HtmlSanitizer - https://github.com/mganss/HtmlSanitizer?
- Complete novice, security advice
-
[HELP] asp.net website project targeting 4.7.2 builds successfully in visual studio and msbuild however when built with msbuild there are missing dlls.
i'm at a bit of a loose end. i recently installed Html Sanitizer to my old asp.net webforms "website" project, and while my build server builds the project successfully with msbuild, i get 500 errors saying there's binaries missing, and low and behold two dlls aren't getting copied to bin folder from the packages directory but it works perfectly fine when i do a build in visual studio (clean and rebuild is fine as well) and i have no idea why this is happening and need some help.
What are some alternatives?
sanitize-html - Clean up user-submitted HTML, preserving whitelisted elements and whitelisted attributes on a per-element basis. Built on htmlparser2 for speed and tolerance
AngleSharp - :angel: The ultimate angle brackets parser library parsing HTML5, MathML, SVG and CSS to construct a DOM based on the official W3C specifications.
js-xss - Sanitize untrusted HTML (to prevent XSS) with a configuration specified by a Whitelist
DinkToPdf - C# .NET Core wrapper for wkhtmltopdf library that uses Webkit engine to convert HTML pages to PDF.
xss-filters
QuestPDF - QuestPDF is a modern open-source .NET library for PDF document generation. Offering comprehensive layout engine powered by concise and discoverable C# Fluent API. Easily generate PDF reports, invoices, exports, etc.
Themis - Easy to use cryptographic framework for data protection: secure messaging with forward secrecy and secure data storage. Has unified APIs across 14 platforms.
SuperTokens Community - Open source alternative to Auth0 / Firebase Auth / AWS Cognito
Retire.js - scanner detecting the use of JavaScript libraries with known vulnerabilities. Can also generate an SBOM of the libraries it finds.
isomorphic-dompurify - Use DOMPurify on server and client in the same way
Thymeleaf - Thymeleaf is a modern server-side Java template engine for both web and standalone environments.
marked - A markdown parser and compiler. Built for speed.