PR
This commit is contained in:
codebergcrimeflare 2021-03-22 00:13:37 +01:00
commit 52bfc079f5
58 changed files with 16 additions and 6801 deletions

File diff suppressed because one or more lines are too long

View File

@ -1,159 +0,0 @@
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=UTF-8">
</head>
<body>
&nbsp;<br>
<b>&#128226; <span transk="actnow"></span></b><br>
<label><input type="radio" id="ta0" name="ta" value="0"> <span transk="actt0"></span></label><br>
<label><input type="radio" id="ta1" name="ta" value="1"> <span transk="actt1"></span></label><br>
<label><input type="radio" id="ta2" name="ta" value="2"> <span transk="actt2"></span></label><br>
<label><input type="radio" id="ta4" name="ta" value="4"> <span transk="actt4"></span></label><br>
<label><input type="radio" id="ta3" name="ta" value="3"> <span transk="actt3"></span></label><br>
&nbsp;<br>
<label><input type="checkbox" id="csa1"> <span transk="csuse1"></span></label><br>
<label><input type="checkbox" id="csa2"> <span transk="csuse2"></span></label><br>
&nbsp;<br>&nbsp;<br>
<b>&#128391; <span transk="uralturl"></span></b><br>
<span transk="ururepl"></span><br>
<input type="text" id="vau" spellcheck="false" value="" placeholder="ekz. https://mia.ekzemplo.net/proxy?url=%%URL%%">
<button type="button" id="aus"> <span transk="apply"></span> </button>
&nbsp;<br>&nbsp;<br>
<b>&#128276; <span transk="notify"></span> (Esperanto)</b><br>
<label><input type="checkbox" id="nnf1"> <span transk="notif1"></span></label><br>
<label><input type="checkbox" id="nnf2"> <span transk="notif2"></span></label>
&nbsp;<br>&nbsp;<br>
<b>&#128210; <span transk="urdomco"></span></b><br>
<textarea cols="50" rows="10" id="t" wrap="off" spellcheck="false" placeholder="Cloudflare domajnoj" readonly></textarea>
<br>
<button type="button" id="exp" disabled> <span transk="export"></span> </button>
<button type="button" id="clr"> <span transk="clear"></span> </button>
&nbsp;<br>&nbsp;<br>
<b>&#127987; <span transk="urwhite"></span></b><br>
<textarea cols="50" rows="10" id="g" wrap="off" spellcheck="false" placeholder="ekzemplo.com"></textarea>
<br>
<button type="button" id="ign"> <span transk="apply"></span> </button>
&nbsp;<br>&nbsp;<br>
<b>&#128172; Internacio</b><br>
<select id="myul">
<option value="" selected> --- </option>
<option value="af">af | Afrikaans</option>
<option value="am">am | አማርኛ</option>
<option value="ar">ar | العربية</option>
<option value="az">az | Azərbaycanca</option>
<option value="be">be | Беларуская</option>
<option value="bg">bg | Български</option>
<option value="bn">bn | বাংলা</option>
<option value="bs">bs | босански</option>
<option value="ca">ca | Català</option>
<option value="cb">cb | Cebuan</option>
<option value="co">co | Corsu</option>
<option value="cs">cs | Čeština</option>
<option value="cy">cy | Cymraeg</option>
<option value="da">da | Dansk</option>
<option value="de">de | Deutsch</option>
<option value="el">el | Ελληνικά</option>
<option value="en">en | English</option>
<option value="eo">eo | Esperanto &#127942;</option>
<option value="es">es | Español</option>
<option value="et">et | Eesti</option>
<option value="eu">eu | Euskara</option>
<option value="fa">fa | فارسی</option>
<option value="fi">fi | Suomi</option>
<option value="fl">fl | Wikang Filipino</option>
<option value="fr">fr | Français</option>
<option value="fy">fy | Frisian</option>
<option value="ga">ga | Gaeilge</option>
<option value="gd">gd | Gàidhlig</option>
<option value="gl">gl | Galego</option>
<option value="gu">gu | Gujarātī</option>
<option value="ha">ha | Harshen</option>
<option value="he">he | עברית</option>
<option value="hi">hi | हिंदी</option>
<option value="hm">hm | lus Hmoob</option>
<option value="hr">hr | Hrvatski</option>
<option value="ht">ht | Kreyòl</option>
<option value="hu">hu | Magyar</option>
<option value="hw">hw | ʻŌlelo Hawaiʻi</option>
<option value="hy">hy | հայերեն</option>
<option value="id">id | Indonesia</option>
<option value="ig">ig | Asụsụ Igbo</option>
<option value="is">is | Íslenska</option>
<option value="it">it | Italiano</option>
<option value="ja">ja | 日本語</option>
<option value="jv">jv | ꦧꦱꦗꦮ</option>
<option value="ka">ka | ქართული</option>
<option value="kk">kk | Қазақша</option>
<option value="km">km | ភាសាខ្មែរ</option>
<option value="kn">kn | ಕನ್ನಡ</option>
<option value="ko">ko | 힌디어</option>
<option value="ku">ku | کوردی</option>
<option value="ky">ky | Кыргызча</option>
<option value="la">la | Latīna</option>
<option value="lb">lb | Lëtzebuergesch</option>
<option value="lo">lo | ພາສາລາວ</option>
<option value="lt">lt | Lietuvių</option>
<option value="lv">lv | Latviešu</option>
<option value="mg">mg | Malagasy</option>
<option value="mi">mi | Māori</option>
<option value="mk">mk | македонски</option>
<option value="ml">ml | മലയാളം</option>
<option value="mn">mn | монгол</option>
<option value="mr">mr | मराठी</option>
<option value="ms">ms | bahasa Melayu</option>
<option value="mt">mt | Malti</option>
<option value="my">my | Burmese</option>
<option value="ne">ne | नेपाली</option>
<option value="nl">nl | Nederlands</option>
<option value="no">no | Norsk Bokmål</option>
<option value="ny">ny | Chichewa</option>
<option value="or">or | ଓଡ଼ିଆ</option>
<option value="pa">pa | ਪੰਜਾਬੀ</option>
<option value="pl">pl | Polski</option>
<option value="ps">ps | پښتو</option>
<option value="pt">pt | Português</option>
<option value="ro">ro | Română</option>
<option value="ru">ru | Русский</option>
<option value="rw">rw | Kinyarwanda</option>
<option value="sd">sd | سنڌي‎</option>
<option value="si">si | සිංහල</option>
<option value="sk">sk | Slovenčina</option>
<option value="sl">sl | Slovenščina</option>
<option value="sm">sm | Gagana Sāmoa</option>
<option value="sn">sn | chiShona</option>
<option value="so">so | Af Soomaali</option>
<option value="sq">sq | Shqip</option>
<option value="sr">sr | Српски</option>
<option value="st">st | Sesotho</option>
<option value="su">su | Basa Sunda</option>
<option value="sv">sv | Svenska</option>
<option value="sw">sw | Kiswahili</option>
<option value="ta">ta | தமிழ்</option>
<option value="te">te | తెలుగు</option>
<option value="tg">tg | тоҷикӣ</option>
<option value="th">th | ภาษาไทย</option>
<option value="tk">tk | Türkmençe</option>
<option value="tr">tr | Türkçe</option>
<option value="tt">tt | татар теле</option>
<option value="ug">ug | ئۇيغۇرچە</option>
<option value="uk">uk | Українська</option>
<option value="ur">ur | اردو</option>
<option value="uz">uz | ózbekça</option>
<option value="vi">vi | Tiếng Việt</option>
<option value="xh">xh | isiXhosa</option>
<option value="yi">yi | אידיש</option>
<option value="yo">yo | Èdè Yorùbá</option>
<option value="zh">zh | 汉语</option>
<option value="zt">zt | 漢語</option>
<option value="zu">zu | isiZulu</option>
</select>
&nbsp;<br>&nbsp;<br>
<b>&#128218; <span transk="useflik"></span></b><br>
<ul>
<li><a href="https://sercxi.nnpaefp7pkadbxxkhz2agtbv2a4g5sgo2fbmv3i7czaua354334uqqad.onion/ss/tool_ismitm.php" target="_blank"><span transk="tsmitm"></span></a></li>
<li><a href="https://git.fuwafuwa.moe/you/stop_cloudflare" target="_blank">"The Great Cloudwall"</a></li>
</ul>
&nbsp;<br>
<script src="cg.js"></script>
</body>
</html>

View File

@ -1,108 +0,0 @@
document.addEventListener('DOMContentLoaded', () => {
chrome.runtime.sendMessage(['cf'], (r) => {
fetch('i18n/' + r[5] + '.json', {
method: 'GET'
}).then(j => j.json()).then(j => {
document.querySelectorAll('span[transk]').forEach(x => {
x.innerText = j[x.getAttribute('transk')];
});
});
document.getElementById('t').value = JSON.parse(r[0]).join("\n");
document.getElementById('g').value = JSON.parse(r[1]).join("\n");
document.getElementById('vau').value = r[3];
document.getElementById('nnf1').checked = r[4][0];
document.getElementById('nnf2').checked = r[4][1];
document.getElementById('csa1').checked = r[4][2];
document.getElementById('csa2').checked = r[4][3];
switch (r[2]) {
case 0:
document.getElementById('ta0').checked = true;
document.getElementById('ta1').checked = false;
document.getElementById('ta2').checked = false;
document.getElementById('ta3').checked = false;
document.getElementById('ta4').checked = false;
break;
case 1:
document.getElementById('ta0').checked = false;
document.getElementById('ta1').checked = true;
document.getElementById('ta2').checked = false;
document.getElementById('ta3').checked = false;
document.getElementById('ta4').checked = false;
break;
case 3:
document.getElementById('ta0').checked = false;
document.getElementById('ta1').checked = false;
document.getElementById('ta2').checked = false;
document.getElementById('ta3').checked = true;
document.getElementById('ta4').checked = false;
break;
case 4:
document.getElementById('ta0').checked = false;
document.getElementById('ta1').checked = false;
document.getElementById('ta2').checked = false;
document.getElementById('ta3').checked = false;
document.getElementById('ta4').checked = true;
break;
default:
document.getElementById('ta0').checked = false;
document.getElementById('ta1').checked = false;
document.getElementById('ta2').checked = true;
document.getElementById('ta3').checked = false;
document.getElementById('ta4').checked = false;
break;
}
});
document.getElementById('aus').addEventListener('click', function () {
chrome.runtime.sendMessage(['au', document.getElementById('vau').value]);
});
document.getElementById('clr').addEventListener('click', () => {
chrome.runtime.sendMessage(['dy']);
document.getElementById('t').value = '';
});
document.getElementById('nnf1').addEventListener('click', function () {
chrome.runtime.sendMessage(['nnf', '1', (this.checked ? true : false)]);
});
document.getElementById('nnf2').addEventListener('click', function () {
chrome.runtime.sendMessage(['nnf', '2', (this.checked ? true : false)]);
});
document.getElementById('csa1').addEventListener('click', function () {
chrome.runtime.sendMessage(['csa', '1', (this.checked ? true : false)]);
});
document.getElementById('csa2').addEventListener('click', function () {
chrome.runtime.sendMessage(['csa', '2', (this.checked ? true : false)]);
});
document.getElementById('ta0').addEventListener('click', function () {
if (this.checked) {
chrome.runtime.sendMessage(['ta', '0']);
}
});
document.getElementById('ta1').addEventListener('click', function () {
if (this.checked) {
chrome.runtime.sendMessage(['ta', '1']);
}
});
document.getElementById('ta2').addEventListener('click', function () {
if (this.checked) {
chrome.runtime.sendMessage(['ta', '2']);
}
});
document.getElementById('ta3').addEventListener('click', function () {
if (this.checked) {
chrome.runtime.sendMessage(['ta', '3']);
}
});
document.getElementById('ta4').addEventListener('click', function () {
if (this.checked) {
chrome.runtime.sendMessage(['ta', '4']);
}
});
document.getElementById('ign').addEventListener('click', function () {
chrome.runtime.sendMessage(['ig', document.getElementById('g').value.split("\n")]);
});
document.getElementById('myul').addEventListener('change', () => {
if (document.getElementById('myul').value != '') {
chrome.runtime.sendMessage(['ul', document.getElementById('myul').value]);
location.reload(true);
}
});
});

View File

@ -1,49 +0,0 @@
if (document.body && !location.hostname.endsWith('.onion')) {
chrome.runtime.onMessage.addListener((a, b, c) => {
if (a[0] == location.hostname && a[1]) {
if (a[2]) {
let _tt = document.title;
function codeBy_Sw_updateBorder() {
if (!document.title.startsWith('[!!MITM')) {
document.title = '[!!MITM!!]' + _tt;
}
document.body.style = 'border:6px dashed #' + ['e74c3c', '9b59b6', '3498db', '17a589', '196f3d', 'f4d03f', 'f39c12', 'd35400'][Math.floor(Math.random() * 8)] + ' !important';
setTimeout(codeBy_Sw_updateBorder, 6500);
}
codeBy_Sw_updateBorder();
}
if (a[3]) {
function codeBy_smege1001_decodeEmail(hash) {
let decoded = '',
hashArray = [];
for (let hAIndex = 0; hAIndex < hash.length; hAIndex += 2) {
hashArray.push(parseInt(hash.substring(hAIndex, hAIndex + 2), 16));
}
let key = hashArray[0];
for (let index = 1; index < hashArray.length; index++) {
decoded += String.fromCharCode(hashArray[index] ^ key);
}
return decoded;
}
document.querySelectorAll('.__cf_email__[data-cfemail]:not(a)').forEach(a => {
let aV = a.dataset.cfemail;
if (/^([a-f0-9]{4,})$/.test(aV)) {
a.dataset.cfemail = '';
a.innerText = codeBy_smege1001_decodeEmail(aV);
}
});
document.querySelectorAll("a.__cf_email__[data-cfemail]").forEach(a => {
let aV = a.dataset.cfemail;
if (/^([a-f0-9]{4,})$/.test(aV)) {
a.dataset.cfemail = '';
a.innerText = codeBy_smege1001_decodeEmail(aV);
a.href = 'mailto:' + a.innerText;
}
});
}
}
c(true);
return;
});
chrome.runtime.sendMessage(['cs', location.hostname]);
}

View File

@ -1,48 +0,0 @@
{
"manifest_version": 2,
"name": "Bloku Cloudflaron MITM-Atakon",
"version": "1.0.5.1",
"minimum_chrome_version": "78",
"homepage_url": "https://sercxi.nnpaefp7pkadbxxkhz2agtbv2a4g5sgo2fbmv3i7czaua354334uqqad.onion/",
"author": "Ss",
"incognito": "split",
"permissions": [
"<all_urls>",
"activeTab",
"tabs",
"webRequest",
"webRequestBlocking",
"webNavigation",
"notifications",
"storage",
"unlimitedStorage"
],
"icons": {
"72": "icons/72.png"
},
"background": {
"scripts": [
"cf.js"
]
},
"options_ui": {
"page": "cg.html"
},
"browser_action": {
"default_icon": {
"32": "icons/cf_0.png"
}
},
"content_scripts": [
{
"matches": [
"http://*/*",
"https://*/*"
],
"js": [
"cs.js"
],
"run_at": "document_end"
}
]
}

View File

@ -5,12 +5,10 @@ Versio: _1.0.5.1_
[//]: # (do not edit me; end)
- [Pli informo / Elŝuto](../../subfiles/about.bcma.md)
- [Pli informo / Elŝuto](../../../subfiles/about.bcma.md)
- Malgarantio: Ĉi tio NE estas spegulo de suprenflua deponejo. Sinkronigado eble prokrastas.
- &#8617; [Firefox](../bcmaFX)
-----
- [More information / Download](../../subfiles/about.bcma.md)
- [More information / Download](../../../subfiles/about.bcma.md)
- Disclaimer: This is NOT a mirror of upstream repository. Synchronization may be delayed.
- &#8617; [Firefox](../bcmaFX)

View File

@ -5,12 +5,10 @@ Versio: _1.0.4.1_
[//]: # (do not edit me; end)
- [Pli informo / Elŝuto](../../subfiles/about.isat.md)
- [Pli informo / Elŝuto](../../../subfiles/about.isat.md)
- Malgarantio: Ĉi tio NE estas spegulo de suprenflua deponejo. Sinkronigado eble prokrastas.
- &#8617; [Firefox](../isattlinkFX)
-----
- [More information / Download](../../subfiles/about.isat.md)
- [More information / Download](../../../subfiles/about.isat.md)
- Disclaimer: This is NOT a mirror of upstream repository. Synchronization may be delayed.
- &#8617; [Firefox](../isattlinkFX)

View File

@ -5,12 +5,10 @@ Versio: _1.0.23.1_
[//]: # (do not edit me; end)
- [Pli informo / Elŝuto](../../subfiles/about.ismm.md)
- [Pli informo / Elŝuto](../../../subfiles/about.ismm.md)
- Malgarantio: Ĉi tio NE estas spegulo de suprenflua deponejo. Sinkronigado eble prokrastas.
- &#8617; [Firefox](../ismitmlinkFX)
-----
- [More information / Download](../../subfiles/about.ismm.md)
- [More information / Download](../../../subfiles/about.ismm.md)
- Disclaimer: This is NOT a mirror of upstream repository. Synchronization may be delayed.
- &#8617; [Firefox](../ismitmlinkFX)

View File

@ -5,12 +5,10 @@ Versio: _1.0.5.1_
[//]: # (do not edit me; end)
- [Pli informo / Elŝuto](../../subfiles/about.bcma.md)
- [Pli informo / Elŝuto](../../../subfiles/about.urjm.md)
- Malgarantio: Ĉi tio NE estas spegulo de suprenflua deponejo. Sinkronigado eble prokrastas.
- &#8617; [Chromium](../bcmaCR)
-----
- [More information / Download](../../subfiles/about.bcma.md)
- [More information / Download](../../../subfiles/about.urjm.md)
- Disclaimer: This is NOT a mirror of upstream repository. Synchronization may be delayed.
- &#8617; [Chromium](../bcmaCR)

View File

@ -1,277 +0,0 @@
let localUse = false,
localDB = [],
timr, memcache = {},
forcePurge = false,
apiurl = 'https://api.nnpaefp7pkadbxxkhz2agtbv2a4g5sgo2fbmv3i7czaua354334uqqad.onion/_/is_antitor.php';
function is_hostile(f) {
if (localUse) {
return new Promise((g, b) => {
g(localDB.includes(f) ? true : false);
});
}
return new Promise((g, b) => {
fetch(apiurl, {
method: 'POST',
mode: 'cors',
headers: {
'Content-Type': 'application/x-www-form-urlencoded'
},
body: 'f=' + f
}).then(r => r.json()).then(r => {
if (r[0]) {
g(r[1]);
} else {
b();
}
}).catch(b);
});
}
function i_know_you(f) {
if (!/^([a-z0-9_.-]{1,255})\.([a-z]{2,80})$/.test(f)) {
return new Promise((g, b) => {
g(200);
});
}
let m;
if (memcache[f] != undefined) {
m = memcache[f];
return new Promise((g, b) => {
g(m);
});
}
return new Promise((g, b) => {
chrome.storage.local.get([f], (ff) => {
if (ff[f]) {
if (ff[f] == 'y') {
memcache[f] = 1;
g(1);
} else {
memcache[f] = -1;
g(-1);
}
} else {
g(0);
}
});
});
}
function forget_cache() {
chrome.storage.local.get(['ign1', 'obs', 'dbg', 'alt', 'cep', 'mul', 'opd', 'ldb'], g => {
chrome.storage.local.clear();
memcache = {};
chrome.storage.local.set({
'ign1': (g.ign1 == 'y' ? 'y' : 'n')
});
chrome.storage.local.set({
'obs': (g.obs == 'y' ? 'y' : 'n')
});
chrome.storage.local.set({
'dbg': (g.dbg == 'y' ? 'y' : 'n')
});
chrome.storage.local.set({
'alt': (g.alt == 'y' ? 'y' : 'n')
});
chrome.storage.local.set({
'cep': (g.cep != undefined ? g.cep : '2')
});
chrome.storage.local.set({
'mul': (g.mul != undefined ? g.mul : 'eo')
});
chrome.storage.local.set({
'opd': (g.opd == 'n' ? 'n' : 'y')
});
chrome.storage.local.set({
'ldb': (g.ldb != undefined ? g.ldb : '[]')
});
chrome.storage.local.set({
'lastU': Math.round((new Date()).getTime() / 1000)
});
chrome.storage.local.set({
'lastV': (chrome.runtime.getManifest()).version
});
});
clearTimeout(timr);
timr = setTimeout(function () {
forget_cache();
}, 1814400000);
}
chrome.storage.local.get(['lastU', 'lastV', 'ldb', 'opd', 'cep'], g => {
localUse = (g.opd == 'n') ? true : false;
localDB = JSON.parse(g.ldb || '[]');
switch (g.cep) {
case '1':
apiurl = 'https://api.sercxi.eu.org/_/is_antitor.php';
break;
case '2':
apiurl = 'http://avrynpc2q7pknqa3ucf5tvjcwad5nxvxgwnzvl2b6dx6uo4f7nc7zzqd.onion/a/is_at.php';
break;
default:
apiurl = 'https://api.nnpaefp7pkadbxxkhz2agtbv2a4g5sgo2fbmv3i7czaua354334uqqad.onion/_/is_antitor.php';
break;
}
if (g.lastU) {
if (Math.abs(Math.round((new Date()).getTime() / 1000) - g.lastU) > 1814400) {
chrome.storage.local.get(['ign1', 'obs', 'dbg', 'alt', 'cep', 'mul', 'opd', 'ldb'], g => {
chrome.storage.local.clear();
memcache = {};
chrome.storage.local.set({
'ign1': (g.ign1 == 'y' ? 'y' : 'n')
});
chrome.storage.local.set({
'obs': (g.obs == 'y' ? 'y' : 'n')
});
chrome.storage.local.set({
'dbg': (g.dbg == 'y' ? 'y' : 'n')
});
chrome.storage.local.set({
'alt': (g.alt == 'y' ? 'y' : 'n')
});
chrome.storage.local.set({
'cep': (g.cep != undefined ? g.cep : '2')
});
chrome.storage.local.set({
'mul': (g.mul != undefined ? g.mul : 'eo')
});
chrome.storage.local.set({
'opd': (g.opd == 'n' ? 'n' : 'y')
});
chrome.storage.local.set({
'ldb': (g.ldb != undefined ? g.ldb : '[]')
});
chrome.storage.local.set({
'lastU': Math.round((new Date()).getTime() / 1000)
});
});
}
} else {
chrome.storage.local.set({
'lastU': Math.round((new Date()).getTime() / 1000)
});
}
let nowVer = (chrome.runtime.getManifest()).version;
if (g.lastV != nowVer || forcePurge) {
chrome.storage.local.get(['ign1', 'obs', 'dbg', 'alt', 'cep', 'mul', 'opd', 'ldb'], g => {
chrome.storage.local.clear();
memcache = {};
chrome.storage.local.set({
'ign1': (g.ign1 == 'y' ? 'y' : 'n')
});
chrome.storage.local.set({
'obs': (g.obs == 'y' ? 'y' : 'n')
});
chrome.storage.local.set({
'dbg': (g.dbg == 'y' ? 'y' : 'n')
});
chrome.storage.local.set({
'alt': (g.alt == 'y' ? 'y' : 'n')
});
chrome.storage.local.set({
'cep': (g.cep != undefined ? g.cep : '2')
});
chrome.storage.local.set({
'mul': (g.mul != undefined ? g.mul : 'eo')
});
chrome.storage.local.set({
'opd': (g.opd == 'n' ? 'n' : 'y')
});
chrome.storage.local.set({
'ldb': (g.ldb != undefined ? g.ldb : '[]')
});
chrome.storage.local.set({
'lastU': Math.round((new Date()).getTime() / 1000)
});
chrome.storage.local.set({
'lastV': (chrome.runtime.getManifest()).version
});
});
}
timr = setTimeout(function () {
forget_cache();
}, 1814400000);
});
chrome.runtime.onMessage.addListener((requests, sender, sendResponse) => {
if (requests) {
if (requests === 'clear') {
forget_cache();
return;
}
if (requests.indexOf('dbmode,') === 0) {
switch (requests) {
case 'dbmode,s1':
chrome.storage.local.set({
'opd': 'y'
});
localUse = false;
break;
case 'dbmode,s0':
chrome.storage.local.set({
'opd': 'n'
});
localUse = true;
break;
case 'dbmode,cl':
chrome.storage.local.set({
'ldb': '[]'
});
localDB = [];
break;
case 'dbmode,rl':
chrome.storage.local.get(['ldb'], (g) => {
localDB = JSON.parse(g.ldb || '[]');
});
break;
}
return;
}
if (requests.indexOf('urltype,') === 0) {
switch (requests) {
case 'urltype,0':
chrome.storage.local.set({
'cep': '0'
});
apiurl = 'https://api.nnpaefp7pkadbxxkhz2agtbv2a4g5sgo2fbmv3i7czaua354334uqqad.onion/_/is_antitor.php';
break;
case 'urltype,1':
chrome.storage.local.set({
'cep': '1'
});
apiurl = 'https://api.sercxi.eu.org/_/is_antitor.php';
break;
case 'urltype,2':
chrome.storage.local.set({
'cep': '2'
});
apiurl = 'http://avrynpc2q7pknqa3ucf5tvjcwad5nxvxgwnzvl2b6dx6uo4f7nc7zzqd.onion/a/is_at.php';
break;
}
return;
}
requests.forEach(request => {
i_know_you(request).then((r) => {
if (r == 1 || r == -1) {
chrome.tabs.sendMessage(sender.tab.id, [request, ((r == 1) ? true : false)]);
}
if (r == 0) {
is_hostile(request).then((a) => {
if (a) {
chrome.storage.local.set({
[request]: 'y'
});
} else {
chrome.storage.local.set({
[request]: 'n'
});
}
if (Object.keys(memcache).length > 650) {
memcache = {};
}
chrome.tabs.sendMessage(sender.tab.id, [request, a]);
}, () => {
chrome.tabs.sendMessage(sender.tab.id, [request, false]);
});
}
}, () => {});
});
}
return;
});

View File

@ -1,145 +0,0 @@
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=UTF-8">
</head>
<body style="display:none">
&nbsp;<br>
<label><input type="checkbox" id="ign1"> <span tek="tlign1"></span></label><br>
<label><input type="checkbox" id="obs"> <span tek="tlobs"></span></label><br>
<label><input type="checkbox" id="alt"> <span tek="tlalt"></span></label><br>
<label><input type="checkbox" id="dbg" disabled> <span tek="tldbg"></span></label><br>
<br>&nbsp;<br>
<span tek="opmode"></span><br>
<label><input type="radio" name="opm" id="opon"> <span tek="opmon"></span></label> [ &rarr; <a href="https://sercxi.nnpaefp7pkadbxxkhz2agtbv2a4g5sgo2fbmv3i7czaua354334uqqad.onion/#!op=info/api" target="_blank">Ss API</a> ]<br>
&nbsp;&nbsp;&nbsp;&nbsp;<label><input type="radio" name="ut" id="ut0"> api.~.onion</label><br>
&nbsp;&nbsp;&nbsp;&nbsp;<label><input type="radio" name="ut" id="ut1"> api.sercxi.eu.org</label><br>
&nbsp;&nbsp;&nbsp;&nbsp;<label><input type="radio" name="ut" id="ut2"> karma.onion</label><br>
<label><input type="radio" name="opm" id="opoff"> <span tek="opmoff"></span></label> [ &rarr; <a href="./localdb.html" target="_blank"><span tek="opmode"></span></a> ]<br>
<br>&nbsp;<br>
&#128172;
<select id="myul">
<option value="" selected> --- </option>
<option value="af">af | Afrikaans</option>
<option value="am">am | አማርኛ</option>
<option value="ar">ar | العربية</option>
<option value="az">az | Azərbaycanca</option>
<option value="be">be | Беларуская</option>
<option value="bg">bg | Български</option>
<option value="bn">bn | বাংলা</option>
<option value="bs">bs | босански</option>
<option value="ca">ca | Català</option>
<option value="cb">cb | Cebuan</option>
<option value="co">co | Corsu</option>
<option value="cs">cs | Čeština</option>
<option value="cy">cy | Cymraeg</option>
<option value="da">da | Dansk</option>
<option value="de">de | Deutsch</option>
<option value="el">el | Ελληνικά</option>
<option value="en">en | English</option>
<option value="eo">eo | Esperanto &#127942;</option>
<option value="es">es | Español</option>
<option value="et">et | Eesti</option>
<option value="eu">eu | Euskara</option>
<option value="fa">fa | فارسی</option>
<option value="fi">fi | Suomi</option>
<option value="fl">fl | Wikang Filipino</option>
<option value="fr">fr | Français</option>
<option value="fy">fy | Frisian</option>
<option value="ga">ga | Gaeilge</option>
<option value="gd">gd | Gàidhlig</option>
<option value="gl">gl | Galego</option>
<option value="gu">gu | Gujarātī</option>
<option value="ha">ha | Harshen</option>
<option value="he">he | עברית</option>
<option value="hi">hi | हिंदी</option>
<option value="hm">hm | lus Hmoob</option>
<option value="hr">hr | Hrvatski</option>
<option value="ht">ht | Kreyòl</option>
<option value="hu">hu | Magyar</option>
<option value="hw">hw | ʻŌlelo Hawaiʻi</option>
<option value="hy">hy | հայերեն</option>
<option value="id">id | Indonesia</option>
<option value="ig">ig | Asụsụ Igbo</option>
<option value="is">is | Íslenska</option>
<option value="it">it | Italiano</option>
<option value="ja">ja | 日本語</option>
<option value="jv">jv | ꦧꦱꦗꦮ</option>
<option value="ka">ka | ქართული</option>
<option value="kk">kk | Қазақша</option>
<option value="km">km | ភាសាខ្មែរ</option>
<option value="kn">kn | ಕನ್ನಡ</option>
<option value="ko">ko | 힌디어</option>
<option value="ku">ku | کوردی</option>
<option value="ky">ky | Кыргызча</option>
<option value="la">la | Latīna</option>
<option value="lb">lb | Lëtzebuergesch</option>
<option value="lo">lo | ພາສາລາວ</option>
<option value="lt">lt | Lietuvių</option>
<option value="lv">lv | Latviešu</option>
<option value="mg">mg | Malagasy</option>
<option value="mi">mi | Māori</option>
<option value="mk">mk | македонски</option>
<option value="ml">ml | മലയാളം</option>
<option value="mn">mn | монгол</option>
<option value="mr">mr | मराठी</option>
<option value="ms">ms | bahasa Melayu</option>
<option value="mt">mt | Malti</option>
<option value="my">my | Burmese</option>
<option value="ne">ne | नेपाली</option>
<option value="nl">nl | Nederlands</option>
<option value="no">no | Norsk Bokmål</option>
<option value="ny">ny | Chichewa</option>
<option value="or">or | ଓଡ଼ିଆ</option>
<option value="pa">pa | ਪੰਜਾਬੀ</option>
<option value="pl">pl | Polski</option>
<option value="ps">ps | پښتو</option>
<option value="pt">pt | Português</option>
<option value="ro">ro | Română</option>
<option value="ru">ru | Русский</option>
<option value="rw">rw | Kinyarwanda</option>
<option value="sd">sd | سنڌي‎</option>
<option value="si">si | සිංහල</option>
<option value="sk">sk | Slovenčina</option>
<option value="sl">sl | Slovenščina</option>
<option value="sm">sm | Gagana Sāmoa</option>
<option value="sn">sn | chiShona</option>
<option value="so">so | Af Soomaali</option>
<option value="sq">sq | Shqip</option>
<option value="sr">sr | Српски</option>
<option value="st">st | Sesotho</option>
<option value="su">su | Basa Sunda</option>
<option value="sv">sv | Svenska</option>
<option value="sw">sw | Kiswahili</option>
<option value="ta">ta | தமிழ்</option>
<option value="te">te | తెలుగు</option>
<option value="tg">tg | тоҷикӣ</option>
<option value="th">th | ภาษาไทย</option>
<option value="tk">tk | Türkmençe</option>
<option value="tr">tr | Türkçe</option>
<option value="tt">tt | татар теле</option>
<option value="ug">ug | ئۇيغۇرچە</option>
<option value="uk">uk | Українська</option>
<option value="ur">ur | اردو</option>
<option value="uz">uz | ózbekça</option>
<option value="vi">vi | Tiếng Việt</option>
<option value="xh">xh | isiXhosa</option>
<option value="yi">yi | אידיש</option>
<option value="yo">yo | Èdè Yorùbá</option>
<option value="zh">zh | 汉语</option>
<option value="zt">zt | 漢語</option>
<option value="zu">zu | isiZulu</option>
</select>
<br>&nbsp;<br>&nbsp;<br>
<span tek="aboutcache"></span><br>
<span id="smsa"><button type="button" id="sms"> <span tek="statsshow"></span> </button></span>
<span id="smsb" style="display:none">
&nbsp;<br>
<span tek="hostile"></span>: <span id="viry">?</span><br>
<span tek="neutral"></span>: <span id="virn">?</span><br>
<span tek="total"></span>: <span id="viro">?</span><br>
&nbsp;<br>
<button type="button" id="crs"> <span tek="statsclear"></span> </button>
</span>
<br><br><script src="cg.js"></script>
</body>
</html>

View File

@ -1,122 +0,0 @@
document.addEventListener('DOMContentLoaded', () => {
chrome.storage.local.get(['ign1', 'obs', 'dbg', 'alt', 'mul', 'opd', 'cep'], g => {
document.getElementById('ign1').checked = (g.ign1 == 'y') ? true : false;
document.getElementById('obs').checked = (g.obs == 'y') ? true : false;
document.getElementById('alt').checked = (g.alt == 'y') ? true : false;
document.getElementById('opon').checked = (g.opd != 'n') ? true : false;
document.getElementById('opoff').checked = (g.opd == 'n') ? true : false;
switch (g.cep) {
case '1':
document.getElementById('ut0').checked = false;
document.getElementById('ut1').checked = true;
document.getElementById('ut2').checked = false;
break;
case '2':
document.getElementById('ut0').checked = false;
document.getElementById('ut1').checked = false;
document.getElementById('ut2').checked = true;
break;
default:
document.getElementById('ut0').checked = true;
document.getElementById('ut1').checked = false;
document.getElementById('ut2').checked = false;
break;
}
let ul = g.mul || 'eo';
fetch('i18n/' + ul + '.json', {
method: 'GET'
}).then(j => j.json()).then(j => {
document.querySelectorAll('span[tek]').forEach(x => {
x.innerText = j[x.getAttribute('tek')];
});
});
document.body.style.display = 'block';
});
});
document.getElementById('myul').addEventListener('change', () => {
let xul = document.getElementById('myul').value;
if (xul.length == 2) {
chrome.storage.local.set({
'mul': xul
});
location.reload(true);
}
});
document.getElementById('ign1').addEventListener('click', () => {
chrome.storage.local.set({
'ign1': (document.getElementById('ign1').checked ? 'y' : 'n')
});
});
document.getElementById('obs').addEventListener('click', () => {
chrome.storage.local.set({
'obs': (document.getElementById('obs').checked ? 'y' : 'n')
});
});
document.getElementById('alt').addEventListener('click', () => {
chrome.storage.local.set({
'alt': (document.getElementById('alt').checked ? 'y' : 'n')
});
});
document.getElementById('opon').addEventListener('click', () => {
chrome.runtime.sendMessage('dbmode,s1', () => {
location.reload();
});
});
document.getElementById('opoff').addEventListener('click', () => {
chrome.runtime.sendMessage('dbmode,s0', () => {
location.reload();
});
});
document.getElementById('crs').addEventListener('click', () => {
chrome.runtime.sendMessage('clear', () => {
location.reload();
});
});
document.getElementById('ut0').addEventListener('click', () => {
chrome.runtime.sendMessage('urltype,0', () => {
location.reload();
});
});
document.getElementById('ut1').addEventListener('click', () => {
chrome.runtime.sendMessage('urltype,1', () => {
location.reload();
});
});
document.getElementById('ut2').addEventListener('click', () => {
chrome.runtime.sendMessage('urltype,2', () => {
location.reload();
});
});
document.getElementById('sms').addEventListener('click', () => {
document.getElementById('smsa').style.display = 'none';
chrome.storage.local.get(null, g => {
let iY = 0,
iN = 0,
iT, tmp, akd = [];
Object.keys(g).forEach(a => {
if (!['ign1', 'obs', 'dbg', 'alt', 'lastU', 'lastV', 'cep', 'mul', 'opd', 'ldb'].includes(a) && (g[a] == 'y' || g[a] == 'n')) {
if (!akd.includes(a)) {
akd.push(a);
if (g[a] == 'y') {
iY++;
} else {
iN++;
}
}
}
});
iT = iY + iN;
if (iT > 0) {
tmp = (iY * 100 / iT).toFixed(1);
document.getElementById('viry').innerText = iY + ' (' + tmp + '%)';
tmp = (iN * 100 / iT).toFixed(1);
document.getElementById('virn').innerText = iN + ' (' + tmp + '%)';
document.getElementById('viro').innerText = (iY + iN);
} else {
document.getElementById('viry').innerText = 0;
document.getElementById('virn').innerText = 0;
document.getElementById('viro').innerText = 0;
}
document.getElementById('smsb').style.display = 'inline';
});
});

File diff suppressed because one or more lines are too long

View File

@ -1,67 +0,0 @@
let irun = false;
document.addEventListener('DOMContentLoaded', () => {
chrome.storage.local.get(['mul'], g => {
let ul = g.mul || 'eo';
fetch('i18n/' + ul + '.json', {
method: 'GET'
}).then(j => j.json()).then(j => {
document.querySelectorAll('span[tek]').forEach(x => {
x.innerText = j[x.getAttribute('tek')];
});
document.body.style.display = 'block';
});
});
});
document.getElementById('f').addEventListener('change', e => {
let ff = e.target.files[0];
if (ff) {
let r = new FileReader();
r.addEventListener('load', e => {
if (ff.size > 4) {
let g = e.target.result.replace(/(?:\r\n|\r|\n)/g, "\n").split("\n");
if (g.length > 0) {
chrome.storage.local.get(['ldb'], gs => {
irun = true;
let cnt0, cnt1 = 0,
gc = 1,
db = JSON.parse(gs.ldb || '[]');
cnt0 = db.length;
document.getElementById('pbr').max = g.length;
g.forEach(x => {
document.getElementById('pbr').value = gc;
gc++;
if (/^([0-9a-z.-]{4,400})\.([a-z]{2,40})$/.test(x) && !db.includes(x)) {
db.push(x);
}
});
g = null;
cnt1 = db.length;
if (cnt1 != cnt0) {
chrome.storage.local.set({
'ldb': JSON.stringify(db)
});
}
chrome.runtime.sendMessage('dbmode,rl', () => {
alert(document.querySelector('span[tek=opxdone]').innerText + "\n\n" + cnt0 + " -> " + cnt1);
location.reload();
});
});
}
}
});
r.readAsText(ff);
}
});
document.getElementById('ldb_i').addEventListener('click', () => {
if (!irun) {
document.getElementById('f').click();
}
});
document.getElementById('ldb_c').addEventListener('click', () => {
if (!irun) {
chrome.runtime.sendMessage('dbmode,cl', () => {
alert(document.querySelector('span[tek=opxdone]').innerText);
location.reload();
});
}
});

View File

@ -1,37 +0,0 @@
{
"manifest_version": 2,
"name": "Ĉu ĉi tiuj ligoj blokos Tor-uzanton?",
"version": "1.0.4.1",
"minimum_chrome_version": "78",
"homepage_url": "https://sercxi.nnpaefp7pkadbxxkhz2agtbv2a4g5sgo2fbmv3i7czaua354334uqqad.onion/",
"author": "Ss",
"incognito": "split",
"permissions": [
"storage",
"unlimitedStorage"
],
"icons": {
"72": "icons/72.png"
},
"background": {
"scripts": [
"bg.js"
]
},
"options_ui": {
"chrome_style": false,
"page": "cfg.html"
},
"content_scripts": [
{
"matches": [
"http://*/*",
"https://*/*"
],
"js": [
"cs.js"
],
"run_at": "document_end"
}
]
}

View File

@ -1,16 +0,0 @@
[//]: # (do not edit me; start)
Versio: _1.0.4.1_
[//]: # (do not edit me; end)
- [Pli informo / Elŝuto](../../subfiles/about.isat.md)
- Malgarantio: Ĉi tio NE estas spegulo de suprenflua deponejo. Sinkronigado eble prokrastas.
- &#8617; [Chromium](../isattlinkCR)
-----
- [More information / Download](../../subfiles/about.isat.md)
- Disclaimer: This is NOT a mirror of upstream repository. Synchronization may be delayed.
- &#8617; [Chromium](../isattlinkCR)

File diff suppressed because one or more lines are too long

View File

@ -1,147 +0,0 @@
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=UTF-8">
</head>
<body style="display:none">
&nbsp;<br>
<label><input type="checkbox" id="ign1"> <span tek="tlign1"></span></label><br>
<label><input type="checkbox" id="ign2"> <span tek="tlign2"></span></label><br>
<label><input type="checkbox" id="obs"> <span tek="tlobs"></span></label><br>
<label><input type="checkbox" id="alt"> <span tek="tlalt"></span></label><br>
<label><input type="checkbox" id="dbg" disabled> <span tek="tldbg"></span></label><br>
<br>&nbsp;<br>
<span tek="opmode"></span><br>
<label><input type="radio" name="opm" id="opon"> <span tek="opmon"></span></label> [ &rarr; <a href="https://sercxi.nnpaefp7pkadbxxkhz2agtbv2a4g5sgo2fbmv3i7czaua354334uqqad.onion/#!op=info/api" target="_blank">Ss API</a> ]<br>
&nbsp;&nbsp;&nbsp;&nbsp;<label><input type="radio" name="ut" id="ut0"> api.~.onion</label><br>
&nbsp;&nbsp;&nbsp;&nbsp;<label><input type="radio" name="ut" id="ut1"> api.sercxi.eu.org</label><br>
&nbsp;&nbsp;&nbsp;&nbsp;<label><input type="radio" name="ut" id="ut2"> karma.onion</label><br>
<label><input type="radio" name="opm" id="opoff"> <span tek="opmoff"></span></label> [ &rarr; <a href="./localdb.html" target="_blank"><span tek="opmode"></span></a> ]<br>
<label><input type="radio" name="opm" id="opol"> <span tek="opmoff"></span></label> (<span tek="opmlrn"></span>)<br>
<br>&nbsp;<br>
&#128172;
<select id="myul">
<option value="" selected> --- </option>
<option value="af">af | Afrikaans</option>
<option value="am">am | አማርኛ</option>
<option value="ar">ar | العربية</option>
<option value="az">az | Azərbaycanca</option>
<option value="be">be | Беларуская</option>
<option value="bg">bg | Български</option>
<option value="bn">bn | বাংলা</option>
<option value="bs">bs | босански</option>
<option value="ca">ca | Català</option>
<option value="cb">cb | Cebuan</option>
<option value="co">co | Corsu</option>
<option value="cs">cs | Čeština</option>
<option value="cy">cy | Cymraeg</option>
<option value="da">da | Dansk</option>
<option value="de">de | Deutsch</option>
<option value="el">el | Ελληνικά</option>
<option value="en">en | English</option>
<option value="eo">eo | Esperanto &#127942;</option>
<option value="es">es | Español</option>
<option value="et">et | Eesti</option>
<option value="eu">eu | Euskara</option>
<option value="fa">fa | فارسی</option>
<option value="fi">fi | Suomi</option>
<option value="fl">fl | Wikang Filipino</option>
<option value="fr">fr | Français</option>
<option value="fy">fy | Frisian</option>
<option value="ga">ga | Gaeilge</option>
<option value="gd">gd | Gàidhlig</option>
<option value="gl">gl | Galego</option>
<option value="gu">gu | Gujarātī</option>
<option value="ha">ha | Harshen</option>
<option value="he">he | עברית</option>
<option value="hi">hi | हिंदी</option>
<option value="hm">hm | lus Hmoob</option>
<option value="hr">hr | Hrvatski</option>
<option value="ht">ht | Kreyòl</option>
<option value="hu">hu | Magyar</option>
<option value="hw">hw | ʻŌlelo Hawaiʻi</option>
<option value="hy">hy | հայերեն</option>
<option value="id">id | Indonesia</option>
<option value="ig">ig | Asụsụ Igbo</option>
<option value="is">is | Íslenska</option>
<option value="it">it | Italiano</option>
<option value="ja">ja | 日本語</option>
<option value="jv">jv | ꦧꦱꦗꦮ</option>
<option value="ka">ka | ქართული</option>
<option value="kk">kk | Қазақша</option>
<option value="km">km | ភាសាខ្មែរ</option>
<option value="kn">kn | ಕನ್ನಡ</option>
<option value="ko">ko | 힌디어</option>
<option value="ku">ku | کوردی</option>
<option value="ky">ky | Кыргызча</option>
<option value="la">la | Latīna</option>
<option value="lb">lb | Lëtzebuergesch</option>
<option value="lo">lo | ພາສາລາວ</option>
<option value="lt">lt | Lietuvių</option>
<option value="lv">lv | Latviešu</option>
<option value="mg">mg | Malagasy</option>
<option value="mi">mi | Māori</option>
<option value="mk">mk | македонски</option>
<option value="ml">ml | മലയാളം</option>
<option value="mn">mn | монгол</option>
<option value="mr">mr | मराठी</option>
<option value="ms">ms | bahasa Melayu</option>
<option value="mt">mt | Malti</option>
<option value="my">my | Burmese</option>
<option value="ne">ne | नेपाली</option>
<option value="nl">nl | Nederlands</option>
<option value="no">no | Norsk Bokmål</option>
<option value="ny">ny | Chichewa</option>
<option value="or">or | ଓଡ଼ିଆ</option>
<option value="pa">pa | ਪੰਜਾਬੀ</option>
<option value="pl">pl | Polski</option>
<option value="ps">ps | پښتو</option>
<option value="pt">pt | Português</option>
<option value="ro">ro | Română</option>
<option value="ru">ru | Русский</option>
<option value="rw">rw | Kinyarwanda</option>
<option value="sd">sd | سنڌي‎</option>
<option value="si">si | සිංහල</option>
<option value="sk">sk | Slovenčina</option>
<option value="sl">sl | Slovenščina</option>
<option value="sm">sm | Gagana Sāmoa</option>
<option value="sn">sn | chiShona</option>
<option value="so">so | Af Soomaali</option>
<option value="sq">sq | Shqip</option>
<option value="sr">sr | Српски</option>
<option value="st">st | Sesotho</option>
<option value="su">su | Basa Sunda</option>
<option value="sv">sv | Svenska</option>
<option value="sw">sw | Kiswahili</option>
<option value="ta">ta | தமிழ்</option>
<option value="te">te | తెలుగు</option>
<option value="tg">tg | тоҷикӣ</option>
<option value="th">th | ภาษาไทย</option>
<option value="tk">tk | Türkmençe</option>
<option value="tr">tr | Türkçe</option>
<option value="tt">tt | татар теле</option>
<option value="ug">ug | ئۇيغۇرچە</option>
<option value="uk">uk | Українська</option>
<option value="ur">ur | اردو</option>
<option value="uz">uz | ózbekça</option>
<option value="vi">vi | Tiếng Việt</option>
<option value="xh">xh | isiXhosa</option>
<option value="yi">yi | אידיש</option>
<option value="yo">yo | Èdè Yorùbá</option>
<option value="zh">zh | 汉语</option>
<option value="zt">zt | 漢語</option>
<option value="zu">zu | isiZulu</option>
</select>
<br>&nbsp;<br>&nbsp;<br>
<span tek="aboutcache"></span><br>
<span id="smsa"><button type="button" id="sms"> <span tek="statsshow"></span> </button></span>
<span id="smsb" style="display:none">
&nbsp;<br>
<span tek="hostile"></span>: <span id="viry">?</span><br>
<span tek="neutral"></span>: <span id="virn">?</span><br>
<span tek="total"></span>: <span id="viro">?</span><br>
&nbsp;<br>
<button type="button" id="crs"> <span tek="statsclear"></span> </button>
</span>
<br><br><script src="cg.js"></script>
</body>
</html>

File diff suppressed because one or more lines are too long

View File

@ -1,73 +0,0 @@
if (document.body && !['sercxi.eu.org', 'api.sercxi.eu.org', 'ansero.eu.org'].includes(location.hostname) && !location.hostname.endsWith('.onion')) {
let cs = (function () {
let s = document.createElement('style');
document.head.appendChild(s);
return s.sheet;
})();
if (cs) {
cs.insertRule("a[data-mitm=y]{cursor:not-allowed !important;text-decoration-line:line-through !important;text-decoration-color:red !important;text-decoration-style:double !important}", 0);
cs.insertRule("a[data-mitm=y]::before{content:'[\\26A0]';font-weight:bold !important;color:red !important;display:inline-block !important}", 1);
cs.insertRule("a[data-mitm=y]:hover::before{content:'[\\26A1]'}", 2);
cs.insertRule("a[data-mitm=y]:hover{color:red !important}", 3);
cs.insertRule("img[data-mitm=y]{cursor:not-allowed !important;border:2px red dotted !important}", 4);
cs.insertRule("img[data-mitm=y]:hover{filter:sepia(20%)}", 5);
}
chrome.storage.local.get(['ign1', 'ign2', 'obs', 'dbg', 'alt'], (g) => {
let asked = ['', 'sercxi.nnpaefp7pkadbxxkhz2agtbv2a4g5sgo2fbmv3i7czaua354334uqqad.onion', 'sercxi.eu.org', 'api.sercxi.eu.org', 'ansero.nnpaefp7pkadbxxkhz2agtbv2a4g5sgo2fbmv3i7czaua354334uqqad.onion', 'ansero.eu.org', 'addons.mozilla.org', 'addons.thunderbird.net', 'web.archive.org', 't.co'];
if (g.ign1 == 'y') {
asked.push(location.hostname);
}
let qstall = (g.ign2 == 'y') ? 'a[href]:not([data-mitm])' : 'a[href]:not([data-mitm]),img[src]:not([data-mitm])';
let running = false;
function scanme() {
if (!running) {
running = true;
let unknown = [];
document.querySelectorAll(qstall).forEach(a => {
let aF = (a.tagName == 'A' ? (new URL(a.href)).hostname : (new URL(a.src)).hostname) || '';
a.dataset.mitm = aF;
if (!asked.includes(aF)) {
asked.push(aF);
if (!/^(.*)\.(wikipedia\.org|onion|i2p|invalid|test|local|localhost|([0-9]{1,3})|bbs|chan|cyb|dyn|geek|gopher|indy|libre|neo|null|o|oss|oz|parody|pirate|bit|lib|coin|emc|bazar|fur)$/.test(aF) && aF.length >= 4) {
unknown.push(aF);
}
}
});
if (unknown.length > 0) {
chrome.runtime.sendMessage(unknown);
}
running = false;
}
}
chrome.runtime.onMessage.addListener((request, sender, sendResponse) => {
if (request.length == 2) {
document.querySelectorAll(g.ign2 == 'y' ? "a[href][data-mitm='" + request[0] + "']" : "a[href][data-mitm='" + request[0] + "'],img[src][data-mitm='" + request[0] + "']").forEach(a => {
if (request[1]) {
a.dataset.mitm = 'y';
if (g.alt == 'y' && a.tagName == 'A') {
if (!a.href.startsWith('https://web.archive.org/web/')) {
a.href = 'https://web.archive.org/web/' + a.href;
}
a.title = 'Arkivo!';
} else {
a.title = 'MITM!';
}
} else {
a.dataset.mitm = 'n';
}
});
}
sendResponse(true);
return;
});
scanme();
if (g.obs == 'y') {
(new MutationObserver(scanme)).observe(document, {
attributes: true,
attributeFilter: ['href'],
childList: true,
subtree: true
});
}
});
}

View File

@ -1,17 +0,0 @@
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=UTF-8">
<title>&#128452;</title>
</head>
<body style="display:none">
<br>
<meter id="pbr" value="0" min="0" max="100" style="width:50%"></meter><br><br>
<button type="button" id="ldb_i"> &#x1F4DD; <span tek="opximp"></span> </button>
<button type="button" id="ldb_c"> &#x1F5D1; <span tek="opxclr"></span> </button>
<span style="display:none">
<input type="file" id="f" accept="text/plain">
<span tek="opxdone"></span>
</span>
<script src="localdb.js"></script>
</body>
</html>

View File

@ -1,67 +0,0 @@
let irun = false;
document.addEventListener('DOMContentLoaded', () => {
chrome.storage.local.get(['mul'], g => {
let ul = g.mul || 'eo';
fetch('i18n/' + ul + '.json', {
method: 'GET'
}).then(j => j.json()).then(j => {
document.querySelectorAll('span[tek]').forEach(x => {
x.innerText = j[x.getAttribute('tek')];
});
document.body.style.display = 'block';
});
});
});
document.getElementById('f').addEventListener('change', e => {
let ff = e.target.files[0];
if (ff) {
let r = new FileReader();
r.addEventListener('load', e => {
if (ff.size > 4) {
let g = e.target.result.replace(/(?:\r\n|\r|\n)/g, "\n").split("\n");
if (g.length > 0) {
chrome.storage.local.get(['ldb'], gs => {
irun = true;
let cnt0, cnt1 = 0,
gc = 1,
db = JSON.parse(gs.ldb || '[]');
cnt0 = db.length;
document.getElementById('pbr').max = g.length;
g.forEach(x => {
document.getElementById('pbr').value = gc;
gc++;
if (/^([0-9a-z.-]{4,400})\.([a-z]{2,40})$/.test(x) && !db.includes(x)) {
db.push(x);
}
});
g = null;
cnt1 = db.length;
if (cnt1 != cnt0) {
chrome.storage.local.set({
'ldb': JSON.stringify(db)
});
}
chrome.runtime.sendMessage('dbmode,rl', () => {
alert(document.querySelector('span[tek=opxdone]').innerText + "\n\n" + cnt0 + " -> " + cnt1);
location.reload();
});
});
}
}
});
r.readAsText(ff);
}
});
document.getElementById('ldb_i').addEventListener('click', () => {
if (!irun) {
document.getElementById('f').click();
}
});
document.getElementById('ldb_c').addEventListener('click', () => {
if (!irun) {
chrome.runtime.sendMessage('dbmode,cl', () => {
alert(document.querySelector('span[tek=opxdone]').innerText);
location.reload();
});
}
});

View File

@ -1,39 +0,0 @@
{
"manifest_version": 2,
"name": "Ĉu ligoj estas vundeblaj al MITM-atako?",
"version": "1.0.23.1",
"minimum_chrome_version": "78",
"homepage_url": "https://sercxi.nnpaefp7pkadbxxkhz2agtbv2a4g5sgo2fbmv3i7czaua354334uqqad.onion/",
"author": "Ss",
"incognito": "split",
"permissions": [
"storage",
"unlimitedStorage",
"webRequest",
"<all_urls>"
],
"icons": {
"72": "icons/72.png"
},
"background": {
"scripts": [
"bg.js"
]
},
"options_ui": {
"chrome_style": false,
"page": "cfg.html"
},
"content_scripts": [
{
"matches": [
"http://*/*",
"https://*/*"
],
"js": [
"cs.js"
],
"run_at": "document_end"
}
]
}

View File

@ -1,16 +0,0 @@
[//]: # (do not edit me; start)
Versio: _1.0.23.1_
[//]: # (do not edit me; end)
- [Pli informo / Elŝuto](../../subfiles/about.ismm.md)
- Malgarantio: Ĉi tio NE estas spegulo de suprenflua deponejo. Sinkronigado eble prokrastas.
- &#8617; [Chromium](../ismitmlinkCR)
-----
- [More information / Download](../../subfiles/about.ismm.md)
- Disclaimer: This is NOT a mirror of upstream repository. Synchronization may be delayed.
- &#8617; [Chromium](../ismitmlinkCR)

View File

@ -1,17 +0,0 @@
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=UTF-8">
<title>&#128452;</title>
</head>
<body style="display:none">
<br>
<meter id="pbr" value="0" min="0" max="100" style="width:50%"></meter><br><br>
<button type="button" id="ldb_i"> &#x1F4DD; <span tek="opximp"></span> </button>
<button type="button" id="ldb_c"> &#x1F5D1; <span tek="opxclr"></span> </button>
<span style="display:none">
<input type="file" id="f" accept="text/plain">
<span tek="opxdone"></span>
</span>
<script src="localdb.js"></script>
</body>
</html>

View File

@ -1,16 +0,0 @@
[//]: # (do not edit me; start)
Versio: _1.0.5.1_
[//]: # (do not edit me; end)
- [Pli informo / Elŝuto](../../subfiles/about.urjm.md)
- Malgarantio: Ĉi tio NE estas spegulo de suprenflua deponejo. Sinkronigado eble prokrastas.
- &#8617; [Firefox](../urejectFX)
-----
- [More information / Download](../../subfiles/about.urjm.md)
- Disclaimer: This is NOT a mirror of upstream repository. Synchronization may be delayed.
- &#8617; [Firefox](../urejectFX)

View File

@ -1,34 +0,0 @@
let history = {};
chrome.webRequest.onResponseStarted.addListener(i => {
if ([403, 406, 410, 429, 451, 462].includes(i.statusCode)) {
let iFQDN = (new URL(i.url)).hostname;
if (['sercxi.eu.org', 'ansero.eu.org', 'sercxi.nnpaefp7pkadbxxkhz2agtbv2a4g5sgo2fbmv3i7czaua354334uqqad.onion', 'ansero.nnpaefp7pkadbxxkhz2agtbv2a4g5sgo2fbmv3i7czaua354334uqqad.onion'].includes(iFQDN)) {
return;
}
let iServer = '?';
i.responseHeaders.forEach(x => {
if (x.name.toLowerCase() == 'server') {
iServer = x.value;
}
});
history[iFQDN] = [i.url, iServer, i.statusCode, (new Date()).toUTCString()];
}
return;
}, {
urls: ['http://*/*', 'https://*/*'],
types: ['main_frame']
}, ['responseHeaders']);
chrome.runtime.onMessage.addListener((request, sender, sendResponse) => {
if (request && sender) {
if (request == 'get') {
sendResponse(history);
}
if (request == 'clear') {
history = {};
sendResponse(true);
}
}
});
chrome.browserAction.onClicked.addListener(() => {
chrome.runtime.openOptionsPage();
});

View File

@ -1,38 +0,0 @@
function newrow(w) {
let tt = document.getElementsByTagName('tbody')[0];
let tr = tt.insertRow(tt.rows.length);
tr.innerHTML = w;
}
document.addEventListener('DOMContentLoaded', () => {
chrome.storage.local.get(['ul'], (r) => {
fetch('i18n/' + (r.ul || 'eo') + '.json', {
method: 'GET'
}).then(j => j.json()).then(j => {
document.querySelectorAll('span[transk]').forEach(x => {
x.innerText = j[x.getAttribute('transk')];
});
newrow('<tr><td><b>FQDN</b></td><td><b>' + j['lj1'] + '</b></td><td><b>' + j['lj2'] + '</b></td><td><b>' + j['lj3'] + '</b></td><td><b>' + j['lj4'] + '</b></td></tr>');
chrome.runtime.sendMessage('get', g => {
for (let k in g) {
newrow('<tr><td>' + k + '</td><td>' + g[k][1] + '</td><td>' + g[k][2] + '</td><td><a href="' + g[k][0] + '" rel="noreferrer noopener" target="_blank"> &#128279; </a></td><td>' + g[k][3] + '</td></tr>');
document.getElementById('export').innerHTML += k + "\n";
}
});
document.body.style.display = 'block';
});
});
document.getElementById('clear').addEventListener('click', () => {
chrome.runtime.sendMessage('clear', () => {
location.reload(true);
});
});
document.getElementById('myul').addEventListener('change', () => {
if (document.getElementById('myul').value != '') {
chrome.storage.local.set({
'ul': document.getElementById('myul').value
}, () => {
location.reload(true);
});
}
});
});

View File

@ -1,32 +0,0 @@
{
"manifest_version": 2,
"name": "Kiu retejo malakceptis min?",
"version": "1.0.5.1",
"minimum_chrome_version": "60",
"homepage_url": "https://sercxi.nnpaefp7pkadbxxkhz2agtbv2a4g5sgo2fbmv3i7czaua354334uqqad.onion/",
"author": "Ss",
"incognito": "split",
"permissions": [
"storage",
"webRequest",
"<all_urls>"
],
"icons": {
"72": "icons/72.png"
},
"background": {
"scripts": [
"bg.js"
]
},
"options_ui": {
"open_in_tab": true,
"chrome_style": false,
"page": "log.html"
},
"browser_action": {
"default_icon": {
"72": "icons/72.png"
}
}
}

View File

@ -1,16 +0,0 @@
[//]: # (do not edit me; start)
Versio: _1.0.5.1_
[//]: # (do not edit me; end)
- [Pli informo / Elŝuto](../../subfiles/about.urjm.md)
- Malgarantio: Ĉi tio NE estas spegulo de suprenflua deponejo. Sinkronigado eble prokrastas.
- &#8617; [Chromium](../urejectCR)
-----
- [More information / Download](../../subfiles/about.urjm.md)
- Disclaimer: This is NOT a mirror of upstream repository. Synchronization may be delayed.
- &#8617; [Chromium](../urejectCR)

View File

@ -1,134 +0,0 @@
<html>
<head>
<meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate">
<meta http-equiv="content-type" content="text/html;charset=UTF-8">
<title>&#128221;</title>
</head>
<body style="display:none">
<br><br>
<b>&#128373; <span transk="ln1"></span></b><br>
<table style="width:90%" border=1>
<tbody></tbody>
</table>
<button type="button" id="clear"> <span transk="ln1a"></span> </button><br>
<br><br>
<b>&#128441; <span transk="ln2"></span></b><br>
<textarea id="export" cols=60 rows=20 readonly></textarea>
<br>
<br><br>
<b>&#128172; Internacio</b><br>
<select id="myul">
<option value="" selected> --- </option>
<option value="af">af | Afrikaans</option>
<option value="am">am | አማርኛ</option>
<option value="ar">ar | العربية</option>
<option value="az">az | Azərbaycanca</option>
<option value="be">be | Беларуская</option>
<option value="bg">bg | Български</option>
<option value="bn">bn | বাংলা</option>
<option value="bs">bs | босански</option>
<option value="ca">ca | Català</option>
<option value="cb">cb | Cebuan</option>
<option value="co">co | Corsu</option>
<option value="cs">cs | Čeština</option>
<option value="cy">cy | Cymraeg</option>
<option value="da">da | Dansk</option>
<option value="de">de | Deutsch</option>
<option value="el">el | Ελληνικά</option>
<option value="en">en | English</option>
<option value="eo">eo | Esperanto &#127942;</option>
<option value="es">es | Español</option>
<option value="et">et | Eesti</option>
<option value="eu">eu | Euskara</option>
<option value="fa">fa | فارسی</option>
<option value="fi">fi | Suomi</option>
<option value="fl">fl | Wikang Filipino</option>
<option value="fr">fr | Français</option>
<option value="fy">fy | Frisian</option>
<option value="ga">ga | Gaeilge</option>
<option value="gd">gd | Gàidhlig</option>
<option value="gl">gl | Galego</option>
<option value="gu">gu | Gujarātī</option>
<option value="ha">ha | Harshen</option>
<option value="he">he | עברית</option>
<option value="hi">hi | हिंदी</option>
<option value="hm">hm | lus Hmoob</option>
<option value="hr">hr | Hrvatski</option>
<option value="ht">ht | Kreyòl</option>
<option value="hu">hu | Magyar</option>
<option value="hw">hw | ʻŌlelo Hawaiʻi</option>
<option value="hy">hy | հայերեն</option>
<option value="id">id | Indonesia</option>
<option value="ig">ig | Asụsụ Igbo</option>
<option value="is">is | Íslenska</option>
<option value="it">it | Italiano</option>
<option value="ja">ja | 日本語</option>
<option value="jv">jv | ꦧꦱꦗꦮ</option>
<option value="ka">ka | ქართული</option>
<option value="kk">kk | Қазақша</option>
<option value="km">km | ភាសាខ្មែរ</option>
<option value="kn">kn | ಕನ್ನಡ</option>
<option value="ko">ko | 힌디어</option>
<option value="ku">ku | کوردی</option>
<option value="ky">ky | Кыргызча</option>
<option value="la">la | Latīna</option>
<option value="lb">lb | Lëtzebuergesch</option>
<option value="lo">lo | ພາສາລາວ</option>
<option value="lt">lt | Lietuvių</option>
<option value="lv">lv | Latviešu</option>
<option value="mg">mg | Malagasy</option>
<option value="mi">mi | Māori</option>
<option value="mk">mk | македонски</option>
<option value="ml">ml | മലയാളം</option>
<option value="mn">mn | монгол</option>
<option value="mr">mr | मराठी</option>
<option value="ms">ms | bahasa Melayu</option>
<option value="mt">mt | Malti</option>
<option value="my">my | Burmese</option>
<option value="ne">ne | नेपाली</option>
<option value="nl">nl | Nederlands</option>
<option value="no">no | Norsk Bokmål</option>
<option value="ny">ny | Chichewa</option>
<option value="or">or | ଓଡ଼ିଆ</option>
<option value="pa">pa | ਪੰਜਾਬੀ</option>
<option value="pl">pl | Polski</option>
<option value="ps">ps | پښتو</option>
<option value="pt">pt | Português</option>
<option value="ro">ro | Română</option>
<option value="ru">ru | Русский</option>
<option value="rw">rw | Kinyarwanda</option>
<option value="sd">sd | سنڌي‎</option>
<option value="si">si | සිංහල</option>
<option value="sk">sk | Slovenčina</option>
<option value="sl">sl | Slovenščina</option>
<option value="sm">sm | Gagana Sāmoa</option>
<option value="sn">sn | chiShona</option>
<option value="so">so | Af Soomaali</option>
<option value="sq">sq | Shqip</option>
<option value="sr">sr | Српски</option>
<option value="st">st | Sesotho</option>
<option value="su">su | Basa Sunda</option>
<option value="sv">sv | Svenska</option>
<option value="sw">sw | Kiswahili</option>
<option value="ta">ta | தமிழ்</option>
<option value="te">te | తెలుగు</option>
<option value="tg">tg | тоҷикӣ</option>
<option value="th">th | ภาษาไทย</option>
<option value="tk">tk | Türkmençe</option>
<option value="tr">tr | Türkçe</option>
<option value="tt">tt | татар теле</option>
<option value="ug">ug | ئۇيغۇرچە</option>
<option value="uk">uk | Українська</option>
<option value="ur">ur | اردو</option>
<option value="uz">uz | ózbekça</option>
<option value="vi">vi | Tiếng Việt</option>
<option value="xh">xh | isiXhosa</option>
<option value="yi">yi | אידיש</option>
<option value="yo">yo | Èdè Yorùbá</option>
<option value="zh">zh | 汉语</option>
<option value="zt">zt | 漢語</option>
<option value="zu">zu | isiZulu</option>
</select>
<script src="log.js"></script>
</body>
</html>

View File

@ -16,9 +16,7 @@ Your cloudflare-domain collection is yours.
```
- Code
- [Firefox](https://git.fuwafuwa.moe/you/stop_cloudflare/src/branch/master/addons/bcmaFX)
- [Chromium](https://git.fuwafuwa.moe/you/stop_cloudflare/src/branch/master/addons/bcmaCR)
- [Code](https://codeberg.org/crimeflare/cloudflare-tor/src/branch/master/addons/code/bcma)
- Download add-on
- From Ss (_Recommend_): [Firefox ESR / Chromium](https://sercxi.nnpaefp7pkadbxxkhz2agtbv2a4g5sgo2fbmv3i7czaua354334uqqad.onion/)
- From Gitea (Delay Sync): [FirefoxESR](https://git.fuwafuwa.moe/you/stop_cloudflare/raw/branch/master/addons/releases/bcma.xpi) / [Chromium](https://git.fuwafuwa.moe/you/stop_cloudflare/raw/branch/master/addons/releases/bcma.crx)
- From Gitea (Delay Sync): [FirefoxESR](https://codeberg.org/crimeflare/cloudflare-tor/raw/branch/master/addons/releases/bcma.xpi) / [Chromium](https://codeberg.org/crimeflare/cloudflare-tor/raw/branch/master/addons/releases/bcma.crx)

View File

@ -38,9 +38,7 @@ This add-on never send other information.
```
- Code
- [Firefox](https://git.fuwafuwa.moe/you/stop_cloudflare/src/branch/master/addons/isattlinkFX)
- [Chromium](https://git.fuwafuwa.moe/you/stop_cloudflare/src/branch/master/addons/isattlinkCR)
- [Code](https://codeberg.org/crimeflare/cloudflare-tor/src/branch/master/addons/code/isattlink)
- Download add-on
- From Ss (_Recommend_): [Firefox ESR / Chromium](https://sercxi.nnpaefp7pkadbxxkhz2agtbv2a4g5sgo2fbmv3i7czaua354334uqqad.onion/)
- From Gitea (Delay Sync): [FirefoxESR](https://git.fuwafuwa.moe/you/stop_cloudflare/raw/branch/master/addons/releases/isat.xpi) / [Chromium](https://git.fuwafuwa.moe/you/stop_cloudflare/raw/branch/master/addons/releases/isat.crx)
- From Gitea (Delay Sync): [FirefoxESR](https://codeberg.org/crimeflare/cloudflare-tor/raw/branch/master/addons/releases/isat.xpi) / [Chromium](https://codeberg.org/crimeflare/cloudflare-tor/raw/branch/master/addons/releases/isat.crx)

View File

@ -46,9 +46,7 @@ This add-on never send other information.
```
- Code
- [Firefox](https://git.fuwafuwa.moe/you/stop_cloudflare/src/branch/master/addons/ismitmlinkFX)
- [Chromium](https://git.fuwafuwa.moe/you/stop_cloudflare/src/branch/master/addons/ismitmlinkCR)
- [Code](https://codeberg.org/crimeflare/cloudflare-tor/src/branch/master/addons/code/ismitmlinkFX)
- Download add-on
- From Ss (_Recommend_): [Firefox ESR / Chromium](https://sercxi.nnpaefp7pkadbxxkhz2agtbv2a4g5sgo2fbmv3i7czaua354334uqqad.onion/)
- From Gitea (Delay Sync): [FirefoxESR](https://git.fuwafuwa.moe/you/stop_cloudflare/raw/branch/master/addons/releases/ismm.xpi) / [Chromium](https://git.fuwafuwa.moe/you/stop_cloudflare/raw/branch/master/addons/releases/ismm.crx)
- From Gitea (Delay Sync): [FirefoxESR](https://codeberg.org/crimeflare/cloudflare-tor/raw/branch/master/addons/releases/ismm.xpi) / [Chromium](https://codeberg.org/crimeflare/cloudflare-tor/raw/branch/master/addons/releases/ismm.crx)

View File

@ -18,9 +18,7 @@ Your domain collection is yours.
```
- Code
- [Firefox](https://git.fuwafuwa.moe/you/stop_cloudflare/src/branch/master/addons/urejectFX)
- [Chromium](https://git.fuwafuwa.moe/you/stop_cloudflare/src/branch/master/addons/urejectCR)
- [Code](https://codeberg.org/crimeflare/cloudflare-tor/src/branch/master/addons/code/ureject)
- Download add-on
- From Ss (_Recommend_): [Firefox ESR / Chromium](https://sercxi.nnpaefp7pkadbxxkhz2agtbv2a4g5sgo2fbmv3i7czaua354334uqqad.onion/)
- From Gitea (Delay Sync): [FirefoxESR](https://git.fuwafuwa.moe/you/stop_cloudflare/raw/branch/master/addons/releases/urjm.xpi) / [Chromium](https://git.fuwafuwa.moe/you/stop_cloudflare/raw/branch/master/addons/releases/urjm.crx)
- From Gitea (Delay Sync): [FirefoxESR](https://codeberg.org/crimeflare/cloudflare-tor/raw/branch/master/addons/releases/urjm.xpi) / [Chromium](https://codeberg.org/crimeflare/cloudflare-tor/raw/branch/master/addons/releases/urjm.crx)