reject-data-source.js 9.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262
  1. // @ts-check
  2. /** @type {[string, boolean][]} */
  3. const HOSTS = [
  4. // ['https://pgl.yoyo.org/adservers/serverlist.php?hostformat=hosts&showintro=0&mimetype=plaintext', false],
  5. ['https://raw.githubusercontent.com/hoshsadiq/adblock-nocoin-list/master/hosts.txt', false],
  6. ['https://raw.githubusercontent.com/crazy-max/WindowsSpyBlocker/master/data/hosts/spy.txt', false],
  7. ['https://raw.githubusercontent.com/jerryn70/GoodbyeAds/master/Extension/GoodbyeAds-Xiaomi-Extension.txt', false],
  8. ['https://raw.githubusercontent.com/jdlingyu/ad-wars/master/hosts', false],
  9. ['https://urlhaus.abuse.ch/downloads/hostfile/', false]
  10. ];
  11. const ADGUARD_FILTERS = /** @type {const} */([
  12. // Easy List
  13. [
  14. 'https://easylist.to/easylist/easylist.txt',
  15. [
  16. 'https://easylist-downloads.adblockplus.org/easylist.txt',
  17. 'https://raw.githubusercontent.com/easylist/easylist/gh-pages/easylist.txt',
  18. 'https://secure.fanboy.co.nz/easylist.txt'
  19. ],
  20. false
  21. ],
  22. // Easy Privacy
  23. [
  24. 'https://easylist.to/easylist/easyprivacy.txt',
  25. [
  26. 'https://secure.fanboy.co.nz/easyprivacy.txt',
  27. 'https://raw.githubusercontent.com/easylist/easylist/gh-pages/easyprivacy.txt',
  28. 'https://easylist-downloads.adblockplus.org/easyprivacy.txt'
  29. ],
  30. false
  31. ],
  32. // AdGuard DNS Filter
  33. [
  34. 'https://adguardteam.github.io/AdGuardSDNSFilter/Filters/filter.txt',
  35. [
  36. 'https://filters.adtidy.org/extension/chromium/filters/15.txt'
  37. ]
  38. ],
  39. // AdGuard CNAME Filter Combined
  40. 'https://raw.githubusercontent.com/AdguardTeam/cname-trackers/master/data/combined_disguised_ads.txt',
  41. 'https://raw.githubusercontent.com/AdguardTeam/cname-trackers/master/data/combined_disguised_trackers.txt',
  42. 'https://raw.githubusercontent.com/AdguardTeam/cname-trackers/master/data/combined_disguised_clickthroughs.txt',
  43. 'https://raw.githubusercontent.com/AdguardTeam/cname-trackers/master/data/combined_disguised_microsites.txt',
  44. // uBlock Origin Filter List
  45. [
  46. 'https://ublockorigin.github.io/uAssets/filters/filters.txt',
  47. [
  48. 'https://ublockorigin.github.io/uAssetsCDN/filters/filters.txt',
  49. 'https://ublockorigin.pages.dev/filters/filters.txt'
  50. ],
  51. false
  52. ],
  53. [
  54. 'https://ublockorigin.github.io/uAssets/filters/filters-2020.txt',
  55. [
  56. 'https://ublockorigin.github.io/uAssetsCDN/filters/filters-2020.txt',
  57. 'https://ublockorigin.pages.dev/filters/filters-2020.txt'
  58. ],
  59. false
  60. ],
  61. [
  62. 'https://ublockorigin.github.io/uAssets/filters/filters-2021.txt',
  63. [
  64. 'https://ublockorigin.github.io/uAssetsCDN/filters/filters-2021.txt',
  65. 'https://ublockorigin.pages.dev/filters/filters-2021.txt'
  66. ],
  67. false
  68. ],
  69. [
  70. 'https://ublockorigin.github.io/uAssets/filters/filters-2022.txt',
  71. [
  72. 'https://ublockorigin.github.io/uAssetsCDN/filters/filters-2022.txt',
  73. 'https://ublockorigin.pages.dev/filters/filters-2022.txt'
  74. ],
  75. false
  76. ],
  77. [
  78. 'https://ublockorigin.github.io/uAssets/filters/filters-2023.txt',
  79. [
  80. 'https://ublockorigin.github.io/uAssetsCDN/filters/filters-2023.txt',
  81. 'https://ublockorigin.pages.dev/filters/filters-2023.txt'
  82. ],
  83. false
  84. ],
  85. // uBlock Origin Badware Risk List
  86. [
  87. 'https://ublockorigin.github.io/uAssets/filters/badware.txt',
  88. [
  89. 'https://ublockorigin.github.io/uAssetsCDN/filters/badware.txt',
  90. 'https://ublockorigin.pages.dev/filters/badware.txt'
  91. ],
  92. false
  93. ],
  94. // uBlock Origin Privacy List
  95. [
  96. 'https://ublockorigin.github.io/uAssets/filters/privacy.txt',
  97. [
  98. 'https://ublockorigin.github.io/uAssetsCDN/filters/privacy.txt',
  99. 'https://ublockorigin.pages.dev/filters/privacy.txt'
  100. ],
  101. false
  102. ],
  103. // uBlock Origin Resource Abuse
  104. [
  105. 'https://ublockorigin.github.io/uAssets/filters/resource-abuse.txt',
  106. [
  107. 'https://ublockorigin.github.io/uAssetsCDN/filters/resource-abuse.txt',
  108. 'https://ublockorigin.pages.dev/filters/resource-abuse.txt'
  109. ],
  110. false
  111. ],
  112. // uBlock Origin Unbreak
  113. [
  114. 'https://ublockorigin.github.io/uAssets/filters/unbreak.txt',
  115. [
  116. 'https://ublockorigin.github.io/uAssetsCDN/filters/unbreak.txt',
  117. 'https://ublockorigin.pages.dev/filters/unbreak.txt'
  118. ],
  119. false
  120. ],
  121. // AdGuard Base Filter
  122. 'https://filters.adtidy.org/extension/ublock/filters/2_without_easylist.txt',
  123. // AdGuard Mobile AD
  124. 'https://filters.adtidy.org/extension/ublock/filters/11_optimized.txt',
  125. // AdGuard Tracking Protection
  126. 'https://filters.adtidy.org/extension/ublock/filters/3_optimized.txt',
  127. // AdGuard Japanese filter
  128. 'https://filters.adtidy.org/extension/ublock/filters/7_optimized.txt',
  129. // AdGuard Chinese filter (EasyList China + AdGuard Chinese filter)
  130. 'https://filters.adtidy.org/extension/ublock/filters/224_optimized.txt',
  131. // AdGuard Annoyances filter
  132. 'https://filters.adtidy.org/android/filters/14_optimized.txt',
  133. // EasyList Germany filter
  134. [
  135. 'https://easylist.to/easylistgermany/easylistgermany.txt',
  136. [
  137. 'https://easylist-downloads.adblockplus.org/easylistgermany.txt'
  138. ],
  139. false
  140. ],
  141. // Curben's UrlHaus Malicious URL Blocklist
  142. [
  143. 'https://curbengh.github.io/urlhaus-filter/urlhaus-filter-agh-online.txt',
  144. [
  145. 'https://urlhaus-filter.pages.dev/urlhaus-filter-agh-online.txt'
  146. // Prefer mirror, since malware-filter.gitlab.io has not been updated for a while
  147. // 'https://malware-filter.gitlab.io/urlhaus-filter/urlhaus-filter-agh-online.txt'
  148. ],
  149. false
  150. ],
  151. // Curben's Phishing URL Blocklist
  152. [
  153. 'https://curbengh.github.io/phishing-filter/phishing-filter-agh.txt',
  154. [
  155. 'https://phishing-filter.pages.dev/phishing-filter-agh.txt'
  156. // Prefer mirror, since malware-filter.gitlab.io has not been updated for a while
  157. // 'https://malware-filter.gitlab.io/malware-filter/phishing-filter-agh.txt'
  158. ],
  159. false
  160. ],
  161. // Curben's PUP Domains Blocklist
  162. [
  163. 'https://curbengh.github.io/pup-filter/pup-filter-agh.txt',
  164. [
  165. 'https://pup-filter.pages.dev/pup-filter-agh.txt'
  166. // Prefer mirror, since malware-filter.gitlab.io has not been updated for a while
  167. // 'https://malware-filter.gitlab.io/malware-filter/pup-filter-agh.txt'
  168. ],
  169. false
  170. ],
  171. // GameConsoleAdblockList
  172. 'https://raw.githubusercontent.com/DandelionSprout/adfilt/master/GameConsoleAdblockList.txt',
  173. // PiHoleBlocklist
  174. 'https://raw.githubusercontent.com/Perflyst/PiHoleBlocklist/master/SmartTV-AGH.txt',
  175. // Spam404
  176. 'https://raw.githubusercontent.com/Spam404/lists/master/adblock-list.txt',
  177. // BarbBlock
  178. 'https://paulgb.github.io/BarbBlock/blacklists/ublock-origin.txt',
  179. // Brave First Party & First Party CNAME
  180. 'https://raw.githubusercontent.com/brave/adblock-lists/master/brave-lists/brave-firstparty.txt',
  181. 'https://raw.githubusercontent.com/brave/adblock-lists/master/brave-lists/brave-firstparty-cname.txt',
  182. 'https://raw.githubusercontent.com/brave/adblock-lists/master/coin-miners.txt'
  183. ]);
  184. const PREDEFINED_WHITELIST = [
  185. 'localhost',
  186. 'broadcasthost',
  187. 'ip6-loopback',
  188. 'ip6-localnet',
  189. 'ip6-mcastprefix',
  190. 'ip6-allnodes',
  191. 'ip6-allrouters',
  192. 'ip6-allhosts',
  193. 'mcastprefix',
  194. 'skk.moe',
  195. 'analytics.google.com',
  196. 'msa.cdn.mediaset.net', // Added manually using DOMAIN-KEYWORDS
  197. 'cloud.answerhub.com',
  198. 'ae01.alicdn.com',
  199. 'whoami.akamai.net',
  200. 'whoami.ds.akahelp.net',
  201. 'pxlk9.net.', // This one is malformed from EasyList, which I will manually add instead
  202. 'instant.page', // No, it doesn't violate anyone's privacy. I will whitelist it
  203. 'piwik.pro',
  204. 'mixpanel.com',
  205. 'cdn.mxpnl.com',
  206. 'heapanalytics.com',
  207. 'segment.com',
  208. 'segmentify.com',
  209. 't.co', // pgl yoyo add t.co to the blacklist
  210. 'survicate.com', // AdGuardDNSFilter
  211. 'perfops.io', // AdGuardDNSFilter
  212. 'd2axgrpnciinw7.cloudfront.net', // ADGuardDNSFilter
  213. 'tb-lb.sb-cd.com', // AdGuard
  214. 'storage.yandexcloud.net', // phishing list
  215. 'login.microsoftonline.com', // phishing list
  216. 'api.xiaomi.com', // https://github.com/jerryn70/GoodbyeAds/issues/281
  217. 'api.io.mi.com', // https://github.com/jerryn70/GoodbyeAds/issues/281
  218. 'cdn.userreport.com', // https://github.com/AdguardTeam/AdGuardSDNSFilter/issues/1158
  219. 'ip-api.com',
  220. 'fastly-analytics.com',
  221. 'syd1.digitaloceanspaces.com',
  222. 's3.nl-ams.scw.cloud',
  223. 'geolocation-db.com',
  224. 'uploads.codesandbox.io',
  225. // Affect Windows ISO download
  226. // https://raw.githubusercontent.com/AdguardTeam/cname-trackers/master/data/combined_disguised_trackers.txt
  227. 'vlscppe.microsoft.com'
  228. ];
  229. const PREDEFINED_ENFORCED_BACKLIST = [
  230. 'telemetry.mozilla.org'
  231. ];
  232. const PREDEFINED_ENFORCED_WHITELIST = [
  233. 'godaddysites.com',
  234. 'web.app',
  235. 'firebaseapp.com',
  236. 'ipfs.nftstorage.link',
  237. 'ipfs.4everland.io',
  238. 'ipfs.cf-ipfs.com',
  239. 'ipfs.dweb.link',
  240. 'ipfs.infura-ipfs.io',
  241. 'ipfs.fleek.cool',
  242. 'repl.co',
  243. 'w3s.link',
  244. 'translate.goog',
  245. 'backblazeb2.com',
  246. 'workers.dev',
  247. 'r2.dev',
  248. 'glitch.me',
  249. 'netlify.app',
  250. 'blogspot.com',
  251. 'appspot.com'
  252. ];
  253. module.exports.HOSTS = HOSTS;
  254. module.exports.ADGUARD_FILTERS = ADGUARD_FILTERS;
  255. module.exports.PREDEFINED_WHITELIST = PREDEFINED_WHITELIST;
  256. module.exports.PREDEFINED_ENFORCED_BACKLIST = PREDEFINED_ENFORCED_BACKLIST;
  257. module.exports.PREDEFINED_ENFORCED_WHITELIST = PREDEFINED_ENFORCED_WHITELIST;