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

anilibria.tv: breakage #2002

Closed
7 of 8 tasks
JAKill02 opened this issue Feb 21, 2022 · 18 comments
Closed
7 of 8 tasks

anilibria.tv: breakage #2002

JAKill02 opened this issue Feb 21, 2022 · 18 comments
Labels
bug Something isn't working fixed issue has been addressed

Comments

@JAKill02
Copy link

Prerequisites

  • I read and understood the policy as to what is a valid filter issue
  • I verified that the issue has not already been reported (use this button to find out)
  • I forced an update of my filter lists (how to do this: click "Purge all caches", then click "Update now")
  • I did not remove any of the default filter lists, or I verified that the issue is not caused by removing any of the default lists
  • I did not enable external filter lists, or I verified that the issue still occurs without enabling external filter lists
  • I do not have custom filters/rules, or I verified that the issue still occurs without custom filters/rules
  • I am not using another content blocker along uBO (also mind browser built-in blockers)
  • I did not answer truthfully to all the above checkpoints

URL address of the web page

https://www.anilibria.tv/release/platinum-end.html

Category

breakage

Describe the issue

completely breaks the appearance of the page.

Screenshot(s)

Screenshot(s)

Configuration

uBlock Origin: 1.41.2
Chromium: 86
filterset (summary): 
  network: 95921
  cosmetic: 63037
  scriptlet: 18031
  html: 0
listset (total-discarded, last updated): 
  default: 
    user-filters: 119-6, never
    RUS-0: 41445-9, 5m
    easylist: 63806-21, 5m
    easyprivacy: 26606-221, 4m
    plowe-0: 3670-810, 6m
    ublock-abuse: 77-1, 4m
    ublock-badware: 4018-76, 4m
    ublock-filters: 30245-173, 4m
    ublock-privacy: 199-2, 6m
    ublock-unbreak: 1715-39, 6m
    urlhaus-1: 6641-0, 6m
filterset (user): [array of 130 redacted]
trustedset: 
  added: [array of 20 redacted]
  removed: 
    chrome-extension-scheme
    chrome-scheme
switchRuleset: 
  added: [array of 101 redacted]
modifiedUserSettings: 
  webrtcIPAddressHidden: true
modifiedHiddenSettings: [none]
supportStats: 
  allReadyAfter: 48143 ms (selfie)
  maxAssetCacheWait: 726 ms
popupPanel: 
  blocked: 11
  blockedDetails: 
    digitalcaramel.com: 1
    googletagmanager.com: 1
    jsdelivr.net: 2
    mail.ru: 1
    static.anilibria.tv: 3
    utarget.ru: 1
    yandex.ru: 2
@mapx- mapx- added the unable to reproduce cannot reproduce the issue label Feb 21, 2022
@mapx-
Copy link

mapx- commented Feb 21, 2022

Update your browser, test disabling all other extensions

@Procyon-b
Copy link

@mapx- I've tried with an old browser (chrome 70) and I don't see any problem.

@JAKill02 you have 130 user filters. Try without them. Go to the "Filter lists" tab and uncheck "My filters", click "Apply changes". Reload the website. If it's fixed, re-enable "My filters" and check them one by one.
Also look at ublock's popup window on the site's tab to see if you have disabled some elements (you have 101 rules)

@dimisa-RUAdList
Copy link

@gorhill
For some reason, the third-party option is too strict on this site. Try adding ||static.anilibria.tv^$third-party and open https://www.anilibria.tv/. The site will be broken, and the following will be in the logger: https://i.imgur.com/bxJyDuC.jpg

The problem is observed in Chromium-versions 1.41.2 - 1.41.7b1 downloaded from here: https://github.com/gorhill/uBlock/releases and also in version 1.41.7.0 downloaded from here: https://chrome.google.com /webstore/detail/ublock-origin-development/cgbcahbpdhpcegmbfconppldiemgcoii

@gorhill
Copy link
Member

gorhill commented Feb 22, 2022

From what I see so far, *.tv seems to be deemed a Public Suffix. I don't know why as I can't find an entry in the official PSL, need to investigate more.

@gwarser
Copy link

gwarser commented Feb 22, 2022

WTF? I was able to repro so I started bisecting lower and lower versions and then it stopped around 1.18 and I cannot reproduce anymore.

@gorhill
Copy link
Member

gorhill commented Feb 22, 2022

This looks like this might be a lengthy investigation -- for now maybe just use ||static.anilibria.tv^$domain=~anilibria.tv.

@gorhill
Copy link
Member

gorhill commented Feb 22, 2022

@gwarser Are you using a new uBO install for each bisect to be sure the selfie is not being used every time?

@gwarser
Copy link

gwarser commented Feb 22, 2022

Ok, it breaks again after copy-pasting the URL from above message into new Chrome tab. Previously I did modified the filter in My filters by removing, saving and adding back characters and saving again, then force-reloading the tab.

I have it broken in 1.20.0 right now.

@dimisa-RUAdList
Copy link

In fact, to fix the break, I had to edit the rule against disposable adservers, removing anilibria.tv from the list of target domains: easylist/ruadlist@53d39cb

@gwarser
Copy link

gwarser commented Feb 22, 2022

1.18 was fine, 1.19 - fine, back to 1.20.0 and it's fine ;D

@gorhill
Copy link
Member

gorhill commented Feb 22, 2022

had to edit the rule against disposable adservers

But I didn't use RUAdList.

Furthermore, when I add tests to PSL library, all passes:

checkPublicSuffix('www.anilibria.tv', 'anilibria.tv');
checkPublicSuffix('static.anilibria.tv', 'anilibria.tv');

So I have no clue what is going on.

@gwarser
Copy link

gwarser commented Feb 22, 2022

Cannot reproduce if I clean browsing data and install fresh uBO.

But updating all lists in fresh 1.41.5.2 install broke it.

Something between 1.20 and 1.30?

Hmmm, broken, not updating, malware lists (and "Online Malicious URL Blocklist" after assets update) prevent this from happening? After removing them, it's reproducible in 1.26.1b1. v1.22.5b4. v1.21.7b4. v1.20.0.

Seems fine on v1.18.0

@gwarser
Copy link

gwarser commented Feb 22, 2022

Introduced in gorhill/uBlock@4da3403

@gorhill
Copy link
Member

gorhill commented Feb 22, 2022

when I add tests to PSL library, all passes

All tests pass with the bundled PSL. When I replace the bundled list with the latest one from PSL dot org, the two tests fail.

@gwarser
Copy link

gwarser commented Feb 22, 2022

// newGTLDs

// List of new gTLDs imported from https://www.icann.org/resources/registries/gtlds/v2/gtlds.json on 2022-02-18T15:13:38Z
// This list is auto-generated, don't edit it manually.
// aaa : 2015-02-26 American Automobile Association, Inc.
aaa
...

@gorhill
Copy link
Member

gorhill commented Feb 22, 2022

I think the flaw in the code is that it's not ready to deal with related PSL entries which are spread throughout the list. tv is such one case.

@gwarser
Copy link

gwarser commented Feb 22, 2022

@gorhill
Copy link
Member

gorhill commented Feb 22, 2022

Ok I found the issue. It's very unlikely to be triggered, but it can happen, and it did happen eventually as shown here.

@gorhill gorhill transferred this issue from uBlockOrigin/uAssets Feb 22, 2022
gorhill added a commit to gorhill/uBlock that referenced this issue Feb 23, 2022
Related issue:
- uBlockOrigin/uBlock-issues#2002

The code was testing only the LSB of a 32-bit integer to detect
whether the current rule was a wildcard (`*`), while it had to
compare against the whole 32-bit integer.

The breakage occurred when the LSB of an offset to the character
buffer happened to match the ASCII code of `*` (42, 0x2A).

(An offset is used when a label is longer than 4 characters)
@gwarser gwarser added bug Something isn't working fixed issue has been addressed and removed unable to reproduce cannot reproduce the issue labels Feb 23, 2022
gorhill added a commit to gorhill/publicsuffixlist.js that referenced this issue Feb 23, 2022
Related issue:
- uBlockOrigin/uBlock-issues#2002 (comment)

The code was testing only the LSB of a 32-bit integer to detect
whether the current rule was a wildcard (`*`), while it had to
compare against the whole 32-bit integer.

The breakage occurred when the LSB of an offset to the character
buffer happened to match the ASCII code of `*` (42, 0x2A).

(An offset is used when a label is longer than 4 characters)
mneunomne pushed a commit to mneunomne/AdNauseam that referenced this issue Sep 16, 2022
Related issue:
- uBlockOrigin/uBlock-issues#2002

The code was testing only the LSB of a 32-bit integer to detect
whether the current rule was a wildcard (`*`), while it had to
compare against the whole 32-bit integer.

The breakage occurred when the LSB of an offset to the character
buffer happened to match the ASCII code of `*` (42, 0x2A).

(An offset is used when a label is longer than 4 characters)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working fixed issue has been addressed
Projects
None yet
Development

No branches or pull requests

7 participants