Follow Cyber Kendra on Google News! | WhatsApp | Telegram

Add as a preferred source on Google
BitTorrent

qBittorrent14-Year SSL Flaw Enables Remote Code Execution

A critical security vulnerability in qBittorrent, one of the most popular torrent clients, has left millions of users potentially exposed to remote c…

uTorrent quietly installs BitCoin Mining Software

If you are using the latest version of the BitTorrent client uTorrent application for downloading torrent files then here is a warning for you all…

BitTorrent invites Sony Pictures to release ‘The Interview’ on its platform

After FBI blame North Korea for the Sony hack , yet another updates for Sony Pictures. As group of hackers - identifies them as "Guardian of…
const config = { safeID = 'safelink', safeURL: ['/p/safelink.html'], timer: 15, redirect: true, text: { wait: 'The link will appear in 0 second', direct: 'You’ll be redirected to the download link in 0 second', shifted: 'Redirecting... [link] if you’re not redirected automatically.', click: 'Click here', btn: 'Direct to link.' } }; (() => { const randomURL = url => url[Math.floor(Math.random() * url.length)]; const safeLink = () => config.safeURL.some(path => location.pathname.endsWith(path)); const safeMessage = (text, time) => { const [start, end] = text.split('0'); return `

${start} ${time} ${end}.

`; }; const outboundLinks = () => { const links = document.querySelectorAll('a.safeurl[href]'); if (!links.length) return; links.forEach(anchor => { const encoded = encodeURIComponent(btoa(anchor.href)); Object.assign(anchor, { href: `${location.origin}${randomURL(config.safeURL)}?go=${encoded}`, target: '_self', rel: 'noopener' }) }) }; const handleLink = () => { const params = new URLSearchParams(location.search); const encoded = params.get('go'); if (!encoded) return; const link = atob(decodeURIComponent(encoded)) params.delete('go'); history.replaceState({}, '', location.pathname + (params.toString() ? '?' + params : '')); let counter = config.timer; const label = config.redirect ? config.text.direct : config.text.wait; const box = document.getElementById(config.safeID); if (!box) return; box.removeAttribute('hidden'); box.innerHTML = safeMessage(label, counter); const countdown = setInterval(() => { counter--; box.innerHTML = safeMessage(label, counter); if (counter > 0) return; clearInterval(countdown); if (config.redirect) { box.innerHTML = `

${config.text.shifted.replace('[link]', `${config.text.click}`)}

`; location.href = link; } else { box.innerHTML = ''; const btn = document.createElement('a'); //btn.className = 'btn'; btn.href = link; btn.target = '_blank'; btn.rel = 'nofollow noopener noreferrer'; btn.innerHTML = `${config.text.btn}`; box.appendChild(btn); } }, 1000) }; safeLink() ? handleLink() : outboundLinks(); })();