Skip to content

xyzsports111.xyz: ads #22274

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

Closed
8 of 9 tasks
mustihoca opened this issue Jan 30, 2024 · 24 comments
Closed
8 of 9 tasks

xyzsports111.xyz: ads #22274

mustihoca opened this issue Jan 30, 2024 · 24 comments

Comments

@mustihoca
Copy link

Prerequisites

  • This is NOT a YouTube, Facebook or Twitch report. These sites MUST be reported by clicking their respective links.
  • 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 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 additional filter lists, or I have verified that the issue still occurs without enabling additional 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 content blocker extensions.
  • 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 checkboxes.

URL address of the web page

https://www.xyzsports111.xyz/player.php?channel=1

Category

streaming adds

Description

Hello,

I'm encountering an issue with ads that appear before the streaming starts on a platform. I need assistance in creating effective filters to bypass these ads. Additionally, the domain names for these ads seem to be dynamically changing in a sequential manner, such as xyzsports111.xyz, xyzsports112.xyz, and so on.

Problem Details:

Pre-roll Ads: Two ads are displayed before the streaming begins, and I cannot proceed without watching them.
Dynamic Domain Names: The domain names for these ads keep changing in a sequential pattern (e.g., xyzsports111.xyz, xyzsports112.xyz).

Additional Information:

I am using uBlock Origin for ad blocking.

Ads resources:
https://odin.fc6abcee4cf2.shop/0/master.m3u8?v=ads1
https://odin.fc6abcee4cf2.shop/0/master.m3u8?v=ads2

Request for Help:
I am seeking guidance on how to create effective filters to bypass these pre-roll ads. Any assistance or suggestions would be greatly appreciated. Thank you!

Other extensions used

ı don't carry about cookies

Screenshot(s)

Screenshot(s)

Configuration

uBlock Origin: 1.55.0
Firefox: 122
filterset (summary):
 network: 118148
 cosmetic: 290459
 scriptlet: 22044
 html: 2058
listset (total-discarded, last-updated):
 added:
  https://raw.githubusercontent.com/mstflgz/FiltreListem/main/filtreler.txt: 236946-21, 38m
 default:
  user-filters: 45-0, never
  ublock-filters: 37460-161, 1h.2m Δ
  ublock-badware: 7808-10, 1h.2m Δ
  ublock-privacy: 988-0, 1h.2m Δ
  ublock-unbreak: 2246-0, 1h.2m Δ
  ublock-quick-fixes: 134-0, 1h.2m Δ
  easylist: 80393-731, 1h.2m Δ
  easyprivacy: 43604-844, 1h.2m Δ
  urlhaus-1: 8325-0, 1h.2m
  plowe-0: 3786-1, 38m
  TUR-0: 12953-63, 38m
filterset (user): [array of 45 redacted]
trustedset:
 added: [array of 17 redacted]
switchRuleset:
 added: [array of 1 redacted]
userSettings:
 cloudStorageEnabled: true
hiddenSettings: [none]
supportStats:
 allReadyAfter: 818 ms (selfie)
 maxAssetCacheWait: 314 ms
 cacheBackend: indexedDB
popupPanel:
 blocked: 0
 extended:
  ##[href="https://rebrand.ly/Bahisbeyselcuksport"]
@stephenhawk8054
Copy link
Member

stephenhawk8054 commented Jan 31, 2024

It's a Turkish site but I need trusted-set for it:

xyzsports111.xyz##+js(trusted-set, adsConfigs, {"value": [{"enabled":0}]})

@Yuki2718 @gorhill Regarding domains with regex, I see that there are many filters with the format of [$domain=/^inattv\d+\.xyz$/]##+js(set-constant, config.adv, {}) in Adguard Turkish list since it's very popular for the domains to have those formats in Turkey. But those are all marked as invalid.

Should we start using regex for ## filters?

/^www\.xyzsports\d+\.xyz$/##+js(trusted-set, adsConfigs, {"value": [{"enabled":0}]})

@stephenhawk8054 stephenhawk8054 changed the title xyzsports111.xyz: [Issue with Ads Blocking Before Streaming] xyzsports111.xyz: ads Jan 31, 2024
@gorhill
Copy link
Member

gorhill commented Jan 31, 2024

If there is no other solution... Or maybe we fall back on using regexes when more similar reports justify doing so.

Ultimately I guess I should adapt the parser to be able to deal with that AG's specific syntax.

@stephenhawk8054
Copy link
Member

Ultimately I guess I should adapt the parser to be able to deal with that AG's specific syntax.

I think this would be better, as those filters would be only activated in regional lists and won't affect the performance of users who don't use that list.

I will first address only xyzsports111.xyz since other domains redirect to it.

stephenhawk8054 added a commit that referenced this issue Jan 31, 2024
@stephenhawk8054
Copy link
Member

stephenhawk8054 commented Jan 31, 2024

Oh, I forgot it's trusted-set so it could not be addressed in regional list. If we use regex for it, we would address it in uAssets default anyways.


The trusted-set is pretty simple though, but since it involves array [], I can't use normal set for it


Ok, set still works for me like this

xyzsports111.xyz##+js(set, adsConfigs, {})
xyzsports111.xyz##+js(set, adsConfigs.0, {})
xyzsports111.xyz##+js(set, adsConfigs.0.enabled, 0)

stephenhawk8054 added a commit that referenced this issue Jan 31, 2024
@kodiakhub

This comment was marked as off-topic.

@stephenhawk8054

This comment was marked as off-topic.

@Yuki2718
Copy link
Contributor

@mapx- mapx- closed this as completed Feb 4, 2024
stephenhawk8054 added a commit that referenced this issue Feb 5, 2024
@kodiakhub
Copy link

kodiakhub commented Mar 22, 2025

xyzsports237.xyz

Why is this filter rule not converted for uBO? (Not supported yet?):

But i see only 1 error with view content in the uBO like this:

Screenshot

Image

[$domain=/(^\|.+\.)xyzsports\d+\.xyz/]#$#.table-area { visibility: hidden !important; }
Screenshot

Image


Also, in-video ads.

||video.twimg.com/ext_tw_video/*/*.m3u8$domain=/^[a-zA-Z]{3,6}\.[a-zA-Z0-9]{16,22}.*\d+.*\.click$/
Screenshots

Image
Image

It works in UBO, but not in AdGuard. Do you think it is safe to add like this filter rule to uBO filters? For uBO users? @Yuki2718 What you think?


Update: The filter rule was from chatGPT 😄

But according to regex101 website (with the help of chatGPT)

This filter rule is the right one:

||video.twimg.com/ext_tw_video/*/*.m3u8$from=/^[a-z]{2,6}\.(?=.*[0-9])[a-z0-9]{16,22}\.click$/

Must match the following domains (based on old ad domains):

main.uxsyplayerd22c8f9c2ba8.click
cinque.668a396e58bcbc27.click
due.3ce9b159299de25f.click
id.strmrdrfr6bff628f.click
due.b809cf1861b7c7b2.click

@stephenhawk8054
Copy link
Member

stephenhawk8054 commented Mar 22, 2025

[$domain=/(^\|.+\.)xyzsports\d+\.xyz/]#$#.table-area { visibility: hidden !important; }

It appears normally for me: https://github.com/user-attachments/assets/0c02fb18-439a-4303-a590-d96a8d07e320

@kodiakhub
Copy link

It appears normally for me

This filter rule does not work in uBO, so I was expecting an error message saying this filter rule is not supported. 🤔

@stephenhawk8054
Copy link
Member

This filter rule does not work in uBO

How to test it?

@kodiakhub
Copy link

How to test it?

Add this filter rule to my filters (No error):

[$domain=/(^\|.+\.)xyzsports\d+\.xyz/]#$#.table-area { visibility: hidden !important; }

Go to: xyzsports237.xyz See the left table ads.

Screenshot

Image

But if we add it manually like this it works:

/xyzsports\d+\.xyz/#$#.table-area { visibility: hidden !important; }

@stephenhawk8054
Copy link
Member

stephenhawk8054 commented Mar 22, 2025

It's because of (^\|.+\.) in that regex. If I remove it,

[$domain=/xyzsports\d+\.xyz/]#$#.table-area { visibility: hidden !important; }

works for me. I don't know why there's (^\|.+\.) in that regex.

If you put (^\|.+\.)xyzsports\d+\.xyz to https://regex101.com/ , it doesn't match https://xyzsports237.xyz/ nor xyzsports237.xyz.

@kodiakhub
Copy link

I don't know why there's (^\|.+\.) in that regex.

It may be because of AdGuard. Because AdGuard browser extension side works. I don't know either. See:

Screenshot

Image

@stephenhawk8054
Copy link
Member

cc @Yuki2718 @gorhill Sorry, can you check the above?

@ghost
Copy link

ghost commented Mar 22, 2025

Should probably be (^|.+\.)xyzsports\d+\.xyz - some AdGuard specific escape sequence?

@ghost
Copy link

ghost commented Mar 22, 2025

Hmmm, it "matches the $domain option", so pipes need to be escaped because they work as separators in option values.

https://adguard.com/kb/general/ad-filtering/create-own-filters/#non-basic-domain-modifier

?

But there are no regex examples. Only $path has some which does not match - [$path=/\\/(sub1|sub2)\\/page\\.html/]##.textad


This example may suggest I'm right - [$domain=example.com|example.org]###adblock


gorhill/uBlock@58bfe4c

@Yuki2718
Copy link
Contributor

No idea, it looks AdguardTeam/AdguardFilters@c2ac286 was the first commit with this part. @AdamWr

@gorhill
Copy link
Member

gorhill commented Mar 22, 2025

uBO supports regex literal without needing to escape, so there is no need to escape (^\|.+\.) => (^|.+\.).

Since there is no need to escape, the escaped | means that the regex is looking for a literal | in the string.


Anyways, if the filter is meant for uBO, why not just use uBO's regex-based domain syntax:

/(^|.+\.)xyzsports\d+\.xyz/#$#.table-area { visibility: hidden !important; }

@AdamWr
Copy link

AdamWr commented Mar 22, 2025

No idea, it looks AdguardTeam/AdguardFilters@c2ac286 was the first commit with this part. @AdamWr

As I recall, it might be related to - AdguardTeam/FiltersCompiler#241 and this kind of regex rules are incorrectly discarded by filters compiler and due to this are not available in filters.
So as a workaround it has been added with escaping some characters.
If I'm not wrong, this ways it works fine in AdGuard apps, but probably some of these rules do not work in extensions (but it's better than nothing).


(^|.+\.) was added to match selcuksportshd or whatever.selcuksportshd but not ABCselcuksportshd.

@Yuki2718
Copy link
Contributor

Yuki2718 commented Mar 22, 2025

It seems there are many filters with (^|.+\.) including but not limited to Turkish filter, I'm not sure what fix will be the best - too many to fix by !# if. Um, maybe not, my git log was lying...

Anyways, if the filter is meant for uBO, why not just use uBO's regex-based domain syntax:

AdguardTeam/FiltersCompiler#204 is still open. Maybe we can add that filter to uBlock filters, untill AdguardTeam/FiltersCompiler#241 is fixed?

@gorhill
Copy link
Member

gorhill commented Mar 22, 2025

I'm not sure what fix will be the best

If the escaping is only with \|, then I could add a special unescaping applied only when the AG syntax [domain=...] is used.

@AdamWr
Copy link

AdamWr commented Mar 22, 2025

As far as I understand, it looks like that unfortunately it's not only | but also ] and , (I'm not sure if there are more characters).
There is probably another related issue - AdguardTeam/tsurlfilter#121

@Yuki2718
Copy link
Contributor

Hmm, then I think !# if ~ !# else will be the best fix, if filters without (^|.+\.) can correctly be distributed to uBO.

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

7 participants