mirror of
https://gitlab.com/SukkaW/ruleset.skk.moe.git
synced 2025-12-31 09:30:25 +00:00
deploy: 0dc0e7e02969f3e6b714e016eab853a289dad7a7
This commit is contained in:
50
Build/_build-phishing-domainset.js
Normal file
50
Build/_build-phishing-domainset.js
Normal file
@@ -0,0 +1,50 @@
|
||||
const psl = require('psl');
|
||||
const { processFilterRules } = require('./lib/parse-filter.js');
|
||||
|
||||
(async () => {
|
||||
const domainSet = Array.from(
|
||||
(
|
||||
await processFilterRules('https://curbengh.github.io/phishing-filter/phishing-filter-agh.txt')
|
||||
).black
|
||||
);
|
||||
const domainCountMap = {};
|
||||
|
||||
for (let i = 0, len = domainSet.length; i < len; i++) {
|
||||
const line = domainSet[i];
|
||||
// starts with #
|
||||
if (line.charCodeAt(0) === 35) {
|
||||
continue;
|
||||
}
|
||||
if (line.trim().length === 0) {
|
||||
continue;
|
||||
}
|
||||
|
||||
const domain = line.charCodeAt(0) === 46 ? line.slice(1) : line;
|
||||
const parsed = psl.parse(domain);
|
||||
|
||||
if (parsed.input === parsed.tld) {
|
||||
continue;
|
||||
}
|
||||
|
||||
if (line.length > 25) {
|
||||
domainCountMap[parsed.domain] ||= 0;
|
||||
domainCountMap[parsed.domain] += 1;
|
||||
}
|
||||
}
|
||||
|
||||
Object.entries(domainCountMap).forEach(([domain, count]) => {
|
||||
if (
|
||||
count > 10
|
||||
&& (
|
||||
domain.endsWith('.xyz')
|
||||
|| domain.endsWith('.top')
|
||||
|| domain.endsWith('.icu')
|
||||
|| domain.endsWith('.win')
|
||||
|| domain.endsWith('.shop')
|
||||
|| domain.endsWith('.cyou')
|
||||
)
|
||||
) {
|
||||
console.log('.'+ domain);
|
||||
}
|
||||
});
|
||||
})();
|
||||
@@ -202,6 +202,27 @@ const threads = isCI ? cpuCount : cpuCount / 2;
|
||||
});
|
||||
});
|
||||
|
||||
// Read Special Phishing Suffix list
|
||||
await fsPromises.readFile(pathResolve(__dirname, '../List/domainset/reject_phishing.conf'), { encoding: 'utf-8' }).then(data => {
|
||||
data.split('\n').forEach(line => {
|
||||
const trimmed = line.trim();
|
||||
if (
|
||||
line.startsWith('#')
|
||||
|| line.startsWith(' ')
|
||||
|| line.startsWith('\r')
|
||||
|| line.startsWith('\n')
|
||||
|| trimmed === ''
|
||||
) {
|
||||
return;
|
||||
}
|
||||
|
||||
/* if (domainSets.has(line) || domainSets.has(`.${line}`)) {
|
||||
console.warn(`|${line}| is already in the list!`);
|
||||
} */
|
||||
domainSuffixSet.add(trimmed);
|
||||
});
|
||||
});
|
||||
|
||||
console.log(`Import ${domainKeywordsSet.size} black keywords and ${domainSuffixSet.size} black suffixes!`);
|
||||
|
||||
previousSize = domainSets.size;
|
||||
|
||||
@@ -107,14 +107,20 @@ async function processFilterRules (filterRulesUrl, fallbackUrls) {
|
||||
/** @type Set<string> */
|
||||
const blacklistDomainSets = new Set();
|
||||
|
||||
/** @type string[] */
|
||||
const filterRules = (
|
||||
await Promise.any(
|
||||
[filterRulesUrl, ...(fallbackUrls || [])].map(
|
||||
async url => (await fetchWithRetry(url)).text()
|
||||
let filterRules;
|
||||
try {
|
||||
/** @type string[] */
|
||||
filterRules = (
|
||||
await Promise.any(
|
||||
[filterRulesUrl, ...(fallbackUrls || [])].map(
|
||||
async url => (await fetchWithRetry(url)).text()
|
||||
)
|
||||
)
|
||||
)
|
||||
).split('\n').map(line => line.trim());
|
||||
).split('\n').map(line => line.trim());
|
||||
} catch (e) {
|
||||
console.log('Download Rule for [' + filterRulesUrl + '] failed');
|
||||
throw e;
|
||||
}
|
||||
|
||||
filterRules.forEach(line => {
|
||||
const lineStartsWithDoubleVerticalBar = line.startsWith('||');
|
||||
|
||||
@@ -695,6 +695,7 @@ stripecdn.com
|
||||
# MissAV
|
||||
static.missav.com
|
||||
cdn.missav.com
|
||||
thumbnail.missav.com
|
||||
# XVideos & XNXX
|
||||
.xvideos-cdn.com
|
||||
.xnxx-cdn.com
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
1300
List/domainset/reject_phishing.conf
Normal file
1300
List/domainset/reject_phishing.conf
Normal file
File diff suppressed because it is too large
Load Diff
@@ -14,6 +14,7 @@ optimus-ads.amap.com
|
||||
.weddingeeos.com
|
||||
.rjno1.com
|
||||
.taio.app
|
||||
.headcaptcha.live
|
||||
|
||||
# >> Qihoo 360
|
||||
hot.m.shouji.360tpcdn.com
|
||||
@@ -1690,7 +1691,3 @@ adserve2.tom.com
|
||||
.luminati.io
|
||||
.lum-cn.io
|
||||
.luminati-china.biz
|
||||
|
||||
# >> Misc
|
||||
|
||||
.headcaptcha.live
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
############################
|
||||
# Mainland China IPv4 CIDR
|
||||
# Data from misaka.io (misakaio @ GitHub)
|
||||
# Last Updated: 2022-10-31T14:53:14.951Z
|
||||
# Routes: 3186
|
||||
# Last Updated: 2022-10-31T18:25:22.074Z
|
||||
# Routes: 3192
|
||||
############################
|
||||
IP-CIDR,1.2.4.0/24
|
||||
IP-CIDR,1.8.1.0/24
|
||||
@@ -925,6 +925,7 @@ IP-CIDR,103.163.46.0/23
|
||||
IP-CIDR,103.163.180.0/24
|
||||
IP-CIDR,103.164.32.0/23
|
||||
IP-CIDR,103.165.110.0/23
|
||||
IP-CIDR,103.169.50.0/23
|
||||
IP-CIDR,103.170.212.0/23
|
||||
IP-CIDR,103.174.94.0/23
|
||||
IP-CIDR,103.177.28.0/23
|
||||
@@ -1417,16 +1418,21 @@ IP-CIDR,116.66.48.0/21
|
||||
IP-CIDR,116.66.120.0/22
|
||||
IP-CIDR,116.70.64.0/18
|
||||
IP-CIDR,116.78.0.0/16
|
||||
IP-CIDR,116.85.0.0/19
|
||||
IP-CIDR,116.85.0.0/21
|
||||
IP-CIDR,116.85.8.0/22
|
||||
IP-CIDR,116.85.12.0/23
|
||||
IP-CIDR,116.85.15.0/24
|
||||
IP-CIDR,116.85.17.0/24
|
||||
IP-CIDR,116.85.18.0/23
|
||||
IP-CIDR,116.85.20.0/22
|
||||
IP-CIDR,116.85.24.0/21
|
||||
IP-CIDR,116.85.32.0/22
|
||||
IP-CIDR,116.85.36.0/23
|
||||
IP-CIDR,116.85.38.0/24
|
||||
IP-CIDR,116.85.40.0/21
|
||||
IP-CIDR,116.85.48.0/20
|
||||
IP-CIDR,116.85.64.0/20
|
||||
IP-CIDR,116.85.80.0/21
|
||||
IP-CIDR,116.85.88.0/23
|
||||
IP-CIDR,116.85.90.0/24
|
||||
IP-CIDR,116.85.64.0/21
|
||||
IP-CIDR,116.85.72.0/24
|
||||
IP-CIDR,116.85.248.0/23
|
||||
IP-CIDR,116.85.250.0/24
|
||||
IP-CIDR,116.85.252.0/22
|
||||
|
||||
@@ -15,48 +15,6 @@ DOMAIN-KEYWORD,.nimiq.
|
||||
DOMAIN-KEYWORD,anybest.
|
||||
DOMAIN-KEYWORD,dubester.
|
||||
|
||||
# Phishing
|
||||
|
||||
DOMAIN-KEYWORD,ercmsvi.
|
||||
DOMAIN-KEYWORD,vianocenure
|
||||
DOMAIN-KEYWORD,scvoiei.
|
||||
DOMAIN-KEYWORD,mcvoiei.
|
||||
DOMAIN-KEYWORD,ismsivi.
|
||||
DOMAIN-KEYWORD,cvoievi.
|
||||
DOMAIN-KEYWORD,cvoiei.
|
||||
DOMAIN-KEYWORD,reeinsi.
|
||||
DOMAIN-KEYWORD,eainsi.
|
||||
DOMAIN-KEYWORD,avesi.
|
||||
DOMAIN-KEYWORD,aaevesi.
|
||||
DOMAIN-KEYWORD,aveesi.
|
||||
DOMAIN-KEYWORD,ooaesc.
|
||||
DOMAIN-KEYWORD,crvnvsa.
|
||||
DOMAIN-KEYWORD,49329d48d6c.
|
||||
DOMAIN-KEYWORD,vsvevvcca
|
||||
DOMAIN-KEYWORD,envci.
|
||||
DOMAIN-KEYWORD,aarsenvs.
|
||||
DOMAIN-KEYWORD,.myjaas
|
||||
DOMAIN-KEYWORD,eb.myja
|
||||
DOMAIN-KEYWORD,eb.myje
|
||||
DOMAIN-KEYWORD,eb.myjo
|
||||
DOMAIN-KEYWORD,sb.myja
|
||||
DOMAIN-KEYWORD,cn.asec
|
||||
DOMAIN-KEYWORD,on.ascc
|
||||
DOMAIN-KEYWORD,on.acsc
|
||||
DOMAIN-KEYWORD,on.acse
|
||||
DOMAIN-KEYWORD,on.ascec
|
||||
DOMAIN-KEYWORD,on.ascse
|
||||
DOMAIN-KEYWORD,an.ascec
|
||||
DOMAIN-KEYWORD,.viiessva
|
||||
DOMAIN-KEYWORD,.avisievs
|
||||
DOMAIN-KEYWORD,orvaisvieas
|
||||
DOMAIN-KEYWORD,.vieissa
|
||||
DOMAIN-KEYWORD,.viessvac
|
||||
DOMAIN-KEYWORD,ei.vivca
|
||||
DOMAIN-KEYWORD,ei.visva
|
||||
DOMAIN-KEYWORD,.vivcsv
|
||||
|
||||
|
||||
# --- End of Blacklist Section
|
||||
|
||||
# --- AD Block ---
|
||||
|
||||
@@ -16,11 +16,13 @@
|
||||
|
||||
> Surge 和 Clash 会按照规则在配置中的顺序、从上到下逐一匹配,当且仅当进行 IP 规则的匹配、FINAL、或 direct 策略时,才会进行 DNS 解析。按照一定的顺序添加规则组,可以避免不必要的 DNS 解析。
|
||||
|
||||
#### 广告拦截 / 隐私保护
|
||||
#### 广告拦截 / 隐私保护 / Malware 拦截 / Phiishing 拦截
|
||||
|
||||
```ini
|
||||
RULE-SET,https://ruleset.skk.moe/List/non_ip/reject.conf,reject-drop
|
||||
RULE-SET,https://ruleset.skk.moe/List/non_ip/reject.conf,reject
|
||||
DOMAIN-SET,https://ruleset.skk.moe/List/domainset/reject.conf,reject-tinygif
|
||||
DOMAIN-SET,https://ruleset.skk.moe/List/domainset/reject_sukka.conf,reject-tinygif
|
||||
DOMAIN-SET,https://ruleset.skk.moe/List/domainset/reject_phishing.conf,reject
|
||||
RULE-SET,https://ruleset.skk.moe/List/ip/reject.conf,reject-drop
|
||||
```
|
||||
|
||||
|
||||
@@ -24,11 +24,11 @@
|
||||
<main class="container">
|
||||
<h1>Sukka Surge Ruleset Server</h1>
|
||||
<p>Made by <a href="https://skk.moe">Sukka</a> | <a href="https://github.com/SukkaW/Surge/">Source @ GitHub</a> | Licensed under <a href="https://github.com/SukkaW/Surge/blob/master/LICENSE" target="_blank">AGPL-3.0</a></p>
|
||||
<p>Last Updated: 2022-10-31T14:56:14.307Z</p>
|
||||
<p>Last Updated: 2022-10-31T18:26:51.278Z</p>
|
||||
<hr>
|
||||
<br>
|
||||
<ul>
|
||||
<li><a href="List/domainset/apple_cdn.conf" target="_blank">List/domainset/apple_cdn.conf</a></li><li><a href="List/domainset/cdn.conf" target="_blank">List/domainset/cdn.conf</a></li><li><a href="List/domainset/download.conf" target="_blank">List/domainset/download.conf</a></li><li><a href="List/domainset/icloud_private_relay.conf" target="_blank">List/domainset/icloud_private_relay.conf</a></li><li><a href="List/domainset/my_proxy.conf" target="_blank">List/domainset/my_proxy.conf</a></li><li><a href="List/domainset/reject.conf" target="_blank">List/domainset/reject.conf</a></li><li><a href="List/domainset/reject_sukka.conf" target="_blank">List/domainset/reject_sukka.conf</a></li><li><a href="List/ip/apple_services.conf" target="_blank">List/ip/apple_services.conf</a></li><li><a href="List/ip/china_ip.conf" target="_blank">List/ip/china_ip.conf</a></li><li><a href="List/ip/domestic.conf" target="_blank">List/ip/domestic.conf</a></li><li><a href="List/ip/download.conf" target="_blank">List/ip/download.conf</a></li><li><a href="List/ip/neteasemusic.conf" target="_blank">List/ip/neteasemusic.conf</a></li><li><a href="List/ip/reject.conf" target="_blank">List/ip/reject.conf</a></li><li><a href="List/ip/stream.conf" target="_blank">List/ip/stream.conf</a></li><li><a href="List/ip/telegram.conf" target="_blank">List/ip/telegram.conf</a></li><li><a href="List/non_ip/apple_cdn.conf" target="_blank">List/non_ip/apple_cdn.conf</a></li><li><a href="List/non_ip/apple_services.conf" target="_blank">List/non_ip/apple_services.conf</a></li><li><a href="List/non_ip/cdn.conf" target="_blank">List/non_ip/cdn.conf</a></li><li><a href="List/non_ip/direct.conf" target="_blank">List/non_ip/direct.conf</a></li><li><a href="List/non_ip/domestic.conf" target="_blank">List/non_ip/domestic.conf</a></li><li><a href="List/non_ip/global.conf" target="_blank">List/non_ip/global.conf</a></li><li><a href="List/non_ip/global_plus.conf" target="_blank">List/non_ip/global_plus.conf</a></li><li><a href="List/non_ip/my_direct.conf" target="_blank">List/non_ip/my_direct.conf</a></li><li><a href="List/non_ip/my_proxy.conf" target="_blank">List/non_ip/my_proxy.conf</a></li><li><a href="List/non_ip/my_reject.conf" target="_blank">List/non_ip/my_reject.conf</a></li><li><a href="List/non_ip/neteasemusic.conf" target="_blank">List/non_ip/neteasemusic.conf</a></li><li><a href="List/non_ip/reject.conf" target="_blank">List/non_ip/reject.conf</a></li><li><a href="List/non_ip/sogouinput.conf" target="_blank">List/non_ip/sogouinput.conf</a></li><li><a href="List/non_ip/stream.conf" target="_blank">List/non_ip/stream.conf</a></li><li><a href="List/non_ip/telegram.conf" target="_blank">List/non_ip/telegram.conf</a></li><li><a href="Modules/Game_Console_SNAT.sgmodule" target="_blank">Modules/Game_Console_SNAT.sgmodule</a></li><li><a href="Modules/google_cn_307.sgmodule" target="_blank">Modules/google_cn_307.sgmodule</a></li><li><a href="Modules/ios_hide_vpn_icon.sgmodule" target="_blank">Modules/ios_hide_vpn_icon.sgmodule</a></li><li><a href="Modules/rixCloud_local_dns_mapping.sgmodule" target="_blank">Modules/rixCloud_local_dns_mapping.sgmodule</a></li><li><a href="Modules/sukka_common_always_realip.sgmodule" target="_blank">Modules/sukka_common_always_realip.sgmodule</a></li><li><a href="Modules/sukka_exclude_reservered_ip.sgmodule" target="_blank">Modules/sukka_exclude_reservered_ip.sgmodule</a></li><li><a href="Modules/sukka_fix_network_alert.sgmodule" target="_blank">Modules/sukka_fix_network_alert.sgmodule</a></li><li><a href="Modules/sukka_mitm_all_hostnames.sgmodule" target="_blank">Modules/sukka_mitm_all_hostnames.sgmodule</a></li><li><a href="Modules/sukka_mitm_hostnames.sgmodule" target="_blank">Modules/sukka_mitm_hostnames.sgmodule</a></li><li><a href="Modules/sukka_surge_network_test_domain.sgmodule" target="_blank">Modules/sukka_surge_network_test_domain.sgmodule</a></li><li><a href="Modules/sukka_unlock_abema.sgmodule" target="_blank">Modules/sukka_unlock_abema.sgmodule</a></li><li><a href="Modules/sukka_unlock_emby.sgmodule" target="_blank">Modules/sukka_unlock_emby.sgmodule</a></li><li><a href="Modules/sukka_url_rewrite.sgmodule" target="_blank">Modules/sukka_url_rewrite.sgmodule</a></li><li><a href="pnpm-lock.yaml" target="_blank">pnpm-lock.yaml</a></li>
|
||||
<li><a href="List/domainset/apple_cdn.conf" target="_blank">List/domainset/apple_cdn.conf</a></li><li><a href="List/domainset/cdn.conf" target="_blank">List/domainset/cdn.conf</a></li><li><a href="List/domainset/download.conf" target="_blank">List/domainset/download.conf</a></li><li><a href="List/domainset/icloud_private_relay.conf" target="_blank">List/domainset/icloud_private_relay.conf</a></li><li><a href="List/domainset/my_proxy.conf" target="_blank">List/domainset/my_proxy.conf</a></li><li><a href="List/domainset/reject.conf" target="_blank">List/domainset/reject.conf</a></li><li><a href="List/domainset/reject_phishing.conf" target="_blank">List/domainset/reject_phishing.conf</a></li><li><a href="List/domainset/reject_sukka.conf" target="_blank">List/domainset/reject_sukka.conf</a></li><li><a href="List/ip/apple_services.conf" target="_blank">List/ip/apple_services.conf</a></li><li><a href="List/ip/china_ip.conf" target="_blank">List/ip/china_ip.conf</a></li><li><a href="List/ip/domestic.conf" target="_blank">List/ip/domestic.conf</a></li><li><a href="List/ip/download.conf" target="_blank">List/ip/download.conf</a></li><li><a href="List/ip/neteasemusic.conf" target="_blank">List/ip/neteasemusic.conf</a></li><li><a href="List/ip/reject.conf" target="_blank">List/ip/reject.conf</a></li><li><a href="List/ip/stream.conf" target="_blank">List/ip/stream.conf</a></li><li><a href="List/ip/telegram.conf" target="_blank">List/ip/telegram.conf</a></li><li><a href="List/non_ip/apple_cdn.conf" target="_blank">List/non_ip/apple_cdn.conf</a></li><li><a href="List/non_ip/apple_services.conf" target="_blank">List/non_ip/apple_services.conf</a></li><li><a href="List/non_ip/cdn.conf" target="_blank">List/non_ip/cdn.conf</a></li><li><a href="List/non_ip/direct.conf" target="_blank">List/non_ip/direct.conf</a></li><li><a href="List/non_ip/domestic.conf" target="_blank">List/non_ip/domestic.conf</a></li><li><a href="List/non_ip/global.conf" target="_blank">List/non_ip/global.conf</a></li><li><a href="List/non_ip/global_plus.conf" target="_blank">List/non_ip/global_plus.conf</a></li><li><a href="List/non_ip/my_direct.conf" target="_blank">List/non_ip/my_direct.conf</a></li><li><a href="List/non_ip/my_proxy.conf" target="_blank">List/non_ip/my_proxy.conf</a></li><li><a href="List/non_ip/my_reject.conf" target="_blank">List/non_ip/my_reject.conf</a></li><li><a href="List/non_ip/neteasemusic.conf" target="_blank">List/non_ip/neteasemusic.conf</a></li><li><a href="List/non_ip/reject.conf" target="_blank">List/non_ip/reject.conf</a></li><li><a href="List/non_ip/sogouinput.conf" target="_blank">List/non_ip/sogouinput.conf</a></li><li><a href="List/non_ip/stream.conf" target="_blank">List/non_ip/stream.conf</a></li><li><a href="List/non_ip/telegram.conf" target="_blank">List/non_ip/telegram.conf</a></li><li><a href="Modules/Game_Console_SNAT.sgmodule" target="_blank">Modules/Game_Console_SNAT.sgmodule</a></li><li><a href="Modules/google_cn_307.sgmodule" target="_blank">Modules/google_cn_307.sgmodule</a></li><li><a href="Modules/ios_hide_vpn_icon.sgmodule" target="_blank">Modules/ios_hide_vpn_icon.sgmodule</a></li><li><a href="Modules/rixCloud_local_dns_mapping.sgmodule" target="_blank">Modules/rixCloud_local_dns_mapping.sgmodule</a></li><li><a href="Modules/sukka_common_always_realip.sgmodule" target="_blank">Modules/sukka_common_always_realip.sgmodule</a></li><li><a href="Modules/sukka_exclude_reservered_ip.sgmodule" target="_blank">Modules/sukka_exclude_reservered_ip.sgmodule</a></li><li><a href="Modules/sukka_fix_network_alert.sgmodule" target="_blank">Modules/sukka_fix_network_alert.sgmodule</a></li><li><a href="Modules/sukka_mitm_all_hostnames.sgmodule" target="_blank">Modules/sukka_mitm_all_hostnames.sgmodule</a></li><li><a href="Modules/sukka_mitm_hostnames.sgmodule" target="_blank">Modules/sukka_mitm_hostnames.sgmodule</a></li><li><a href="Modules/sukka_surge_network_test_domain.sgmodule" target="_blank">Modules/sukka_surge_network_test_domain.sgmodule</a></li><li><a href="Modules/sukka_unlock_abema.sgmodule" target="_blank">Modules/sukka_unlock_abema.sgmodule</a></li><li><a href="Modules/sukka_unlock_emby.sgmodule" target="_blank">Modules/sukka_unlock_emby.sgmodule</a></li><li><a href="Modules/sukka_url_rewrite.sgmodule" target="_blank">Modules/sukka_url_rewrite.sgmodule</a></li><li><a href="pnpm-lock.yaml" target="_blank">pnpm-lock.yaml</a></li>
|
||||
</ul>
|
||||
</main>
|
||||
</body>
|
||||
|
||||
Reference in New Issue
Block a user