29 ms·
Show HN: FuckFuckAdblock
- atom_enger 11y agoAt some point I really think we'll resort to blocking ads at the network level. There's no way to detect a block at that level and we'll truly be able to control the content that way. I've seen a few http/dns ad blockers here on HN already so we know it's possible and being thought about. These browser based detections are just a game of cat and mouse at this point.
- johnmaguire2013 11y agoThis is already how it's generally done on Android (via hosts file.) Still detectable though: You can detect broken images on the page for example, which would tell you that the hosts have been blocked.
- Spivak 11y agoI would imagine that the cost of a false positive if something goes wrong with the ad network would be pretty damaging. I don't know if it's still the case but Comedy Central's video player was atrocious, the video wouldn't play unless it successfully played an ad but ads just straight up failed to load 30/40% of the time so you had to refresh, watch an ad to get to the video controls, scan back to your place, watch another ad because you crossed a 'commercial break' point, have that fail 10 minutes later, and repeat. The whole experience was awful and lead to me just scraping the site for the direct steam link and eventually just deciding that Jon Stewart wasn't worth it.
- yareally 11y agoI've block ads with a host file on PC for 10 years. Maybe it's my browsing habits, but I can count the number of times it affected my ability to browse content on one hand. I also manually add a lot of the entries so imagine that also helps.
- forgingahead 11y agoJon Stewart wasn't worth it This is the key takeaway here
- dredmorbius 11y agoPretty much exactly my experience with CC, and that despite being a strong admirer of Stewart. HBO is following a vastly saner path with John Oliver, whose videos simply appear on YouTube. I'm not generally a fan of single-vendor consolidation, but if: 1. Video providers aren't going to directly provide media and... 2. YouTube Just Works (including via scrapers such as youtube-dl), well, then so it goes. NB: ytdl also hits a ton of other sites, including Vimeo and The Internet Archive (which, truth told supports direct download and streaming, but ytdl is in finger memory now). Those that Just Work will be utilised.
- smcl 11y agoAh I'm glad to find out it wasn't just me that suffered through this. Actually I genuinely wouldn't have minded so much, if it wasn't exactly the same ads day after day. I can recite that new Comedy Central App advert word-for-word (complete with everything each comedian says - "This is the height of luxury!", "Uh-oh ha-ha", "Give it to me", "VISIT ME!" etc)
- drdeca 11y agoI guess you could have something that makes it still successfully retrieve a working image, just not the actual ad maybe? I guess then an ad-versary could check if the images are signed or w/e?
- logicallee 11y agoyou're not entitled to have some server serve you whatever content you want it to, it doesn't have to answer your http requests - so logically, by whatever means we get there, the end-game is for servers to monitor and exclude you. but the status quo is a lot better now, than for what it would take for that to happen. Do you want servers to figure out that you're blocking ads at the network level, and tell each other not to serve to your IP? Because it is a lot less wrong for them to do it - they have a lot more right to do it, if it's in their TOS - than for you to recraft their content so that you're only making http requests to contents, but not their ads. It's like going grocery shopping for milk and sugar at restaurants and coffee places, i.e. because they have it out 'for free'. you might say, hey, they're making it available for free, it's not your fault if they have a broken business model. But it's their right whether they want you there. The analogy isn't perfect, it's quite leaky, so let's get back to the technical facts here. The cat and mouse game is between a server wanting to serve content as well as ads, and some consumers wanting to recraft the requests so their clients/browsers do not load ads. Since ultimately the server has what the users want, for example articles, and the business model is some limited part of the attention of the user, I don't see this ending well for users who want to consumer the content but do not share any part of their attention with ads. It's just not going to work out.
- rpgmaker 11y agoInteresting point. I will say that, if in the end the user will have to accept the ads anyway because all the content providers will refuse them otherwise then I better enjoy ad blocking while I can :-)
- logicallee 11y agopeople don't get my point. The future I describe is technically possible, and within servers' rights, but let's not have it come to that. Let's stop here: with the status quo. Playing cat-and-mouse with a server's ad-block detector and with its choice not to serve users who block its ads is going too far. It would be as though the server requested the user the actively agree on a screen, to seeing tasteful on-topic and non-intrusive ads, and the user must agree to continue: only to have an ad-blocker remove that screen but send the message "I agree to see advertising and promise to add this site to the whitelist" without doing so, as a lie and a forgery. While this would technically circumvent this measure, it is ridiculous for an ad-blocker to forge that agreement. (I am making an off-topic analogy, this is not related to what is happening now.) Likewise, this is going too far. It is morally wrong and technically stupid to go down this rabbit-hole, because technically, legally, and morally it leads to exactly what I have described. Let's stop here.
- orionblastar 11y agoI used to have a program that blocked IP addresses of advertising sites and replaced all pictures with any picture I wanted to use. I used a skull and crossbones instead so in place of any ad I had a pirate flag instead. I forgot the name of the program that did that, it was like some sort of firewall that redirected to 127.0.0.1 and ran a web server that served up any image I wanted for the picture. I used to add IP addresses to my hosts file to block advertising sites as well. Now I just use uBlock but they can detect that. I don't mind advertising as much as long as it doesn't get annoying with pop-ups and other crap. It should not, for example, open up another browser window for me to display an ad.
- mistaken 11y agoPerhaps he was using ettercap: http://www.irongeek.com/i.php?page=security/ettercapfilter http://www.irongeek.com/i.php?page=security/ettercapfilter
- deleted 11y ago[deleted]
- escap 11y agoWas it http://www.privoxy.org/ http://www.privoxy.org/ ? e.g. http://www.privoxy.org/user-manual/quickstart.html http://www.privoxy.org/user-manual/quickstart.html
- orionblastar 11y agoIt sounds like it was, but I am not 100% sure.
- chris_wot 11y agoThat's not going to work if everything runs via https. How exactly do most ad-blockers work? Are they searching the DOM and blocking elements from showing? Or can they see that there are asychronous requests being made from JavaScript to known ad networks? I'm musing out loud here, but take for instance the Sydney Morning Herald - the sheer number of trackers is extraordinary. The full load of just the main page, and images are reasonably light, is about 8MB... and there are literally dozens of trackers. How do ad-blockers prevent these from appearing?
- uxp 11y agoThey usually bind to events the browser triggers before a network request is made. This lets them literally block the browser from downloading any content from a source that may register your IP just from the connection (pixel tracking, etc). Searching the DOM and removing elements would still require a network request to obtain the content before realizing that it's a tracked element. By blocking the request from happening, we can truly say that an Content Blocker on iOS (for instance) speeds up the browsing experience because the request isn't even initiated.
- zuron7 11y agoIt is possible. Not sure how, but my school used to block all ads because of the limited bandwidth available. 50Mbps divided among ~1500 people with atleast 100 using it any given point.
- silverwind 11y agoA pretty good way to do this is to put something like http://someonewhocares.org/hosts/zero/ http://someonewhocares.org/hosts/zero/ in your router's host file and enable DNS intercepting. It won't catch sneaky same-domain ads but it's great in that it consumes no extra resources on the end device and also works on iOS devices.
- spookyuser 11y agowould this be more effective than something like adblock.sh https://github.com/teffalump/adblock https://github.com/teffalump/adblock
- pgl 11y agoOr: http://pgl.yoyo.org/adservers/serverlist.php?hostformat=bindconfig http://pgl.yoyo.org/adservers/serverlist.php?hostformat=bind...
- joenathan 11y agoI'm running Tomato firmware on my router(ASUS RT-AC68P) using an adblocking script. It will resolve known ad servers IP's to itself and serve a 1x1 transparent png instead of the ad. It's a combination of a DNS blacklist and pixelserv. All the devices on my network are ad free.
- atmosx 11y agoI run a modified version of PiHole which does the same. Doesn't block 100% of ads, but it blocks enough to keep me happy. I implemented DNSSEC + DNSCrypt just for sake of it too.
- deleted 11y ago[deleted]
- Buge 11y agoWhat about https ads?
- yareally 11y agoIf I were going with blocking at the router, I'd recommending finding a router that has an accessible host file and add them there. Either that or ipset + iptables (not as recommended for ad blocking since you're likely blocking by hostname and not IP). For example (should work on any router with iptables/ipset): https://github.com/RMerl/asuswrt-merlin/wiki/Using-ipset https://github.com/RMerl/asuswrt-merlin/wiki/Using-ipset https://github.com/RMerl/asuswrt-merlin/wiki/Disable-Windows-10-tracking https://github.com/RMerl/asuswrt-merlin/wiki/Disable-Windows... http://www.snbforums.com/threads/adblocking-with-combined-hosts-file.15309/ http://www.snbforums.com/threads/adblocking-with-combined-ho...
- deleted 11y ago[deleted]
- deleted 11y ago[deleted]
- dogma1138 11y ago
- cm2187 11y agoAs we are moving away from open computing platforms into closed, non customizable computers (iOS, Android, even Windows is heading this way), I wonder if it won't be the only solution. Apple, Google or Microsoft want to protect us from third party tracking but how else can we protect ourselves from Apple, Google and Microsoft tracking us? But it is just another game of cat and mouse. Malware already register new domains on the fly. Advertisers will simply do the same. Keeping these host files updated won't be easy.
- startling 11y agoThere are plenty of ways to detect ad-blocking at the network level. e.g. if your ad is an image you can just use `onerror`.
- Drakim 11y agoSuch detection will also trigger when your ad-network is down, so if you say something rude to the user or block the website's content you are gonna have some angry feedback from a lot of people.
- wutbrodo 11y agoI don't think this is too much of a concern. Assuming the ad network doesn't go down very often, you could do something like "Unable to deliver content. This may be caused by an ad blocker". These kinds of "something is wrong either on your end or ours" messages are fairly common across the web and in this case doesn't leave the user feeling wrongly blamed in case of false positive (since the problem "may" be the ad-blocker).
- nsgi 11y agoSaying something rude would be a bad idea anyway.
- deleted 11y ago[deleted]
- hannob 11y agoActually doing this at the network level is already done by some ad blockers. And it likely is going to cause more problems than it solves in light of https usage. The only thing you can do there is Man-in-the-Middle connections - with all the bad implications this has: https://blog.hboeck.de/archives/874-More-TLS-Man-in-the-Middle-failures-Adguard,-Privdog-again-and-ProtocolFilters.dll.html https://blog.hboeck.de/archives/874-More-TLS-Man-in-the-Midd...
- iSnow 11y ago>There's no way to detect a block at that level Huh, how hard would it be to check via JS if a layer ad really was shown?
- freddref 11y agoYou can redirect dns names to localhost in your hosts file. Super simple.
- wldcordeiro 11y agoMake it work with the beta as well to preempt its release. :)
- mechazawa 11y agoDone https://github.com/Mechazawa/FuckFuckAdblock/commit/a74307ca436da30130b377e07872262f324fd5af https://github.com/Mechazawa/FuckFuckAdblock/commit/a74307ca...
- manigandham 11y agoBut why?
- bpicolo 11y agoSeems like great advertising for fuckadblock
- deleted 11y ago[deleted]
- AndyKelley 11y agoIt's the next step in the ad blocking arms race. Next is FuckFuckFuckAdBlock, and so on. May the best one win.
- philangist 11y agoI know you're joking but the latest season of south park covers the "arms race" between advertisers, ad blockers, and sponsored content in a very hilarious and relatively accurate way. The ultimate result of course being terminator style AI advertisements.
- clsr 11y agoCan do: https://gist.github.com/clsr/3f5ca796463a0e6fc8af https://gist.github.com/clsr/3f5ca796463a0e6fc8af
- lagadu 11y ago(Fuck)^(n+1)Adblock
- waynecochran 11y agoThe license is even more flexible than the MIT license.
- morganvachon 11y agoThe license is the best thing about this, hands down. It's even more offensive to GPL evangelists than public domain and closed source licenses put together. Hooray Anarchy! (I still prefer BSD or MIT for myself though)
- giancarlostoro 11y agoI prefer BSD or MIT any day, I can't take the license seriously, heck even the Beerware License sounds like a better alternative, and a quite shorter one at that. As long as the whole liability claim is shoved in somewhere all should be well.
- vezzy-fnord 11y agoIt also fails to disclaim liability, though the WTFPL does have an optional warranty disclaimer variant. And no, I don't know what planet you live in, but it's not offensive to GPL evangelists (especially not more than proprietary licenses). In fact, the big irony is that the FSF both approves the WTFPL and considers it GPL-compatible, [1] but the OSI rejects it entirely! [2] The GPL evangelists have the upper hand here. [1] https://www.gnu.org/licenses/license-list.en.html#WTFPL https://www.gnu.org/licenses/license-list.en.html#WTFPL [2] http://opensource.org/minutes20090304 http://opensource.org/minutes20090304
- morganvachon 11y ago> And no, I don't know what planet you live in, but it's not offensive to GPL evangelists (especially not more than proprietary licenses). I was being facetious; it was a good-natured stab at Gnu folks, not meant to be offensive and certainly not serious. I know having a sense of humor is forbidden on HN but I can afford a few points for a silly joke every now and then. I still find the WTFPL itself hilarious in a good way. :-)
- codezero 11y agoI'm very pleased they include the link to the Trace Buster Buster: https://www.youtube.com/watch?v=Iw3G80bplTg https://www.youtube.com/watch?v=Iw3G80bplTg
- anonfunction 11y agoI was also happy to see the reference to one of my favorite all-time movies, The Big Hit. 1. http://www.imdb.com/title/tt0120609/ http://www.imdb.com/title/tt0120609/
- balls187 11y agoStraight Jackin'.
- crystalclaw 11y agoI went to the linked http://fuckadblock.sitexw.fr/ http://fuckadblock.sitexw.fr/ and their publicity example didn't load. Looks like my adblock rules are doing their job!
- zouhair 11y agoHaving ublock, Privacy Badger, Noscript and Disconnect makes it hard for ads to show up.
- johnmaguire2013 11y agoYou can get Privacy Badger and Disconnect lists in uBlock Origin. No reason to have all three.
- zouhair 11y agoMakes it easier to fine tune when needed.
- deleted 11y ago[deleted]
- mintplant 11y agoTrue for Disconnect, but not for Privacy Badger, which does dynamic, heuristics-based blocking. ref: https://www.eff.org/privacybadger https://www.eff.org/privacybadger under "How does Privacy Badger work?" I use it and uBlock in combination.
- drtz 11y agohttps://www.youtube.com/watch?v=vaMN0r7Tgxw https://www.youtube.com/watch?v=vaMN0r7Tgxw Couldn't resist
- chadzawistowski 11y agohttps://en.wikipedia.org/wiki/Radar_detector_detector https://en.wikipedia.org/wiki/Radar_detector_detector
- recroad 11y agoAs a content creator who runs two websites and relies on ads to pay bills because my actual job doesn't cover the costs, I say fuck anything that's trying to block ads.
- drdeca 11y agoI mean, if you get users to specifically and intentionally agree to not block your ads, then I would say they are obligated to not block your ads. (say, for example, a cookie-based "do you agree to not block ads on this website" thing for first time users) But at any point before that, as far as ads go, I think users have the right to run what software they will. Though I choose not to block ads.
- executesorder66 11y agoHow would you like to be continually forced to perceive everything you hate, while others profit off of your pain? Edited: to conform to site rules.
- dang 11y agoPersonal attacks are not allowed on Hacker News.
- executesorder66 11y agoThanks. I have altered my comment.
- TheLogothete 11y agoWhy do you feel forced? Stop using websites which rely on advertising. Simple enough.
- executesorder66 11y agoI don't feel forced at all. I use adblockers and my problem goes away. However I was talking about the 'fuck adblockers because I need ads to support my hosting costs' mentality. Those people want to force people to view ads so that they can make some money.
- mukundmr 11y agoHow about this instead? Plugs into U-Block Origin: https://github.com/reek/anti-adblock-killer#instruction https://github.com/reek/anti-adblock-killer#instruction
- aorth 11y agoI also thought the same. I have it enabled in my Chrome's uBlock Origin, but this test—linked from the FuckFuckAdblock repo—still detects it: http://fuckadblock.sitexw.fr/ http://fuckadblock.sitexw.fr/
- gorhill 11y agoVersion 1.4.0 of uBlock Origin adds the ability to redirect a blocked resource to a local, neutered version of the resource. FuckAdblock is part of the available neutered resources: https://github.com/gorhill/uBlock/blob/db74ea310b966def35e8422d617b0beae59994b8/assets/ublock/redirect-resources.txt#L35 https://github.com/gorhill/uBlock/blob/db74ea310b966def35e84... So a filter like the following one work with uBO 1.4.0 to neuter FuckAdblock on the site: ||fuckadblock.sitexw.fr/fuckadblock.js$script,redirect=fuckadblock.js-3.2.0
- simfoo 11y agoI have Ghostery and ublock origin installed, after adding this to my custom blockers it still tags me as "adblock enabled"
- archibaldJ 11y agoOr functionally: https://github.com/0a-/FuckFuckAdblockFunctionally https://github.com/0a-/FuckFuckAdblockFunctionally var _ = function(){}; var fuck = function(fn,fns){ fns.push(fn); //side effect here since this is OO. Otherwise could have written: fns = fns.concat(fn) var partiallyFuck = function(fn){ return fuck(fn,fns)}; var thunk = function(){ fns.map(function(a){a(); window.fuckAdBlock = fuck(_,[]); //forced to do side effect here due to OO window.blockAdBlock = fuck(_,[]); //forced to do side effect here due to OO }); return true}; return { onDetected: partiallyFuck, onNotDetected: partiallyFuck, check: thunk, emitEvent: thunk } window.fuckAdBlock = fuck(_,[]); window.blockAdBlock = fuck(_,[]);
- SCAQTony 11y agoI would not mind ads at all but ads are not really ads: they are trackers, beacons, analytics, and privacy busting cookies with none of the above asking for permission. I am blocking about 2,000 different versions of all of the above according to Ghostery. EFF's Privacy Badger is blocking a bunch to. We are being digitally assaulted. We need this stuff!
- derefr 11y agoDoes this mean that you support Apple's iAd platform? It's basically what you want: Apple serves the ads themselves to the devices they already know about, and the third parties don't get to know a thing about those devices. (They just have to trust Apple to e.g. actually be matching their inventory to the demographics they request.)
- cm2187 11y agoIsn't it in-app advertising? If so then it's even worse. My understanding is that cookies are not shared across apps, so the advertiser on app1 cannot correlate your identity with the one on app2, defeating cross-app tracking (the app equivalent of cross-website tracking). If you make it a central, Appled owned (i.e. access to much more information) then you re-enable cross-apps tracking.
- Twisell 11y agoHowever since at least 3 majors versions of iOS, iAd have an opt-out switch to allegedly prevent any tracking. I even think this opt-ou switch is now an explicit part of the set-up procedure when you activate the phone. You still have to trust Apple that this opt-out is effective. But I really see more harm than good for them should they actually be lying about that.
- makomk 11y agoThis is how most advertising platforms work. Google and Facebook, for example, serve the ads themselves and don't give your information to the advertisers because that'd help the advertisers target you better without the help of Google. It still means they all collect and store a whole bunch of incredibly intrusive tracking information; for example, if I recall correctly iAd tracks and stores your GPS location to target you with ads.
- wtallis 11y agoIt looks to me like this is just a special case of what NoScript's surrogate scripts feature has been providing for years. It allows substituting your own no-op scripts for whatever scripts you'd rather not run, but want to fool other scripts into thinking have been loaded.
- jayzalowitz 11y agoA part of me really wants a system that asks the browser for a "hey, you wanna give money instead" token that lists a payment system and a unique id. I don't wanna really hurt content creators.
- yegle 11y agoSeems like you are looking for contributor.google.com
- malka 11y agoIt still allows Google to track you. It's not a solution.
- jmnicolas 11y agoCan you really afford all the content you consume daily ? I sure couldn't.
- Riesling 11y agoI would also prefer this for social networks like facebook. They should have an additional option where they store none of your data and guarantee not to track you. As a compensation the user would need to pay money for using the service. This would also put a price tag on privacy and show people what they actually give away when they use the service in the traditional way.
- ainiriand 11y agoHi guys. I guess I'm one of the bad guys. I developed the foxplay, natgeoplay adblocker detectors. I used a very simple approach because we know that anyone that wants the content and not the ads is going to have it anyway. The ads in the pages are something that is needed. What is not needed are, as other commenters said, 3rd party cookies, trackers and analytics beacons. Keep up the good fight.
- self_awareness 11y agoAre your employers interested in developing adblocker-blocker-blockers?
- jbb555 11y agoAs far as I'm concerned advertisers had their chance but they totally abused their chance turning the internet into an ad-laden hellhole and now I just block everything I possible can. If a site decides it doesn't like this then it's literally no use to me. They had their chance, they abused it beyond all possible tolerance. I hate advertising on the internet now so much that if anything does manage to get past my blocks I make a conscious attempt to avoid buying anything from the scumbag organisation that thinks forcing their crap on my is anyway acceptable.
- basicplus2 11y agoMy thoughts exactly!
- owenwil 11y agoEnjoy your future of pay walls!
- lumberjack 11y agoContent optimized to generate revenue through direct payments will be of higher quality than content optimized to generate ad revenue. For example a paid search engine would display the most accurate results instead of those results that are quasi accurate but most likely to generate ad revenue. Also.on such an internet it would be easier to get users to pay for content because there would be infrastructure in.place and it would be the norm.
- pdkl95 11y agoI will. I will also enjoy watching a large amount of "content" find out exactly how much they were actually worth.
- owenwil 11y agoThere's definitely a shakeout coming among publishers and I won't deny that's a good thing, especially with all the clickbait out there now. It's just a shame the bad players have ruined free content for everyone else by slathering bad advertising everywhere.
- Orangeair 11y agohttps://xkcd.com/952/ https://xkcd.com/952/
- dantetheinferno 11y agoI hate to ask this, but could someone explain where this stops the FuckAdBlock? I can't see it in the code. EDIT: Oh nevermind; it calls a FuckAdBlock instance and then overrides it. Ha.