VulnSleuth Xplorer

Discover hidden vulnerabilities lurking in web applications. Scan for XSS and SQLi across domains and subdomains.

Only scan websites you have permission to test.
'; xss1.querySelector('[data-type]').textContent = 'XSS'; xss1.querySelector('[data-severity]').textContent = 'High'; xss1.querySelector('[data-description]').textContent = 'The search parameter is vulnerable to reflected cross-site scripting attacks. User input is directly included in the page without proper encoding.'; xss1.querySelector('[data-date]').textContent = 'Discovered: ' + new Date().toLocaleDateString(); xss1.querySelector('[data-poc]').innerHTML = `${escapeHtml(targetUrl + '/search?q=')}`; xss1.querySelector('[data-remediation]').textContent = 'Implement proper output encoding for all user-controlled input. Use Content Security Policy (CSP) headers to mitigate impact.'; vulnList.appendChild(xss1); // SQLi Vulnerability const sqli1 = template.content.cloneNode(true); sqli1.querySelector('[data-name]').textContent = 'SQL Injection in Login Form'; sqli1.querySelector('[data-url]').textContent = targetUrl + '/login'; sqli1.querySelector('[data-type]').textContent = 'SQLi'; sqli1.querySelector('[data-severity]').textContent = 'Critical'; sqli1.querySelector('[data-description]').textContent = 'The login form is vulnerable to SQL injection. User input is directly concatenated into SQL queries without parameterization.'; sqli1.querySelector('[data-date]').textContent = 'Discovered: ' + new Date().toLocaleDateString(); sqli1.querySelector('[data-poc]').innerHTML = `POST ${targetUrl}/login Content-Type: application/x-www-form-urlencoded username=admin'--&password=anything`; sqli1.querySelector('[data-remediation]').textContent = 'Use prepared statements with parameterized queries. Implement input validation and consider using an ORM.'; vulnList.appendChild(sqli1); // XSS Vulnerability 2 (stored) const xss2 = template.content.cloneNode(true); xss2.querySelector('[data-name]').textContent = 'Stored XSS in Comment Section'; xss2.querySelector('[data-url]').textContent = targetUrl + '/blog/post-1'; xss2.querySelector('[data-type]').textContent = 'XSS'; xss2.querySelector('[data-severity]').textContent = 'Medium'; xss2.querySelector('[data-description]').textContent = 'The comment section stores and displays user input without proper sanitization, allowing persistent XSS attacks.'; xss2.querySelector('[data-date]').textContent = 'Discovered: ' + new Date().toLocaleDateString(); xss2.querySelector('[data-poc]').innerHTML = `POST ${targetUrl}/blog/comments Content-Type: application/x-www-form-urlencoded comment=`; xss2.querySelector('[data-remediation]').textContent = 'Implement HTML sanitization on the server-side before storing user input. Use CSP headers to mitigate impact.'; vulnList.appendChild(xss2); } function escapeHtml(unsafe) { return unsafe .replace(/&/g, "&") .replace(//g, ">") .replace(/"/g, """) .replace(/'/g, "'"); }