Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

duden.de: detection #16430

Closed
8 of 9 tasks
AstragoDE opened this issue Jan 20, 2023 · 9 comments
Closed
8 of 9 tasks

duden.de: detection #16430

AstragoDE opened this issue Jan 20, 2023 · 9 comments

Comments

@AstragoDE
Copy link

Prerequisites

  • I read and understand the policy about what is a valid filter issue.
  • I verified that this issue is not a duplicate. (Use this button to find out.)
  • I forced an update of my filter lists. (Click the "Purge all caches" button while holding the 'Shift' key, then click the "Update now" button.)
  • I did not remove any of the default filter lists, or I have verified that the issue was not caused by removing any of the default lists.
  • I did not enable external filter lists, or I have verified that the issue still occurs without enabling external filter lists.
  • I do not have custom filters/rules, or I have verified that the issue still occurs without custom filters/rules.
  • I am not using uBlock Origin (uBO) along with other similarly-purposed blockers.
  • I have verified that the web browser's built-in blocker or DNS blocking (standalone or through a VPN) is not causing the issue.
  • I did not answer truthfully to ALL the above checkpoints.

URL address of the web page

https://www.duden.de/

Category

detection

Description

Duden detects the ad blocker when I visit the website.

Screenshot(s)

Screenshot(s)

image

Configuration

uBlock Origin: 1.46.0
Firefox: 109
filterset (summary): 
  network: 143474
  cosmetic: 89609
  scriptlet: 33481
  html: 996
listset (total-discarded, last-updated): 
  removed: 
    plowe-0: null
  added: 
    https://get.letsblock.it/list/72b6fe83-6670-4913-b2c7-0f9bc9a97d71: 5839-4, now
    https://raw.github.com/reek/anti-adblock-killer/master/anti-adblock-killer-filters.txt: 0-0, now
    adguard-generic: 67810-5874, now
    adguard-mobile: 8714-18, now
    adguard-spyware-url: 886-4, now
    block-lan: 44-0, now
    curben-phishing: 19649-0, now
    curben-pup: 187-0, now
    ublock-annoyances: 4750-4, now
    DEU-0: 6142-1, now
    https://filters.adtidy.org/extension/ublock/filters/3.txt: 36809-3758, never
  default: 
    user-filters: 34-0, never
    ublock-filters: 32697-113, now
    ublock-badware: 4364-5, now
    ublock-privacy: 305-0, now
    ublock-abuse: 77-0, now
    ublock-unbreak: 1910-2, now
    ublock-quick-fixes: 504-0, now
    easylist: 62162-526, now
    easyprivacy: 30950-12227, now
    urlhaus-1: 6526-0, now
filterset (user): [array of 34 redacted]
trustedset: 
  added: [array of 6 redacted]
  removed: 
    about-scheme
    chrome-scheme
    moz-extension-scheme
switchRuleset: 
  added: [array of 42 redacted]
  removed: 
    no-csp-reports: * true
modifiedUserSettings: 
  cloudStorageEnabled: true
  contextMenuEnabled: false
  showIconBadge: false
modifiedHiddenSettings: [none]
supportStats: 
  allReadyAfter: 624 ms (selfie)
  maxAssetCacheWait: 499 ms
popupPanel: 
  blocked: 4
  blockedDetails: 
    duden.de: 1
    doubleclick.net: 1
    yieldlove.com: 2
@JobcenterTycoon
Copy link
Contributor

I get no detection

@okiehsch
Copy link
Contributor

Me neither.

@JobcenterTycoon
Copy link
Contributor

I see they changed detectaab to checkAab to counter the scriptlet but the adblock detection is still defused by the whitelist filter.

Its not a inline script so the entire detection stuff can be blocked with ||duden.de/modules/custom/duden_ads/

@okiehsch
Copy link
Contributor

If you think it is worthwhile, block it.

@JobcenterTycoon
Copy link
Contributor

I also updated the scriptlet and excluded mentor.duden.de to be sure

@AstragoDE
Copy link
Author

It works now. Thank you.

@JobcenterTycoon
Copy link
Contributor

Maybe the no-fetch-if scriptlet can be improved to cover cases like this. There are 2 ways which sites use to check if a request got blocked or defused by uBO

response.url: Should be the blocked URL. uBO returns a empty string.
The length of response.text() should be extendable. uBO returns 0 length.

A example detection script:

async function detectAdblock() {
    try{
        var googlead = 'https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js';
        var response = await fetch(googlead);
        var result = await response.text();
        if (result.length < 1000) {
            console.log("Adblock detected! response length is " + result.length + " but it should be larger than 1.000" );
        }
        if (response.url != googlead) {
            console.log("Adblock detected! response URL is " + response.url + " but it should be " + googlead);
        }
    }catch(e){
        console.log("Adblock detected! The request got blocked");
    }finally{
        // Unbreak the site when the script got executed
    }
  }
detectAdblock();

Real world cases:

duden.de - response.url checking
theappstore.org - response.text() length checking
aosmark.com - response.text() length checking

related Adguard issue: AdguardTeam/Scriptlets#216

@gorhill

@hrrd
Copy link

hrrd commented Feb 7, 2023

i also got a detection. How to bypass?

@JobcenterTycoon
Copy link
Contributor

@hrrd it got fixed now. Force update the filter lists to get the fix directly

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants