瀏覽代碼

Make fake TLD in Phishing Hosts lethal match

SukkaW 1 年之前
父節點
當前提交
a05e0ec27c
共有 2 個文件被更改,包括 15 次插入23 次删除
  1. 11 8
      Build/constants/phishing-score-source.ts
  2. 4 15
      Build/lib/get-phishing-domains.ts

+ 11 - 8
Build/constants/phishing-score-source.ts

@@ -45,7 +45,15 @@ export const leathalKeywords = createKeywordFilter([
   'inpost-pl',
   'vlnted-',
   'allegrolokalnie',
-  'thetollroads'
+  'thetollroads',
+  'getipass',
+
+  // Fake TLD
+  '.pl-',
+  '.com-',
+  '.net-',
+  '.org-',
+  '.gov-'
 ]);
 
 export const sensitiveKeywords = createKeywordFilter([
@@ -72,13 +80,8 @@ export const sensitiveKeywords = createKeywordFilter([
   'google.com-',
   'minecraft',
   'staemco',
-  'oferta'
-]);
-
-export const fakeTldKeywords = createKeywordFilter([
-  '.pl-',
-  '.com-',
-  '.net-'
+  'oferta',
+  'txtag'
 ]);
 
 export const lowKeywords = createKeywordFilter([

+ 4 - 15
Build/lib/get-phishing-domains.ts

@@ -34,7 +34,7 @@ const pool = new Worktank({
       const tldts = __require('tldts-experimental') as typeof import('tldts-experimental');
 
       const { loosTldOptWithPrivateDomains } = __require('../constants/loose-tldts-opt') as typeof import('../constants/loose-tldts-opt');
-      const { BLACK_TLD, WHITELIST_MAIN_DOMAINS, leathalKeywords, lowKeywords, fakeTldKeywords, sensitiveKeywords } = __require('../constants/phishing-score-source') as typeof import('../constants/phishing-score-source');
+      const { BLACK_TLD, WHITELIST_MAIN_DOMAINS, leathalKeywords, lowKeywords, sensitiveKeywords } = __require('../constants/phishing-score-source') as typeof import('../constants/phishing-score-source');
 
       const domainCountMap = new Map<string, number>();
       const domainScoreMap: Record<string, number> = {};
@@ -119,8 +119,8 @@ const pool = new Worktank({
       if (isDebug) {
         console.log({
           v: 1,
-          score: domainScoreMap['com-paytollbydv.world'],
-          count: domainCountMap.get('com-paytollbydv.worldx'),
+          score: domainScoreMap['com-ticketry.world'],
+          count: domainCountMap.get('com-ticketry.world'),
           domainArrLen: domainArr.length
         });
       }
@@ -136,25 +136,14 @@ const pool = new Worktank({
 
         const hitLowKeywords = lowKeywords(fullDomain);
         const sensitiveKeywordsHit = sensitiveKeywords(fullDomain);
-        const fakeTldKeywordsHit = fakeTldKeywords(fullDomain);
 
         if (sensitiveKeywordsHit) {
           weight += 15;
           if (hitLowKeywords) {
             weight += 10;
-            if (fakeTldKeywordsHit) {
-              weight += 8;
-            }
-          }
-          // besides add for low hit, always add extra here
-          if (fakeTldKeywordsHit) {
-            weight += 10;
           }
         } else if (hitLowKeywords) {
-          weight += 1.8;
-          if (fakeTldKeywordsHit) {
-            weight += 5;
-          }
+          weight += 2;
         }
 
         const subdomainLength = subdomain.length;