uBlockOrigin / uAssets

Resources for uBlock Origin, uMatrix: static filter lists, ready-to-use rulesets, etc.
GNU General Public License v3.0
4.07k stars 762 forks source link

[Anti-adblock] washingtonpost.com #5070

Closed Woofy-Wolf closed 5 years ago

Woofy-Wolf commented 5 years ago

URL(s) where the issue occurs

https://www.washingtonpost.com/technology/2019/03/06/facebooks-mark-zuckerberg-says-hell-reorient-company-towards-encryption-privacy

most washingtonpost.com urls other than the front page

Describe the issue

An anti-adblock notice and overlay appear with a request to unblock ads.

Screenshot(s)

wp-resized

Versions

Settings

All official/included lists except mobile ads filter, plus nano defender & its lists

Notes

washingtonpost.com permits non-subscribers to view x articles for free, IIRC, in which case this issue is not about a paywall. It's about anti-adblocker behavior when the site detects a blocker.

okiehsch commented 5 years ago

Have you tried with an up to date uBO-filters list? I added a fix a few hours ago. https://github.com/uBlockOrigin/uAssets/commit/06363f86b9039157e2ac078467c415c7e4dbe3d6

Woofy-Wolf commented 5 years ago

Hi. I updated the filter and confirmed that your revision is present. The site still serves its anti-adblock response to me. I checked on a second computer that runs old Windows (XP, crazy), FF, & uBO. The anti-adblock overlay began the same day on that pc too. Updating filters didn't help there either.

gitshopping commented 5 years ago

Updated filters and like @Woofy-Wolf I still see the blocker.

My observations: Can disable the anti-adblock by blocking first-party scripts, in which case the page loads but many images are masked. Have not been able to fix by trying to whitelist specific parts of the first party script. Another workaround is immediately stopping the page load after reload, which must stop the page load before the problem script runs. A previously suggested filter of washingtonpost.com##script:inject(abort-on-property-read.js, WpPwapi2) also does not work.

dumbusernameidk commented 5 years ago

Updated my filters and went through a few links on the site and waited no anti-adblock here. Using Chrome v72 latest ublock.

lain566 commented 5 years ago

I can reproduce, if I use a VPN from USA, but I can't reproduce if I use my real IP. https://screenshots.firefox.com/2mSQqrzQuEPxYpV0/www.washingtonpost.com

yourduskquibbles commented 5 years ago

Can you test the following filter and confirm if it works?

washingtonpost.com###drawbridge-signup-overlay, #exposeMask, .jqm-init.arrow_box.story-label-explainer, .jqmOverlay, .overlay-template, .simple-overlay, .modal, .modal-backdrop

gitshopping commented 5 years ago

Does not work for me; thank you though.

yourduskquibbles commented 5 years ago

Did you test with my edit to include .modal, .modal-backdrop?

gitshopping commented 5 years ago

Thanks; .modal, .modal-backdrop must not have pasted in somehow. Added the entire line to my filters and now it partially works.

It removes the blue bar at left. The article is still truncated, and there is a gray mask over it. Using @Woofy-Wolf 's original URL screenshot: https://screenshots.firefox.com/zCNGF5JhGkFp8C0c/www.washingtonpost.com (though same behavior on other pages)

yourduskquibbles commented 5 years ago

I think it is a cookie set by the site triggering the limit, not sure if it is appropriate to fix in uAssets

Possible other things you can try on your end:

  1. Clear cookies
  2. Browse in private browsing
  3. Use an extension like anti-paywall that spoofs user-agent to google bot? You may have to install from github release page because it is removed from extension stores
gitshopping commented 5 years ago

Thanks. Any idea what cookie? I can perhaps whitelist. Third-party tracking cookies are blocked by FF's strict setting. I disabled/changed that to standard but same result. I also have a cookie destruction plug-in, but that only triggers upon leaving the site and I can whitelist there too.

yourduskquibbles commented 5 years ago

You could try blocking all cookies from washingtonpost.com, I haven't tested if that works though

gitshopping commented 5 years ago

Tried switching FF to block all cookies, cleared cookies, and reloaded... No change.

okiehsch commented 5 years ago

Weird, I can't reproduce no matter what IP I use. Does ||washingtonpost.com/pb/api/*/adblocker-feature$xhr,1p work for you?

gitshopping commented 5 years ago

Looks like that fixed it @okiehsch. Many thanks!

Woofy-Wolf commented 5 years ago

||washingtonpost.com/pb/api/*/adblocker-feature$xhr,1p

You nailed it, @okiehsch . Thank you!

reagle commented 5 years ago

I added ||washingtonpost.com/pb/api/*/adblocker-feature$xhr,1p to "My filters" and still see the ad-blocker blocker...? (I also clear my cached and updated my default rules.)

okiehsch commented 5 years ago

It works on my end with an up to date uBlock-filters list. What browser and OS are you using?

reagle commented 5 years ago

Google Chrome 74.0.3729.169 on macOS 10.14.5 (18F132).

Checking uBlock-filters ("16,588 out of 16,605") I see WaPo in the following chunk

! https://www.reddit.com/r/dataisbeautiful/comments/4t4d16/chart_shows_why_pharma_companies_are_fighting/d5ejqc0
! https://github.com/uBlockOrigin/uAssets/issues/2317
! https://github.com/uBlockOrigin/uAssets/issues/5070
washingtonpost.com##+js(abort-on-property-read.js, pwapiPaywallResponse)
washingtonpost.com##+js(addEventListener-defuser.js, pb-adblocked)
||washingtonpost.com/pb/api/*/adblocker-feature$xhr,1p
washingtonpost.com##.adblocker-root
! https://bugzilla.mozilla.org/show_bug.cgi?id=1466730
washingtonpost.com##html:style(overflow: auto !important;)

So it is in there...

okiehsch commented 5 years ago

This is probably a macOS issue, see https://github.com/uBlockOrigin/uAssets/issues/2317#issuecomment-394859470.

An alternative filter fixing the issue on my end is washingtonpost.com##+js(addEventListener-defuser.js, pb-core-loaded, _pvbr_init) you can try adding that to your filter list but I don't have a macOS device, so I can't tell if it works or not.

okiehsch commented 5 years ago

If that ##+js filter also does not work you can try the "normal" filters.

@@||pubads.g.doubleclick.net/gampad/adx$xhr,domain=washingtonpost.com
@@||washingtonpost.com/wp-stat/ad/zeus/*$script,1p

they should work with macOS.

yetisyny commented 5 years ago

Hey this is a problem again, you should reopen it. I started getting this problem today, August 2nd 2019 after previously not having it, seems washingtonpost.com updated their code.

I have isolated the problem to this uBlock filter in the filter list "uBlock filters":

washingtonpost.com##+js(abort-current-inline-script, Promise.all, adblocked)

If I disable the uBlock filters filter list I don't get the anti-adblock message but if I do have uBlock filters on, washingtonpost.com story pages (not the front page) all come up with an anti-adblock message as described earlier, and this is something new as of August 2nd, 2019, this was not happening yesterday on August 1st.

I have not found a workaround other than disabling that filter.

I would also mention this issue likewise happens with the "EasyList" filter list too now with this change washingtonpost.com did, which blocks several different things, so it also has to be disabled too to get rid of this anti-adblock message. But that is a separate issue for EasyList to deal with.

Anyway if both uBlock filters and EasyList are turned off I can have all my other filter lists turned on and washingtonpost.com works fine.

liamengland1 commented 5 years ago

I can reproduce in Chrome.

Bait: https://d2ty8gaf6rmowa.cloudfront.net/ad/ads.js

liamengland1 commented 5 years ago

This filter washingtonpost.com##+js(abort-current-inline-script, Promise.all, adblocked) breaks a big obfuscated inline script that is responsible for incognito mode checking and adblock checking. Since they have updated their method, the inline script must be unbroken so the adblocker checks can run.

okiehsch commented 5 years ago

washingtonpost.com##+js(abort-current-inline-script.js, Promise, "0x) works on my end using Chromium. The site should still work fine for Firefox users.

okiehsch commented 5 years ago

But that is a separate issue for EasyList to deal with.

They won't EasyList will not circumvent anti-adblock messages.