// ==UserScript== // @name (Tobitool) Redirect Bypass Stealth // @namespace Tool // @version 1.0 // @description Redirect only valid redirect links (ignore honeypots) // @match *://*/* // @run-at document-start // ==/UserScript== (function () { try { if (window.top !== window.self) return; function init() { try { var url = new URL(window.location.href); if (!url.searchParams.has("tobitool")) return; var target = url.searchParams.get("tobitool"); if (!target) return; // Safe decode loop try { var prev; do { prev = target; target = decodeURIComponent(target); } while (prev !== target); } catch (e) {} if (!/^https?:\/\//i.test(target)) return; document.referrerPolicy = "no-referrer-when-downgrade"; // Create overlay var overlay = document.createElement("div"); overlay.innerHTML = `
1s
Get Link
`; document.body.appendChild(overlay); var countdownEl = document.getElementById("countdown"); var progressRing = document.getElementById("progress"); var getLinkBtn = document.getElementById("get-link-btn"); if (!countdownEl || !progressRing || !getLinkBtn) return; var counter = 1; var radius = 45; var circumference = 2 * Math.PI * radius; progressRing.style.strokeDasharray = circumference; progressRing.style.strokeDashoffset = 0; var total = counter; var interval = setInterval(function () { counter--; countdownEl.textContent = counter + "s"; var offset = circumference - (counter / total) * circumference; progressRing.style.strokeDashoffset = offset; if (counter <= 0) { clearInterval(interval); countdownEl.textContent = "Ready"; progressRing.style.strokeDashoffset = circumference; getLinkBtn.style.pointerEvents = "auto"; getLinkBtn.style.opacity = "1"; getLinkBtn.setAttribute("href", target); getLinkBtn.setAttribute("target", "_self"); getLinkBtn.setAttribute("rel", "noopener"); getLinkBtn.setAttribute("referrerpolicy", "origin"); } }, 1000); } catch (e) { console.error(e); } } // Ensure body exists (important for all browsers) if (document.body) { init(); } else { document.addEventListener("DOMContentLoaded", init); } } catch (e) { console.error(e); } })();