Live data from Hacker News

Block YouTube ads on AppleTV by decrypting and stripping ads from Profobuf

ericdraken.com

571–580 of 659 posts

Re: Block YouTube ads on AppleTV by decrypting and stripping ads from Profobuf

#571
post #346

Earlier quoted context omitted.

At this point I would pay those people to stop making videos and start writing again. Sitting through a 15 minute video to explain something that can be read in 2 minutes is a waste of everyone's time.

Which, if people weren’t aware, is also a consequence of ads. It’s so the creator can get a mid-video ad. Even if you pay for yt premium, you’re still getting a garbage experience because creators fluff out videos to hit the higher minute mark.

Some videos are drawn out but lost aren’t. People will drop if the video gets too boring. It’s also very easy to skip in video ads or forward or reverse to the most replayed part of the video.

Re: Block YouTube ads on AppleTV by decrypting and stripping ads from Profobuf

#572

Earlier quoted context omitted.

I think most people with gigabit internet at home never max out their pipe with a single connection, not even close. The real value of gigabit internet, for most people, is being able to handle numerous family members all doing their thing online at once without stepping on each other's toes.

> I think most people with gigabit internet at home never max out their pipe with a single connection, not even close. I don't agree, but for argument's sake, where do you draw the line? What is acceptable? 10Mbps? Each person would have a different answer.

Whatever is the max any streaming service uses.

Re: Block YouTube ads on AppleTV by decrypting and stripping ads from Profobuf

#573
post #566

Earlier quoted context omitted.

> Either way, it would not be possible to MitM 1Gbps of traffic on a Raspberry Pi 4 [...] It would be an extremely noticeable bottleneck. For YouTube videos!?

Presumably, it has to MitM all traffic going to/from the WAN in order to MitM YouTube traffic. Encrypted Client Hello / Secure SNI / Encrypted SNI prevents the hostname for each connection from leaking in plaintext. DNS-over-HTTPS prevents anyone on the local network from snooping on the DNS lookup to realize which connections are for a given domain name. I guess a sufficiently advanced implementation would stop MitM…

> Encrypted SNI prevents the hostname for each connection from leaking in plaintext.

True, but almost nobody uses that yet. Youtube certainly doesn't.

> DNS-over-HTTPS prevents anyone on the local network from snooping on the DNS lookup to realize which connections are for a given domain name.

The author of TFA is MITMing their own Apple TV. In that scenario, they could just configure their own DNS proxy as well. But given that there's no eSNI, it's not even necessary.

And even if you'd need to MITM all flows to and from YouTube on your local network – that would still be only a few Mbit/s per device, given YouTube's (non-premium) potato-quality data rates.

Re: Block YouTube ads on AppleTV by decrypting and stripping ads from Profobuf

#574

Earlier quoted context omitted.

I think you're underestimating the CPU requirements. If a weak Android phone is only able to decode 50Mb/s of TLS traffic, that's not a big problem in practice. It's a slow phone, usually connected to slow networks. On the other hand, if you have a gigabit internet connection at home and it is being bottlenecked to 50Mb/s by that weak device sitting between all of your computers and the internet, then that is a big p…

I think most people with gigabit internet at home never max out their pipe with a single connection, not even close. The real value of gigabit internet, for most people, is being able to handle numerous family members all doing their thing online at once without stepping on each other's toes.

True, and I'd argue that the most significant benefit Gigabit home internet provides is (at least in many cases) a meaningful upload data rate.

Upload congestion, together with massive Bufferbloat powered by horrendously configured CPEs, is what makes home internet connections feel slow most of the time.

Re: Block YouTube ads on AppleTV by decrypting and stripping ads from Profobuf

#575
post #500

Earlier quoted context omitted.

My friends house sat for the chair of my university's Computer Science department. This was in Arkansas, and he lived a fair drive away from the university. He had a data cap of 15GB a month.

My parents’ cap is 10GB with $1/GB overage charge. They are on line of sight microwave connection.

I’ve downloaded forza horizon 5 yesterday, all 120 GB of it.

1) what. is. in. that. game.

2) what do you do if you’re charged $1/gb and want to play forza? Sit in a Starbucks for a whole day?

Re: Block YouTube ads on AppleTV by decrypting and stripping ads from Profobuf

#576

Earlier quoted context omitted.

> An AES implementation that no one uses is not a very compelling argument, except as a hypothetical. The entire whole scenario is hypothetical!!! Yes, there aren't a lot of AES implementations that use CPU & GPU for decryption, but if you're setting up a multicore network device a CPU parallel AES implementation isn't unreasonable. > I consider it "infeasible" if it is a significant bottleneck on the network. So the…

> The entire whole scenario is hypothetical!!! I do not agree at all. Some people may actually want to use the technique detailed in the article. Most people do not have a powerful, enterprise-grade router they can run software on, so they would reach for another device. A Raspberry Pi is frequently used for PiHole and similar functions, so it is logical that someone would reach for a Raspberry Pi 4 here. What part o…

"Hypothetical" joins a list of a lot of other words like "infeasible", "random", "real", etc. where we apparently have entirely different semantic interpretations.

> An AES library that might not even work (since no one actually uses it)

The library I provided was the first result I got when I searched for "parallel AES", and it's not used because there aren't a lot of scenarios where people need the extra performance extracted by splitting workloads between CPUs & GPUs. Ways to improve the parallel processing of AES was still the subject of some research a decade ago, but there's not a question as to whether it is feasible today. There's just not a lot of call for software that does it because aside from brute-force attacks, in practical scenarios the hardware is already fast enough.

> You don't. Unless you're saying the author has already integrated this into the described software stack?

So now the scenario you've got here is someone with requirements and means at their disposal to regularly pull down data over a single connection at gigabit speeds from the Internet, but doesn't invest in their network proxy enough to get hardware that can decrypt at performance that was available for commodity hardware over a dozen years ago, who is hacking away on a Raspberry Pi to MITM their Internet access, interpret layer-7 protocols, develop software to manipulate those protocols in ways that don't break the functionality they require but do break ad platforms, but don't have the resources to swap out their encryption library?

I give up. You win.

Re: Block YouTube ads on AppleTV by decrypting and stripping ads from Profobuf

#577
post #431

I've been MITM'ing my traffic to, among other things, strip ads and rewrite pages with things like custom CSS, ever since I discovered The Proxomitron over 2 decades ago. It does tend to get me profiled as a "bot" by CloudFlare and such, but there are not-so-trivial ways around that too. It also shows why things like remote attestation are hazardous for user freedom.

Network level ad-blocking like Privoxy and pi-hole have so many downsides like they can't handle inline adverts. My pi4 pi-hole is unplugged right now because it just didn't work well. After hours wasted trying to make it work with all the services, I've thrown in the towel. The time involved is just not worth it for a home network. What works are browser based ad-blockers and app patchers like ReVanced. As my saving…

What kind of problems have you been running into.

I use a layered approach. I’ve been using Pi-hole for 8-10 years, don’t remember, with about 1-2M in the block list.

In addition, I use uBlock as well as pfsense with pfBlocker-NG for blocking countries and other features.

They all work well together. Sometimes I have to bypass them, when I momentarily use the ISP’s Wi-Fi router directly.

It’s been working fine.

Re: Block YouTube ads on AppleTV by decrypting and stripping ads from Profobuf

#578
post #366

Remember, app authors, pin your cert roots! :)

if you want to DRM your app, yeah. In that case, also don't forget to check for microG or root (super scary stuff, a user having admin on their own device, imagine!) and ensure that the device isn't muted during ads as well as disabling app backups (they might be able to get at their own data!!1) and turning off screenshots (no benefit, but it can be claimed to be a security benefit just like denying root and turning…

I’m on the side of guaranteed transport security. What in the world are you talking about?

I’m all for privacy but that is regulated via other means — the law.

Re: Block YouTube ads on AppleTV by decrypting and stripping ads from Profobuf

#579
post #575
post #500

Earlier quoted context omitted.

My parents’ cap is 10GB with $1/GB overage charge. They are on line of sight microwave connection.

I’ve downloaded forza horizon 5 yesterday, all 120 GB of it. 1) what. is. in. that. game. 2) what do you do if you’re charged $1/gb and want to play forza? Sit in a Starbucks for a whole day?

1) what. is. in. that. game.

A lot of very high resolution textures mainly. Also very detailed 3D models and audio recordings of 100s of cars.

2) what do you do if you’re charged $1/gb and want to play forza? Sit in a Starbucks for a whole day?

What was old is new again. I remember going to the library with a stack of 3.5" floppies and downloading stuff there.

Re: Block YouTube ads on AppleTV by decrypting and stripping ads from Profobuf

#580

Earlier quoted context omitted.

> without the C++ source proto files Shameless plug: I wrote a project to generate source proto files from binaries called protodump [1] - it regenerates all the message/field definitions (including the original names). It would just require pulling the binary off the AppleTV box [1]: https://github.com/arkadiyt/protodump

Hey, that’s really cool! Upvoted! ¿What binary formats are supported? - I couldn’t see that in the README and I’m guessing it isn’t universal (though I could be wrong!). As for this specific context, presumably at least the bulk of the fields are shared between YouTube clients across architectures and platforms - it might be easier to just run the dump against binaries extracted from the YouTube apk than getting the…

It looks like it is in fact universal. Just glancing at the code here, it looks like the tool searches any arbitrary file for bytes that look like encoded protobuf descriptors, specifically looking for bytes that are plausibly the beginning of a FileDescriptorProto message defined here:

https://github.com/protocolbuffers/protobuf/blob/main/src/go...

This takes advantage of the fact that such descriptors are commonly compiled into programs that use protobuf. The descriptors are usually embedded as constant byte arrays. That said, not all protobuf implementations embed the descriptors and those that do often have an option to inhibit such embedding (at the expense of losing some dynamic introspection features).

Post reply on HN