Package Exports
- defangjs
- defangjs/index.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (defangjs) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
defangjs
URL / IP / Email defanging with Javascript
Coded with 💙 by edoardottt
Defanging is the process where URLs, IPs, and email addresses no longer become effective (or clickable if you want). Why? Links can be used for phishing or it's simply safer to display them in a weakened way if they are malicious resources (eg. Indicators of compromise for a malware).
Install ⬇️
npm install defangjs@latestUsage 🚀
var defangjs = require('defangjs');
var url = 'https://www.edoardoottavianelli.it/index.html';
console.log(defangjs.Url(url));
// hxxps[://]www[.]edoardoottavianelli[.]it/index.html
var maliciousIpv4 = '666.666.666.666';
console.log(defangjs.Ip(maliciousIpv4));
// 666[.]666[.]666[.]666
var maliciousIpv6 = '2001:0db8:85a3:0000:0000:8a2e:0370:7334';
console.log(defangjs.Ip(maliciousIpv6));
// 2001[:]0db8[:]85a3[:]0000[:]0000[:]8a2e[:]0370[:]7334
var maliciousEmail = 'mailto:edoardott@gmail.com';
console.log(defangjs.Email(maliciousEmail));
// mailto[:]edoardott@gmail[.]comTest 🧑🏭
npm testTake a look to test.js, this file contains all the supported formats (URLs, various protocols, ports, Ipv4 and Ipv6 and email addresses)
Changelog 📌
Detailed changes for each release are documented in the release notes.
Contributing 🤝
If you want to contribute to this project, you can start opening an issue.
License 📝
This repository is under GNU General Public License v3.0.
edoardoottavianelli.it to contact me.