uBlockOrigin / uAssets

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

atozmath.com: detection #10815

Closed bymaul closed 2 years ago

bymaul commented 2 years ago

Prerequisites

URL address of the web page

https://atozmath.com/CONM/Bisection.aspx?q=nr&q1=4x%5E3-15x%5E2%2Bx-9%60%60true%602%604%601%608&dp=8&tm=R&do=1

Category

detection

Describe the issue

Adblocker detected

Screenshot(s)

Screenshot(s) ![image](https://user-images.githubusercontent.com/73796506/145149502-611543a1-f79e-4e54-9513-3aa3826f819f.png)

Configuration

```yaml uBlock Origin: 1.39.2 Chromium: 96 filterset (summary): network: 78201 cosmetic: 39357 scriptlet: 16194 html: 0 listset (total-discarded, last updated): default: easylist: 61059-6, 3d.23h.56m easyprivacy: 26427-17, 3d.23h.54m plowe-0: 3697-810, 8d.2m ublock-abuse: 74-0, 3d.23h.52m ublock-badware: 3532-63, 3d.17h.15m ublock-filters: 29818-119, 3d.17h.13m ublock-privacy: 197-2, 3d.17h.11m ublock-unbreak: 1702-38, 3d.17h.9m urlhaus-1: 8444-0, 4h.28m filterset (user): [empty] switchRuleset: added: [array of 2 redacted] modifiedUserSettings: [none] modifiedHiddenSettings: [none] supportStats: launchToReadiness: 471 launchFromSelfie: true popupPanel: blocked: 2 ```
iam-py-test commented 2 years ago

I can reproduce the issue: https://user-images.githubusercontent.com/84232764/145210892-b34ec463-a1ab-49c0-8bb4-d0c7283023b8.png

https://user-images.githubusercontent.com/84232764/145210845-88b61c54-064d-44f0-be40-4d71283f97d5.png You have to click Click here to display next solution steps (part - 2 / 4) and wait for it to appear Can reproduce with default settings + updated filters, and with modified settings (with AG base enabled)

The site seems to use https://atozmath.com/Scripts/advertisement.js as bait, but as that isn't blocked, I'm not sure how it is detecting an adblocker

gorhill commented 2 years ago

You have to click Click here to display next solution steps (part - 2 / 4) and

I don't see that sentence in the page reached through the URL provided by OP.

iam-py-test commented 2 years ago

You have to click Click here to display next solution steps (part - 2 / 4) and

I don't see that sentence in the page reached through the URL provided by OP.

So can you now reproduce the issue?

gorhill commented 2 years ago

OK I finally reproduced, I had to click the Find button first.

From what I see, it's not a hard anti-blocker, the message can be easily hidden with a cosmetic filter (atozmath.com###lblAdContent), so maybe something for "uBlock filters -- Annoyances"?

iam-py-test commented 2 years ago

OK I finally reproduced, I had to click the Find button first.

From what I see, it's not a hard anti-blocker, the message can be easily hidden with a cosmetic filter, so maybe something for "uBlock filters -- Annoyances"?

How can it be bypassed? To see the solution, you have to click that

gorhill commented 2 years ago

Isn't by design? OP does not provide any description, I don't know whether the delay is by design to discourage people from looking up the solution immediately.

iam-py-test commented 2 years ago

Edit: Whoops, posted twice

stephenhawk8054 commented 2 years ago

I think OP is missing details to reproduce it. When there are no anti-adblock message, the whole solution of the Math problem appears after clicking on the steps.

Screenshot ![3](https://user-images.githubusercontent.com/66517106/145217461-4ff4de52-3025-436d-9c46-e4876af53a11.png)

If anti-adblock appears, it just resets to first page.

iam-py-test commented 2 years ago

@bymaul more details please

stephenhawk8054 commented 2 years ago

I think the steps are:

  1. Click on the Find button
  2. Click on Steps 2/4 and wait for the countdown.
  3. Click on Steps 3/4 and wait for the countdown.
  4. Anti-adblock appears and no solutions for the math problem are provided.

The expected result is as in the screenshot I posted above.

stephenhawk8054 commented 2 years ago

Also I guess this inline script checks the class adsbyvli, which is not loaded when blocking bilsyndication.com and imasdk

```js $(document).ready(function() { var Cnt = 0; var x = window.setInterval( function() { var h = 0, Sh = ""; var w = 0, Sw = ""; var Svi1 = "",Svi2 = "";//Svi3 = ""; $(".adsbyvli").each(function( index ) { var h1 = $(this).height(); if(h < h1) h = h1; Sh += Math.round(h1)+"~"; Svi1 += $(this).attr("data-ad-slot")+"~"; Svi2 += $(this).text().length+"~"; // Svi3 += $(this).attr("data-id")+"~"; var w1 = $(this).width(); if(w < w1) w = w1; Sw += Math.round(w1)+"~"; }); // if(Cnt%5==0) // { // console.log("Sh="+Sh+";"); // console.log("Svi1="+Svi1+";"); // console.log("Svi3="+Svi3+";"); // console.log("Svi2="+Svi2+";"); // } document.cookie = "BAdBlock3="+ Math.round(h); document.cookie = "BAdBlock4="+Sh; document.cookie = "BAdSvi1="+Svi1; document.cookie = "BAdSvi2="+Svi2; document.cookie = "BAdBlock5="+ Math.round(w); document.cookie = "BAdBlock6="+Sw; if(Cnt==0) { var hCode = ""; hCode = "7"; document.getElementById("hCode").value = hCode; } // if (Cnt>=180)//if (Cnt>=50) // { // clearInterval(x); // return; // } Cnt++; }, 1000); }); ```

When I allow those 2 domains in the popup panel, that class appears (with ads and blank placeholders) and no anti-adblock.

iam-py-test commented 2 years ago

I wonder - is there a way to spoof that so it thinks those classes exist? (maybe new scriptlet???)

gorhill commented 2 years ago

Still not sure how this site is supposed to work... Anyway, this works?

atozmath.com##+js(nosiif, .adsbyvli)
iam-py-test commented 2 years ago

Still not sure how this site is supposed to work... Anyway, this works?

atozmath.com##+js(nosiif, .adsbyvli)

No effect for me

stephenhawk8054 commented 2 years ago

Still not sure how this site is supposed to work... Anyway, this works?

atozmath.com##+js(nosiif, .adsbyvli)

I'm afraid not. After clicking on Steps 2/4, it cannot continue and resets back to original page with another red line of warning:

Please click on Find button again, only after 10 seconds or after page is fully loaded with Ads and Google reCAPTCHA. Please unblock any Adblocker and click on Google reCAPTCHA symbol at right bottom corner. If problem persists then restart the browser or submit the feedback form with screen shot
Screenshot ![image](https://user-images.githubusercontent.com/66517106/145220228-94605bb5-05ea-427f-b71c-c114c4e3459b.png)

Looks like it needs that script to continue.

gorhill commented 2 years ago

checks the class adsbyvli, which is not loaded

When I enter ##.adsbyvli in the element picker, it finds 12 matching elements while those 3rd parties are blocked.

stephenhawk8054 commented 2 years ago

checks the class adsbyvli, which is not loaded

When I enter ##.adsbyvli in the element picker, it finds 12 matching elements while those 3rd parties are blocked.

Oh I see. Or maybe it checks that class's height and width?

gorhill commented 2 years ago

Yes, but I tried atozmath.com##.adsbyvli:style(height:1px!important;width:1px!important) and it seems the page has other means to detect beside this. Anyway for now I gave up as I get a blank page.

stephenhawk8054 commented 2 years ago

I got a blank page too. Thought it detects my ip when reloading that page too many times 😅

uBlock-user commented 2 years ago

Site also inserts detection cookies, so clear them each time you test.

stephenhawk8054 commented 2 years ago

Site also inserts detection cookies, so clear them each time you test.

Actually I tested it in Private Window, but still got blank page. Should I do anything else?

uBlock-user commented 2 years ago

Do you see anti-adblock notice with uBO disabled ? Try few times.

iam-py-test commented 2 years ago

Do you see anti-adblock notice with uBO disabled ? Try few times.

No: (new Private Browsing window) image

stephenhawk8054 commented 2 years ago

I used VPN and the website works for me again. Btw, when I whitelist the current cosmetic filter and add gorhill's filter, it works for me, no more anti-adblock. Can anyone else check?

atozmath.com#@#.menubg .adsbyvli[data-ad-slot][data-width]:not([data-height="250"]),#top.table0 .menubg .adsbyvli[data-ad-slot]:not([data-width]):style(height:250px !important;position:absolute !important;left:-3000px !important)
atozmath.com##.adsbyvli:style(height:1px!important;width:1px!important)

But it leaves a little annoyance white line at the background for me.

![image](https://user-images.githubusercontent.com/66517106/145235131-9c5cc3fe-de81-46f8-9209-4c24ed4e36db.png)
iam-py-test commented 2 years ago

I used VPN

Where did you set the end location at?

stephenhawk8054 commented 2 years ago

I used VPN

Where did you set the end location at?

Just the same country as mine (Vietnam) and it works fine.

uBlock-user commented 2 years ago

But it leaves a little annoyance white line at the background for me.

atozmath.com##.adsbyvli:style(height:0px!important;width:0px!important)

Works fine.

iam-py-test commented 2 years ago

Yep, works for me with VPN to Vietnam or US. I think it just blocklisted my ip

stephenhawk8054 commented 2 years ago

But it leaves a little annoyance white line at the background for me.

atozmath.com##.adsbyvli:style(height:0px!important;width:0px!important)

Works fine.

Ah right, thought it shouldn't be 0, but it actually works 👍

// Btw, actually I think any VPN location is ok 😅

stephenhawk8054 commented 2 years ago

Looks like the anti-adblock is back, even with new filter.

stephenhawk8054 commented 2 years ago

So I tested with the site and I honestly don't know how this site works and can't find a way to bypass the anti-adblock without allowing and defusing these scripts/xhr:

atozmath.com#@#.adsbyvli:style(height:0px!important;width:0px!important)
atozmath.com##vli[id^="ifr_vi"]

atozmath.com##+js(no-xhr-if, bilsyndication)
@@||services.bilsyndication.com/adv1/*$script,domain=atozmath.com
@@||biltag.bilsyndication.com/v1/*$script,domain=atozmath.com
@@||assets.bilsyndication.com/prebid/default/*$script,domain=atozmath.com
||assets.bilsyndication.com/plugins/*$script,redirect=noopjs,domain=atozmath.com
||imasdk.googleapis.com/js/sdkloader/ima3.js$script,redirect=noopjs,domain=atozmath.com

||quantumdex.io^$domain=atozmath.com
||a-mx.com^

Although it looks like the malicious resources are blocked already, but it still tries to spam hundreds of connections and ask for user's location so I have to add more defusing scriptlets to block those:

atozmath.com##+js(set, window.vlipbChunk, noopFunc)
atozmath.com##+js(set, vitag.enableGeoLocation, false)
atozmath.com##+js(aost, Object.assign, callBids)
atozmath.com##+js(no-xhr-if, vliplatform)

which happen in this script: https://assets.bilsyndication.com/prebid/default/prebid-6.4.0.js

but finally I can go through the steps and no anti-adblock triggers nor the site spams hundreds of connections. However, I can't find a way to collapse the placeholders tho. Every time I try it (even with pixel > 0 in style), the anti-adblock appears.

stephenhawk8054 commented 2 years ago

The site detects adblock again. Looks like due to this filter to hide the video player at the top.

atozmath.com##vli[id^="ifr_vi"]

Using this helps bypass it:

atozmath.com#@#vli[id^="ifr_vi"]
atozmath.com##.videoDiscovery
stephenhawk8054 commented 2 years ago

Anti-adblock again. I'm not sure if I tested correctly or not, but editing the aost filter works for me:

atozmath.com#@#+js(aost, Object.assign, callBids)
atozmath.com##+js(aost, Object.assign, bidsBackHandler)

Can anyone else test it?

shahpiyushn commented 2 years ago

Dear sir, I am from atozmath.com, Started this project since 2003, and my earning started from Ads since last 1 year. Right now my totally income is depend on this and nothing else.

You are geneius and great mind, I had provided lots of times to develop this. My earnings are totally depend of this Ads. Without it, its not possible for me continue this.

I dont know about Anti adblock coding, but I need money so writing something that may work. And my most of time is wasted to find out Ad block and develop anti block code. So I am not able to focus on new development.

So I please request to to allow to me focus on my development and allow me to earn from my work. I am not forcing any people to use this but just forcing to allow ads so that I can earn from that.

Thanking you Piyush shah

iam-py-test commented 2 years ago

I dont know about Anti adblock coding, but I need money so writing something that may work.

Ask for donations. Create a paywall. Offer a paid service with more features

I am not forcing any people to use this but just forcing to allow ads so that I can earn from that.

What are you doing to stop malvertising, or malware/scam ads? What are you doing about tracking ads? Many people use adblockers to protect themselves against those.

So I please request to to allow to me focus on my development and allow me to earn from my work.

We don't allowlist websites.

Right now my totally income is depend on this and nothing else.

Maybe you should find another source of income. Even if we allowlisted your website, people will just switch to another adblocker, or blocklist those ads using their HOSTs file, or one of the other 1000 other ways people can block ads.

uBlock-user commented 2 years ago

I dont know about Anti adblock coding,

and yet you circumvent our filters..yeah right.

iam-py-test commented 2 years ago

Is https://github.com/shahpiyushn/website the source code of your website? Nevermind, if it is, it's years old

shahpiyushn commented 2 years ago

Ask for donations. Create a paywall. Offer a paid service with more features

: For donation link already kept but get nothing, Dont want to charge user because I think education must be free for all kind of users, so since hosted till now its free for all and for life time. 

What are you doing to stop malvertising, or malware/scam ads? What are you doing about tracking ads? Many people use adblockers to protect themselves against those.

I have no idea about that I am using valueimpression.com Ad company only, which is good and providing good Ads. My website is mathematical education based, I had confirmed with that about the Ads must be suitable for student. I had also tested the Ads and all are suitable for students purpose. So sir, please allow to earn from this. There are lots of calculator I had developed which are not available on any other website.I had given lots of time for this and stilll work is on for this.

shahpiyushn commented 2 years ago

I dont know about Anti adblock coding, and yet you circumvent our filters..yeah right.

I know only mathematical programming and I need money so I have to try all the possibility code.

shahpiyushn commented 2 years ago

Is https://github.com/shahpiyushn/website the source code of your website?

This is not atozmath.com code, Before 5 years I had done only teaching to 1 student about dot net and its that code.At that 1st time I had used github.

iam-py-test commented 2 years ago

I had given lots of time for this and stilll work is on for this.

As a developer, I kind-of can understand. But also that doesn't justify tracking, taking bandwidth, and all the other things ads do

So sir, please allow to earn from this.

2 things:

  1. I don't decide anything here. I just have a strong opinion and like to comment on random issues
  2. uBlock Origin doesn't allowlist websites. We don't have any kind of websites we feel only have acceptable ads list, and if we ever added one, many users (inc me) would go to another adblocker or fork the code and remove it. Doing that goes against everything uBo stands for.
uBlock-user commented 2 years ago

I need money so I have to try all the possibility code.

Anti-adblock code is defused regardless of what your situation is, no point in arguing any further.

shahpiyushn commented 2 years ago

you can check this google links on which i got top 3 listing and there are some of others also.

https://www.google.co.in/search?q=assignment+problem+calculator
https://www.google.co.in/search?q=Travelling+salesman+problem+calculator
https://www.google.co.in/search?q=Crew+assignment+problem+calculator
https://www.google.co.in/search?q=Simplex+method+calculator
https://www.google.co.in/search?q=0-1+Integer+programming+problem+calculator
https://www.google.co.in/search?q=Vogel’s+approximation+method+calculator
https://www.google.co.in/search?q=stepping+stone+method+calculator
https://www.google.co.in/search?q=PERT+and+CPM+calculator
https://www.google.co.in/search?q=Sequencing+Problems+calculator
https://www.google.co.in/search?q=Game+Theory+Dominance+method+calculator

I had charged any user and I dont wish that. Thats I had not created a student registration and login page. Regards,

iam-py-test commented 2 years ago

you can check this google links on which i got top 3 listing and there are some of others also.

How is that make a difference in this decision? Just a note, probably most people don't even use adblockers anyway

shahpiyushn commented 2 years ago

How is that make a difference in this decision? Just a note, probably most people don't even use adblockers anyway

Ok thanks sir

Regards, Piyush N Shah

stephenhawk8054 commented 2 years ago

These edited filters still work for me btw: https://github.com/uBlockOrigin/uAssets/issues/10815#issuecomment-994700399

stephenhawk8054 commented 2 years ago

Anti-adblock again. You'll need a VPN to test.

At first, the page will have this message at the top:

*Please disable all AdBlocker immediately, if exists.
(Request-1/3 : Sorry if you may block for access because of AdBlocker)
For solution steps of your selected problem, Please click on Solve or Find button again, only after 10 seconds or after page is fully loaded with Ads

It always appears (even without ublock). After refreshing 2 times, refreshing the 3rd time will have a message of restricting access for 24 hours.

Using these filters helps:

atozmath.com#@#+js(set, window.vlipbChunk, noopFunc)
atozmath.com##+js(set, window.vlipb.installedModules, undefined)
stephenhawk8054 commented 2 years ago

The old anti-adblock (can't get past Step 3/6) is back on my side again. I can't find a way to stop malicious 3rd-party connections from requesting, so best way I could find is at least blocking them once. Also switching to other tabs or softwares stops the countdown.

Proposed:

atozmath.com##+js(set-constant, window.vlipb.installedModules, undefined)
atozmath.com##+js(no-xhr-if, vliplatform)
atozmath.com##+js(no-xhr-if, bilsyndication)
@@||ssl.google-analytics.com/ga.js$script,domain=atozmath.com
atozmath.com##+js(no-xhr-if, /^/)
atozmath.com##+js(set, window_focus, true)