Merge pull request #147 from HeroGamers/external-tools

Add more additional resources / external tools
This commit is contained in:
Alicia Sykes 2024-06-16 12:05:11 +01:00 committed by GitHub
commit 7c0f750f6f
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -93,13 +93,14 @@ const resources = [
link: 'https://ssllabs.com/ssltest/analyze.html', link: 'https://ssllabs.com/ssltest/analyze.html',
icon: 'https://i.ibb.co/6bVL8JK/Qualys-ssl-labs.png', icon: 'https://i.ibb.co/6bVL8JK/Qualys-ssl-labs.png',
description: 'Analyzes the SSL configuration of a server and grades it', description: 'Analyzes the SSL configuration of a server and grades it',
searchLink: 'https://www.ssllabs.com/ssltest/analyze.html?d={URL}',
}, },
{ {
title: 'Virus Total', title: 'Virus Total',
link: 'https://virustotal.com', link: 'https://virustotal.com',
icon: 'https://i.ibb.co/dWFz0RC/Virustotal.png', icon: 'https://i.ibb.co/dWFz0RC/Virustotal.png',
description: 'Checks a URL against multiple antivirus engines', description: 'Checks a URL against multiple antivirus engines',
searchLink: 'https://www.virustotal.com/gui/domain/{URL}', searchLink: 'https://www.virustotal.com/gui/search/{URL_ENCODED}',
}, },
{ {
title: 'Shodan', title: 'Shodan',
@ -120,6 +121,7 @@ const resources = [
link: 'https://urlscan.io/', link: 'https://urlscan.io/',
icon: 'https://i.ibb.co/cYXt8SH/Url-scan.png', icon: 'https://i.ibb.co/cYXt8SH/Url-scan.png',
description: 'Scans a URL and provides information about the page', description: 'Scans a URL and provides information about the page',
searchLink: 'https://urlscan.io/search/#{URL}',
}, },
{ {
title: 'Sucuri SiteCheck', title: 'Sucuri SiteCheck',
@ -133,21 +135,21 @@ const resources = [
link: 'https://whois.domaintools.com/', link: 'https://whois.domaintools.com/',
icon: 'https://i.ibb.co/zJfCKjM/Domain-tools.png', icon: 'https://i.ibb.co/zJfCKjM/Domain-tools.png',
description: 'Run a WhoIs lookup on a domain', description: 'Run a WhoIs lookup on a domain',
searchLink: 'https://whois.domaintools.com/{URL}', searchLink: 'https://whois.domaintools.com/{DOMAIN}',
}, },
{ {
title: 'NS Lookup', title: 'NS Lookup',
link: 'https://nslookup.io/', link: 'https://nslookup.io/',
icon: 'https://i.ibb.co/BLSWvBv/Ns-lookup.png', icon: 'https://i.ibb.co/BLSWvBv/Ns-lookup.png',
description: 'View DNS records for a domain', description: 'View DNS records for a domain',
searchLink: 'https://www.nslookup.io/domains/{URL}/dns-records/', searchLink: 'https://www.nslookup.io/domains/{DOMAIN}/dns-records/',
}, },
{ {
title: 'DNS Checker', title: 'DNS Checker',
link: 'https://dnschecker.org/', link: 'https://dnschecker.org/',
icon: 'https://i.ibb.co/gyKtgZ1/Dns-checker.webp', icon: 'https://i.ibb.co/gyKtgZ1/Dns-checker.webp',
description: 'Check global DNS propagation across multiple servers', description: 'Check global DNS propagation across multiple servers',
searchLink: 'https://dnschecker.org/#A/{URL}', searchLink: 'https://dnschecker.org/#A/{DOMAIN}',
}, },
{ {
title: 'Censys', title: 'Censys',
@ -175,13 +177,13 @@ const resources = [
link: 'https://dnsdumpster.com/', link: 'https://dnsdumpster.com/',
icon: 'https://i.ibb.co/DtQ2QXP/Trash-can-regular.png', icon: 'https://i.ibb.co/DtQ2QXP/Trash-can-regular.png',
description: 'DNS recon tool, to map out a domain from it\'s DNS records', description: 'DNS recon tool, to map out a domain from it\'s DNS records',
searchLink: '',
}, },
{ {
title: 'BGP Tools', title: 'BGP Tools',
link: 'https://bgp.tools/', link: 'https://bgp.tools/',
icon: 'https://i.ibb.co/zhcSnmh/Bgp-tools.png', icon: 'https://i.ibb.co/zhcSnmh/Bgp-tools.png',
description: 'View realtime BGP data for any ASN, Prefix or DNS', description: 'View realtime BGP data for any ASN, Prefix or DNS',
searchLink: 'https://bgp.tools/dns/{URL}',
}, },
{ {
title: 'Similar Web', title: 'Similar Web',
@ -211,10 +213,44 @@ const resources = [
description: 'Assesses website security posture by analyzing various security headers and practices', description: 'Assesses website security posture by analyzing various security headers and practices',
searchLink: 'https://observatory.mozilla.org/analyze/{URL}', searchLink: 'https://observatory.mozilla.org/analyze/{URL}',
}, },
{
title: 'AbuseIPDB',
link: 'https://abuseipdb.com/',
icon: 'https://i.ibb.co/KLZncxw/abuseipdb.png',
description: 'Checks a website against Zscaler\'s dynamic risk scoring engine',
searchLink: 'https://www.abuseipdb.com/check?query={DOMAIN}',
},
{
title: 'IBM X-Force Exchange',
link: 'https://exchange.xforce.ibmcloud.com/',
icon: 'https://i.ibb.co/tsTsCV5/x-force.png',
description: 'View shared human and machine generated threat intelligence',
searchLink: 'https://exchange.xforce.ibmcloud.com/url/{URL_ENCODED}',
},
{
title: 'URLVoid',
link: 'https://urlvoid.com/',
icon: 'https://i.ibb.co/0ZDjCDz/urlvoid-icon.png',
description: 'Checks a website across 30+ blocklist engines and website reputation services',
searchLink: 'https://urlvoid.com/scan/{DOMAIN}',
},
{
title: 'URLhaus',
link: 'https://urlhaus.abuse.ch/',
icon: 'https://i.ibb.co/j3QwrT8/urlhaus-logo.png',
description: 'Checks if the site is in URLhaus\'s malware URL exchange',
searchLink: 'https://urlhaus.abuse.ch/browse.php?search={URL_ENCODED}',
},
{
title: 'ANY.RUN',
link: 'https://any.run/',
icon: 'https://i.ibb.co/6nLw2MC/anyrun-icon.png',
description: 'An interactive malware and web sandbox',
},
]; ];
const makeLink = (resource: any, scanUrl: string | undefined): string => { const makeLink = (resource: any, scanUrl: string | undefined): string => {
return (scanUrl && resource.searchLink) ? resource.searchLink.replaceAll('{URL}', scanUrl.replace('https://', '')) : resource.link; return (scanUrl && resource.searchLink) ? resource.searchLink.replaceAll('{URL}', scanUrl.replace(/(https?:\/\/)?/i, '')).replaceAll('{URL_ENCODED}', encodeURIComponent(scanUrl.replace(/(https?:\/\/)?/i, '')).replace(/['\.*]/g, (c) => `%${c.charCodeAt(0).toString(16).toUpperCase()}`)).replaceAll('{DOMAIN}', scanUrl.replace(/(https?:\/\/)?(www.)?/i, '').replace(/(\/.*)/i, '')) : resource.link;
}; };
const AdditionalResources = (props: { url?: string }): JSX.Element => { const AdditionalResources = (props: { url?: string }): JSX.Element => {