2021-03-31 10:53:42 +00:00
# PUP Domains Blocklist
2023-05-13 07:59:30 +00:00
Update (2023-05-10): Daily update of this blocklist has been paused while waiting for the upstream maintainer to complete migrating https://github.com/zhouhanc/malware-discoverer to https://malwarediscoverer.com. No ETC is given. See [issue #2 ](https://gitlab.com/malware-filter/pup-filter/-/issues/2 ). Other malware-filter blocklists are not affected.
2023-05-10 10:56:57 +00:00
2022-11-01 08:22:53 +00:00
- Formats
2022-11-20 01:37:09 +00:00
- [URL-based ](#url-based )
- [Domain-based ](#domain-based )
- [Hosts-based ](#hosts-based )
- [Domain-based (AdGuard Home) ](#domain-based-adguard-home )
- [URL-based (AdGuard) ](#url-based-adguard )
- [URL-based (Vivaldi) ](#url-based-vivaldi )
- [Dnsmasq ](#dnsmasq )
- [BIND zone ](#bind )
- [RPZ ](#response-policy-zone )
- [Unbound ](#unbound )
- [dnscrypt-proxy ](#dnscrypt-proxy )
- [Tracking Protection List (IE) ](#tracking-protection-list-ie )
- [Snort2 ](#snort2 )
- [Snort3 ](#snort3 )
- [Suricata ](#suricata )
2022-12-17 00:33:17 +00:00
- [Splunk ](#splunk )
2022-11-01 08:22:53 +00:00
- [Compressed version ](#compressed-version )
- [Reporting issues ](#issues )
- [FAQ and Guides ](#faq-and-guides )
- [CI Variables ](#ci-variables )
- [License ](#license )
2022-01-08 06:01:13 +00:00
2021-03-31 10:53:42 +00:00
A blocklist of domains that host potentially unwanted programs (PUP), based on the [malware-discoverer ](https://github.com/zhouhanc/malware-discoverer ). Blocklist is updated twice a day.
2023-07-26 11:25:28 +00:00
| Client | mirror 1 | mirror 2 | mirror 3 | mirror 4 | mirror 5 | mirror 6 |
| ------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- |
| uBlock Origin, [IP-based ](#ip-based ) | [link ](https://malware-filter.gitlab.io/malware-filter/pup-filter.txt ) | [link ](https://curbengh.github.io/malware-filter/pup-filter.txt ) | [link ](https://curbengh.github.io/pup-filter/pup-filter.txt ) | [link ](https://malware-filter.gitlab.io/pup-filter/pup-filter.txt ) | [link ](https://malware-filter.pages.dev/pup-filter.txt ) | [link ](https://pup-filter.pages.dev/pup-filter.txt ) |
| [Pi-hole ](#domain-based ) | [link ](https://malware-filter.gitlab.io/malware-filter/pup-filter-domains.txt ) | [link ](https://curbengh.github.io/malware-filter/pup-filter-domains.txt ) | [link ](https://curbengh.github.io/pup-filter/pup-filter-domains.txt ) | [link ](https://malware-filter.gitlab.io/pup-filter/pup-filter-domains.txt ) | [link ](https://malware-filter.pages.dev/pup-filter-domains.txt ) | [link ](https://pup-filter.pages.dev/pup-filter-domains.txt ) |
| [AdGuard Home ](#domain-based-adguard-home ) | [link ](https://malware-filter.gitlab.io/malware-filter/pup-filter-agh.txt ) | [link ](https://curbengh.github.io/malware-filter/pup-filter-agh.txt ) | [link ](https://curbengh.github.io/pup-filter/pup-filter-agh.txt ) | [link ](https://malware-filter.gitlab.io/pup-filter/pup-filter-agh.txt ) | [link ](https://malware-filter.pages.dev/pup-filter-agh.txt ) | [link ](https://pup-filter.pages.dev/pup-filter-agh.txt ) |
| [AdGuard (browser extension) ](#ip-based-adguard ) | [link ](https://malware-filter.gitlab.io/malware-filter/pup-filter-ag.txt ) | [link ](https://curbengh.github.io/malware-filter/pup-filter-ag.txt ) | [link ](https://curbengh.github.io/pup-filter/pup-filter-ag.txt ) | [link ](https://malware-filter.gitlab.io/pup-filter/pup-filter-ag.txt ) | [link ](https://malware-filter.pages.dev/pup-filter-ag.txt ) | [link ](https://pup-filter.pages.dev/pup-filter-ag.txt ) |
| [Vivaldi ](#ip-based-vivaldi ) | [link ](https://malware-filter.gitlab.io/malware-filter/pup-filter-vivaldi.txt ) | [link ](https://curbengh.github.io/malware-filter/pup-filter-vivaldi.txt ) | [link ](https://curbengh.github.io/pup-filter/pup-filter-vivaldi.txt ) | [link ](https://malware-filter.gitlab.io/pup-filter/pup-filter-vivaldi.txt ) | [link ](https://malware-filter.pages.dev/pup-filter-vivaldi.txt ) | [link ](https://pup-filter.pages.dev/pup-filter-vivaldi.txt ) |
| [Hosts ](#hosts-based ) | [link ](https://malware-filter.gitlab.io/malware-filter/pup-filter-hosts.txt ) | [link ](https://curbengh.github.io/malware-filter/pup-filter-hosts.txt ) | [link ](https://curbengh.github.io/pup-filter/pup-filter-hosts.txt ) | [link ](https://malware-filter.gitlab.io/pup-filter/pup-filter-hosts.txt ) | [link ](https://malware-filter.pages.dev/pup-filter-hosts.txt ) | [link ](https://pup-filter.pages.dev/pup-filter-hosts.txt ) |
| [Dnsmasq ](#dnsmasq ) | [link ](https://malware-filter.gitlab.io/malware-filter/pup-filter-dnsmasq.conf ) | [link ](https://curbengh.github.io/malware-filter/pup-filter-dnsmasq.conf ) | [link ](https://curbengh.github.io/pup-filter/pup-filter-dnsmasq.conf ) | [link ](https://malware-filter.gitlab.io/pup-filter/pup-filter-dnsmasq.conf ) | [link ](https://malware-filter.pages.dev/pup-filter-dnsmasq.conf ) | [link ](https://pup-filter.pages.dev/pup-filter-dnsmasq.conf ) |
| BIND [zone ](#bind ) | [link ](https://malware-filter.gitlab.io/malware-filter/pup-filter-bind.conf ) | [link ](https://curbengh.github.io/malware-filter/pup-filter-bind.conf ) | [link ](https://curbengh.github.io/pup-filter/pup-filter-bind.conf ) | [link ](https://malware-filter.gitlab.io/pup-filter/pup-filter-bind.conf ) | [link ](https://malware-filter.pages.dev/pup-filter-bind.conf ) | [link ](https://pup-filter.pages.dev/pup-filter-bind.conf ) |
| BIND [RPZ ](#response-policy-zone ) | [link ](https://malware-filter.gitlab.io/malware-filter/pup-filter-rpz.conf ) | [link ](https://curbengh.github.io/malware-filter/pup-filter-rpz.conf ) | [link ](https://curbengh.github.io/pup-filter/pup-filter-rpz.conf ) | [link ](https://malware-filter.gitlab.io/pup-filter/pup-filter-rpz.conf ) | [link ](https://malware-filter.pages.dev/pup-filter-rpz.conf ) | [link ](https://pup-filter.pages.dev/pup-filter-rpz.conf ) |
| [dnscrypt-proxy ](#dnscrypt-proxy ) | [names.txt ](https://malware-filter.gitlab.io/malware-filter/pup-filter-dnscrypt-blocked-names.txt ) | [names.txt ](https://curbengh.github.io/malware-filter/pup-filter-dnscrypt-blocked-names.txt ) | [names.txt ](https://curbengh.github.io/pup-filter/pup-filter-dnscrypt-blocked-names.txt ) | [names.txt ](https://malware-filter.gitlab.io/pup-filter/pup-filter-dnscrypt-blocked-names.txt ) | [names.txt ](https://malware-filter.pages.dev/pup-filter-dnscrypt-blocked-names.txt ) | [names.txt ](https://pup-filter.pages.dev/pup-filter-dnscrypt-blocked-names.txt ) |
| [Internet Explorer ](#tracking-protection-list-ie ) | [link ](https://malware-filter.gitlab.io/malware-filter/pup-filter.tpl ) | [link ](https://curbengh.github.io/malware-filter/pup-filter.tpl ) | [link ](https://curbengh.github.io/pup-filter/pup-filter.tpl ) | [link ](https://malware-filter.gitlab.io/pup-filter/pup-filter.tpl ) | [link ](https://malware-filter.pages.dev/pup-filter.tpl ) | [link ](https://pup-filter.pages.dev/pup-filter.tpl ) |
| [Snort2 ](#snort2 ) | [link ](https://malware-filter.gitlab.io/malware-filter/pup-filter-snort2.rules ) | [link ](https://curbengh.github.io/malware-filter/pup-filter-snort2.rules ) | [link ](https://curbengh.github.io/pup-filter/pup-filter-snort2.rules ) | [link ](https://malware-filter.gitlab.io/pup-filter/pup-filter-snort2.rules ) | [link ](https://malware-filter.pages.dev/pup-filter-snort2.rules ) | [link ](https://pup-filter.pages.dev/pup-filter-snort2.rules ) |
| [Snort3 ](#snort3 ) | [link ](https://malware-filter.gitlab.io/malware-filter/pup-filter-snort3.rules ) | [link ](https://curbengh.github.io/malware-filter/pup-filter-snort3.rules ) | [link ](https://curbengh.github.io/pup-filter/pup-filter-snort3.rules ) | [link ](https://malware-filter.gitlab.io/pup-filter/pup-filter-snort3.rules ) | [link ](https://malware-filter.pages.dev/pup-filter-snort3.rules ) | [link ](https://pup-filter.pages.dev/pup-filter-snort3.rules ) |
| [Suricata ](#suricata ) | [link ](https://malware-filter.gitlab.io/malware-filter/pup-filter-suricata.rules ) | [link ](https://curbengh.github.io/malware-filter/pup-filter-suricata.rules ) | [link ](https://curbengh.github.io/pup-filter/pup-filter-suricata.rules ) | [link ](https://malware-filter.gitlab.io/pup-filter/pup-filter-suricata.rules ) | [link ](https://malware-filter.pages.dev/pup-filter-suricata.rules ) | [link ](https://pup-filter.pages.dev/pup-filter-suricata.rules ) |
| [Splunk ](#splunk ) | [link ](https://malware-filter.gitlab.io/malware-filter/pup-filter-splunk.csv ) | [link ](https://curbengh.github.io/malware-filter/pup-filter-splunk.csv ) | [link ](https://curbengh.github.io/pup-filter/pup-filter-splunk.csv ) | [link ](https://malware-filter.gitlab.io/pup-filter/pup-filter-splunk.csv ) | [link ](https://malware-filter.pages.dev/pup-filter-splunk.csv ) | [link ](https://pup-filter.pages.dev/pup-filter-splunk.csv ) |
2021-03-31 10:53:42 +00:00
2022-12-17 00:51:30 +00:00
For other programs, see [Compatibility ](https://gitlab.com/malware-filter/malware-filter/wikis/compatibility ) page in the wiki.
2021-03-31 10:53:42 +00:00
2021-06-01 10:05:07 +00:00
Check out my other filters:
2022-05-21 03:06:48 +00:00
- [urlhaus-filter ](https://gitlab.com/malware-filter/urlhaus-filter )
- [phishing-filter ](https://gitlab.com/malware-filter/phishing-filter )
- [tracking-filter ](https://gitlab.com/malware-filter/tracking-filter )
2022-12-17 00:51:30 +00:00
- [vn-badsite-filter ](https://gitlab.com/malware-filter/vn-badsite-filter )
2021-03-31 10:53:42 +00:00
## URL-based
2023-07-26 11:25:28 +00:00
Import the link into uBO's filter list to subscribe.
2021-03-31 10:53:42 +00:00
2022-01-02 01:28:37 +00:00
_included by default in uBO >=[1.39.0](https://github.com/gorhill/uBlock/releases/tag/1.39.0); to enable, head to "Filter lists" tab, expand "Malware domains" section and tick "PUP URL Blocklist"._
2021-03-31 10:53:42 +00:00
## URL-based (AdGuard)
2023-07-26 11:25:28 +00:00
Import the link into AdGuard browser extension to subscribe.
2021-03-31 10:53:42 +00:00
## URL-based (Vivaldi)
_Requires Vivaldi Desktop/Android 3.3+, blocking level must be at least "Block Trackers"_
2023-07-26 11:25:28 +00:00
Import the link into Vivaldi's **Tracker Blocking Sources** to subscribe.
2021-03-31 10:53:42 +00:00
## Domain-based
This blocklist includes domains and IP addresses.
## Domain-based (AdGuard Home)
This AdGuard Home-compatible blocklist includes domains and IP addresses.
## Hosts-based
This blocklist includes domains only.
## Dnsmasq
This blocklist includes domains only.
2022-12-17 05:56:17 +00:00
Save the ruleset to "/usr/local/etc/dnsmasq/pup-filter-dnsmasq.conf". Refer to this [guide ](https://gitlab.com/malware-filter/malware-filter/wikis/update-filter ) for auto-update.
2021-03-31 10:53:42 +00:00
2022-12-17 05:56:17 +00:00
Configure dnsmasq to use the blocklist:
2021-03-31 10:53:42 +00:00
2022-12-17 05:56:17 +00:00
`printf "\nconf-file=/usr/local/etc/dnsmasq/pup-filter-dnsmasq.conf\n" >> /etc/dnsmasq.conf`
2021-03-31 10:53:42 +00:00
## BIND
This blocklist includes domains only.
2022-12-17 05:56:17 +00:00
Save the ruleset to "/usr/local/etc/bind/pup-filter-bind.conf". Refer to this [guide ](https://gitlab.com/malware-filter/malware-filter/wikis/update-filter ) for auto-update.
2021-03-31 10:53:42 +00:00
2022-12-17 05:56:17 +00:00
Configure BIND to use the blocklist:
2021-03-31 10:53:42 +00:00
2022-12-17 05:56:17 +00:00
`printf '\ninclude "/usr/local/etc/bind/pup-filter-bind.conf";\n' >> /etc/bind/named.conf`
2021-03-31 10:53:42 +00:00
Add this to "/etc/bind/null.zone.file" (skip this step if the file already exists):
```
$TTL 86400 ; one day
@ IN SOA ns.nullzone.loc. ns.nullzone.loc. (
2017102203
28800
7200
864000
86400 )
NS ns.nullzone.loc.
A 0.0.0.0
@ IN A 0.0.0.0
* IN A 0.0.0.0
```
Zone file is derived from [here ](https://github.com/tomzuu/blacklist-named/blob/master/null.zone.file ).
2021-04-01 04:29:18 +00:00
## Response Policy Zone
This blocklist includes domains only.
2021-03-31 10:53:42 +00:00
## Unbound
This blocklist includes domains only.
2022-12-17 05:56:17 +00:00
Save the rulesets to "/usr/local/etc/unbound/pup-filter-unbound.conf". Refer to this [guide ](https://gitlab.com/malware-filter/malware-filter/wikis/update-filter ) for auto-update.
2021-03-31 10:53:42 +00:00
2022-12-17 05:56:17 +00:00
Configure Unbound to use the blocklist:
2021-03-31 10:53:42 +00:00
2022-12-17 05:56:17 +00:00
`printf '\n include: "/usr/local/etc/unbound/pup-filter-unbound.conf"\n' >> /etc/unbound/unbound.conf`
2021-03-31 10:53:42 +00:00
2021-07-18 10:15:33 +00:00
## dnscrypt-proxy
2022-12-17 05:56:17 +00:00
Save the rulesets to "/etc/dnscrypt-proxy/". Refer to this [guide ](https://gitlab.com/malware-filter/malware-filter/wikis/update-filter ) for auto-update.
2021-07-18 10:15:33 +00:00
Configure dnscrypt-proxy to use the blocklist:
2022-11-20 01:37:09 +00:00
```diff
2021-07-18 10:15:33 +00:00
[blocked_names]
+ blocked_names_file = '/etc/dnscrypt-proxy/pup-filter-dnscrypt-blocked-names.txt'
```
2021-03-31 10:53:42 +00:00
## Tracking Protection List (IE)
This blocklist includes domains only.
## Snort2
2022-12-17 00:33:17 +00:00
Not compatible with [Snort3 ](#snort3 ).
2021-03-31 10:53:42 +00:00
2022-12-17 05:56:17 +00:00
Save the ruleset to "/etc/snort/rules/pup-filter-snort2.rules". Refer to this [guide ](https://gitlab.com/malware-filter/malware-filter/wikis/update-filter ) for auto-update.
2021-03-31 10:53:42 +00:00
2022-12-17 05:56:17 +00:00
Configure Snort to use the ruleset:
2021-03-31 10:53:42 +00:00
2022-12-17 05:56:17 +00:00
`printf "\ninclude \$RULE_PATH/pup-filter-snort2.rules\n" >> /etc/snort/snort.conf`
2021-03-31 10:53:42 +00:00
## Snort3
2022-12-17 00:33:17 +00:00
Not compatible with [Snort2 ](#snort2 ).
2021-03-31 10:53:42 +00:00
2022-12-17 05:56:17 +00:00
Save the ruleset to "/etc/snort/rules/pup-filter-snort3.rules". Refer to this [guide ](https://gitlab.com/malware-filter/malware-filter/wikis/update-filter ) for auto-update.
2021-03-31 10:53:42 +00:00
Configure Snort to use the ruleset:
2022-11-20 01:37:09 +00:00
```diff
2021-03-31 10:53:42 +00:00
# /etc/snort/snort.lua
ips =
{
variables = default_variables,
+ include = 'rules/pup-filter-snort3.rules'
}
```
## Suricata
2022-12-17 05:56:17 +00:00
Save the ruleset to "/etc/suricata/rules/pup-filter-suricata.rules". Refer to this [guide ](https://gitlab.com/malware-filter/malware-filter/wikis/update-filter ) for auto-update.
2021-03-31 10:53:42 +00:00
Configure Suricata to use the ruleset:
2022-11-20 01:37:09 +00:00
```diff
2021-03-31 10:53:42 +00:00
# /etc/suricata/suricata.yaml
rule-files:
- local.rules
+ - pup-filter-suricata.rules
```
2022-12-17 00:33:17 +00:00
## Splunk
2023-07-26 11:25:28 +00:00
A CSV file for Splunk [lookup ](https://docs.splunk.com/Documentation/Splunk/latest/Knowledge/Aboutlookupsandfieldactions ).
Either upload the file via GUI or save the file in `$SPLUNK_HOME/Splunk/etc/system/lookups` or app-specific `$SPLUNK_HOME/etc/YourApp/apps/search/lookups` .
2022-12-17 00:33:17 +00:00
2023-07-26 11:25:28 +00:00
Or use [malware-filter add-on ](https://splunkbase.splunk.com/app/6970 ) to install this lookup and optionally auto-update it.
2022-12-17 05:56:17 +00:00
2022-12-21 07:36:06 +00:00
Columns:
| host | path | message | updated |
| ------------ | ---------- | ------------------------------- | -------------------- |
| example.com | | pup-filter PUP website detected | 2022-12-21T12:34:56Z |
| example2.com | /some-path | pup-filter PUP website detected | 2022-12-21T12:34:56Z |
2022-11-01 08:22:53 +00:00
## Compressed version
All filters are also available as gzip- and brotli-compressed.
2022-11-02 10:37:02 +00:00
- Gzip: https://malware-filter.gitlab.io/malware-filter/pup-filter.txt.gz
- Brotli: https://malware-filter.gitlab.io/malware-filter/pup-filter.txt.br
2022-11-01 08:22:53 +00:00
2021-03-31 10:53:42 +00:00
## Issues
This blocklist operates by blocking the **whole** website, popular websites are excluded from the filters.
2022-11-20 01:37:09 +00:00
_Popular_ websites are as listed in the [Umbrella Popularity List ](https://s3-us-west-1.amazonaws.com/umbrella-static/index.html ) (top 1M domains + subdomains), [Tranco List ](https://tranco-list.eu/ ) (top 1M domains), [Cloudflare Radar ](https://developers.cloudflare.com/radar/investigate/domain-ranking-datasets/ ) (top 1M domains) and this [custom list ](src/exclude.txt ).
2021-03-31 10:53:42 +00:00
2022-05-21 03:06:48 +00:00
If you wish to exclude certain website(s) that you believe is sufficiently well-known, please create an [issue ](https://gitlab.com/malware-filter/pup-filter/issues ) or [merge request ](https://gitlab.com/malware-filter/pup-filter/merge_requests ).
2021-03-31 10:53:42 +00:00
This blocklist **only** accepts new malicious URLs from [malware-discoverer ](https://github.com/zhouhanc/malware-discoverer ).
2022-01-11 06:33:52 +00:00
## FAQ and Guides
2022-05-21 03:06:48 +00:00
See [wiki ](https://gitlab.com/malware-filter/malware-filter/-/wikis/home )
2022-01-11 06:33:52 +00:00
2022-11-01 08:22:53 +00:00
## CI Variables
Optional variables:
- `CLOUDFLARE_BUILD_HOOK` : Deploy to Cloudflare Pages.
- `NETLIFY_SITE_ID` : Deploy to Netlify.
2022-11-20 01:37:09 +00:00
- `CF_API` : Include Cloudflare Radar [domains ranking ](https://developers.cloudflare.com/radar/investigate/domain-ranking-datasets/ ). [Guide ](https://developers.cloudflare.com/radar/get-started/first-request/ ) to create an API token.
2022-11-01 08:22:53 +00:00
2023-06-05 08:05:05 +00:00
## Repository Mirrors
https://gitlab.com/curben/blog#repository-mirrors
2021-03-31 10:53:42 +00:00
## License
2023-04-27 09:28:21 +00:00
[src/ ](src/ ): [Creative Commons Zero v1.0 Universal ](LICENSE-CC0.md ) and [MIT License ](LICENSE )
2021-03-31 10:53:42 +00:00
2022-01-08 06:01:13 +00:00
filters: Derived from [malware-discoverer ](https://github.com/zhouhanc/malware-discoverer ) with [Zhouhan Chen ](https://zhouhanc.com/ )'s permission
2021-03-31 10:53:42 +00:00
2021-04-03 03:00:23 +00:00
[malware-discoverer ](https://github.com/zhouhanc/malware-discoverer ): All rights reserved by [Zhouhan Chen ](https://zhouhanc.com/ )
2021-03-31 10:53:42 +00:00
[Tranco List ](https://tranco-list.eu/ ): MIT License
[Umbrella Popularity List ](https://s3-us-west-1.amazonaws.com/umbrella-static/index.html ): Available free of charge by Cisco Umbrella
2022-11-20 01:37:09 +00:00
[Cloudflare Radar ](https://developers.cloudflare.com/radar/investigate/domain-ranking-datasets/ ): Available to free Cloudflare account