frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Open in hackernews

Leeks and Leaks

https://daniel.haxx.se/blog/2025/05/16/leeks-and-leaks/
123•mrmanner•11mo ago

Comments

Snawoot•11mo ago
Side note: redirection of .onion domain to Tor proxy is how proxy routing with JS script illustrated by example in dumbproxy docs: https://github.com/SenseUnit/dumbproxy?tab=readme-ov-file#up...
immibis•11mo ago
One of the things on my cool ideas list is AF_ONION. getaddrinfo should be able to translate a .onion DNS name into an AF_ONION address immediately, and then you should be able to open an AF_ONION socket to that address. Tor would instantly be compatible with every program that doesn't assume IPv4/6 (which is shockingly few, but automatic Tor support would be a good reason to fix that). Same with I2P.

Prior to that, .onion blocking in getaddrinfo would also make sense - it would apply to a large swath of apps - and could be overridden with nsswitch.conf, perhaps.

Props to Daniel for recognizing that the situation is impossible to solve in a way that pleases everyone. Some people would just change it to meet the demands of the last person who asked, without thinking deeper.

knome•11mo ago
if they're going to be arbitrarily against env vars, like CURL_HOME, CURL_SSL_BACKEND, CURL_CA_BUNDLE, or the other dozen-ish variables curl already checks, an option in could .curlrc seem reasonable.

of course, having a CURL_ALLOW_ONION would allow the oniux program to set it, which would very easy and straight forward for both sides.

alternately, oniux could itself run a proxy and set the appropriate proxying environment variable, like HTTPS_PROXY. This would have the advantage of curl not having to do anything, but would add a rather ugly bit of complication to oniux.

seeing as the ability to run and inform curl of a proxy means oniux can already bypass the onion blocking with an envvar, adding one specifically to do that is convenient for callers, and does not expose the user to parent programs controlling onion exposure any more than it already does.

at best you could argue that requiring a full proxy makes it slightly harder for naive users to accidentally expose themselves since it would raise the bar for exposure from what curl knows, being the env var, to what curl has, in the form of an available proxy endpoint, but this isn't really a great excuse not to implement the CURL_ALLOW_ONION env var.

it's nice that curl is helpful for blocking by default, but having curl require the user to jump through hoops to unblock onion is a bit much.

remram•11mo ago
This doesn't really fix the problem. Curl is not the only tool to have implemented this block, many tools have, this was the point of Tor requesting this mechanism via an RFC. Is oniux going to set hundreds of environment variables to deactivate the block in all programs they know about? And cause users to send bug reports to all programs complying with their RFC that their tool doesn't yet know the workaround for?

The fix is much simpler: have oniux set $http_proxy (and drop non-tor traffic). This is the mechanism that makes the more sense and is in line with their own RFC.

nytpu•11mo ago
Almost like those existing env vars made it clear that they were mistakes that make behavior inconsistent (especially libcurl) and they want to avoid repeating it with additional env vars. Having almost contributed to Curl before, they repeatedly note for contributors that just because old code does something questionable doesn't mean your new code is allowed to do it—if anything, you're just highlighting the questionable piece of old code as being important for them to rewrite soon (of course they can't remove the current env vars for compatibility reasons).

And the article specifically notes that the current solution doesn't work, but it requires discussion on what the best solution is instead of just taking the literal first solution suggested by someone.

captainmuon•11mo ago
I feel like most people only use Tor via the Tor browser or a socks proxy, and the developers in the ecosystem cater only to these users. But there are a bunch of other creative uses of Tor around.

A couple of years ago, I used the TransPort feature of Tor combined with an iptables rule to redirect certain applications over Tor, like a web browser. The goal was a poor man's VPN. Access some websites without your local network admin to know about it, and without the website to know who you are. Back then there was Java applets and Flash, and this worked to hide network requests from them, too, as opposed to other solutions. Later iptables removed the feature that allowed you to filter on PID and broke my workflow. I changed it to use a dedicated unix user for tor, but that broke at some point, too, and I just got a commercial VPN.

Tor discouraged my use case, and I guess if you are afraid of being tracked or recognized as a returning user, then you should stick to Tor browser. But everybody has their own use cases.

Joker_vD•11mo ago
> redirect certain applications over Tor, like a web browser

I personally use a proxy.pac file (which all both Firefox/Chrome support) with roughly the following contents:

    function FindProxyForURL(url, host) {
        var httpProxy = "PROXY localhost:3128";
        var onionProxy = "SOCKS5 localhost:9050";

        if (host.endsWith(".onion")) {
            return onionProxy;
        }

        var proxiedDomains = [
              "example.com",
              ...
        ];

        for (var proxied of proxiedDomains) {
            if (shExpMatch(host, proxied) || shExpMatch(host, "*." + proxied)) {
                return httpProxy;
            }
        }

        return "DIRECT";
    }
The only inconvenient part is that Chrome for some stupid reason can't read this file from a file:// url, so I have to host it on my localhost; oh well.
geocar•11mo ago
Take care with this. Some people are putting sneaky code in that detects if your regular non-proxied access will receive some other network path via a .onion domain. It is not clear to me what exactly they are doing with this knowledge.
loa_in_•11mo ago
That's anecdotal or is there something to confirm this?
iaaan•11mo ago
Not the person you replied to, but theoretically, it's easy for me to imagine how that would work, so I'd definitely be wary of using a solution like this.
geocar•11mo ago
Hi. I checked your profile and it says you like to be referred to as a "black hat hacker" who is being "pursued by multiple agencies".

Can you explain exactly what you hope to do with this knowledge?

Or is it not obvious when pointed out to you that you would have a different IP address accessing a .onion address and a .com address at roughly the same time?

irelephant•11mo ago
It says "i wish" right under that.
fucker42069•11mo ago
terrible idea since .onion websites can (and many do) load resources from non-.onion urls
amiga386•11mo ago
I feel the new oniux command is doing both the right thing and the wrong thing:

- right thing: catch every network access and redirect to Tor

- wrong thing: create the user expectation that (if you remember to prepend "oniux") it'll catch every network access and redirect to Tor

It is essentially moral hazard. What happens when you accidentally forget "oniux"? Or think you've booted up a Tails environment but it's not? Or mistake the Tor Browser window for a Firefox window? You only have to resolve a DNS name _once_ for the world to know you're interested in accessing it.

I like the idea that oniux should not only intercept gethostbyname(), but also always set standard environment variables pointing to its SOCKS proxy. That way curl can do the right thing - refuse to pass .onion names to gethostbyname() - but support automatically passing them on to a proxy. If it's a non-Tor proxy, it should also do the right thing and refuse to resolve .onion addresses, leaving only safe ways forward, which is passing on name resolution to whichever proxy is configured, and the only proxy that will resolve .onion addresses is the Tor proxy.

0points•11mo ago
oniux is completely new to me, but this is not at all a new idea.

torsocks has been available doing the same thing since 2008.

irelephant•11mo ago
I'd say its advantage is being made officially by tor.
Ey7NFZ3P0nzAe•11mo ago
Had not heard about oniux:

https://blog.torproject.org/introducing-oniux-tor-isolation-...

ChatGPT Images 2.0

https://openai.com/index/introducing-chatgpt-images-2-0/
100•wahnfrieden•3h ago•106 comments

The Vercel breach: OAuth attack exposes risk in platform environment variables

https://www.trendmicro.com/en_us/research/26/d/vercel-breach-oauth-supply-chain.html
220•queenelvis•5h ago•85 comments

Britannica11.org – a structured edition of the 1911 Encyclopædia Britannica

https://britannica11.org/
173•ahaspel•4h ago•80 comments

Stephen's Sausage Roll remains one of the most influential puzzle games

https://thinkygames.com/features/10-years-of-grilling-stephens-sausage-roll-remains-one-of-the-mo...
73•tobr•3d ago•34 comments

Framework Laptop 13 Pro

https://frame.work/laptop13pro
709•Trollmann•4h ago•406 comments

Cal.diy: open-source community edition of cal.com

https://github.com/calcom/cal.diy
116•petecooper•4h ago•34 comments

Laws of Software Engineering

https://lawsofsoftwareengineering.com
767•milanm081•11h ago•385 comments

A Periodic Map of Cheese

https://cheesemap.netlify.app/
147•sfrechtling•5h ago•64 comments

Edit store price tags using Flipper Zero

https://github.com/i12bp8/TagTinker
242•trueduke•2d ago•250 comments

Zindex – Diagram Infrastructure for Agents

https://zindex.ai/
13•_ben_•1h ago•5 comments

My practitioner view of program analysis

https://sawyer.dev/posts/practitioner-program-analysis/
22•evakhoury•1d ago•0 comments

Changes to GitHub Copilot individual plans

https://github.blog/news-insights/company-news/changes-to-github-copilot-individual-plans/
235•zorrn•1d ago•41 comments

Theseus, a Static Windows Emulator

https://neugierig.org/software/blog/2026/04/theseus.html
59•zdw•1d ago•6 comments

I don't want your PRs anymore

https://dpc.pw/posts/i-dont-want-your-prs-anymore/
145•speckx•2h ago•84 comments

Show HN: GoModel – an open-source AI gateway in Go

https://github.com/ENTERPILOT/GOModel/
151•santiago-pl•8h ago•56 comments

In the UK, EVs are cheaper than petrol cars, thanks to Chinese competition

https://electrek.co/2026/04/18/in-the-uk-evs-are-cheaper-than-petrol-cars-thanks-to-chinese-compe...
65•breve•2d ago•39 comments

Trellis AI (YC W24) Is hiring engineers to build self-improving agents

https://www.ycombinator.com/companies/trellis-ai/jobs/SvzJaTH-member-of-technical-staff-product-e...
1•macklinkachorn•5h ago

Show HN: Backlit Keyboard API for Python

https://github.com/itsmeadarsh2008/backlit-kbd
6•itsmeadarsh•2d ago•1 comments

Fusion Power Plant Simulator

https://www.fusionenergybase.com/fusion-power-plant-simulator
130•sam•7h ago•71 comments

Running a Minecraft Server and More on a 1960s Univac Computer

https://farlow.dev/2026/04/17/running-a-minecraft-server-and-more-on-a-1960s-univac-computer
174•brilee•3d ago•28 comments

California has more money than projected after admin miscalculated state budget

https://www.kcra.com/article/california-more-money-than-projected-newsom-miscalculated-budget/710...
71•littlexsparkee•1h ago•31 comments

Show HN: VidStudio, a browser based video editor that doesn't upload your files

https://vidstudio.app/video-editor
227•kolx•10h ago•78 comments

Modern Front end Complexity: essential or accidental?

https://binaryigor.com/modern-frontend-complexity.html
54•gsky•2d ago•38 comments

Meta to start capturing employee mouse movements, keystrokes for AI training

https://www.reuters.com/sustainability/boards-policy-regulation/meta-start-capturing-employee-mou...
47•symisc_devel•5h ago•9 comments

Meta capturing employee mouse movements, keystrokes for AI training data

https://economictimes.indiatimes.com/tech/technology/meta-to-start-capturing-employee-mouse-movem...
180•dlx•4h ago•117 comments

A type-safe, realtime collaborative Graph Database in a CRDT

https://codemix.com/graph
138•phpnode•11h ago•41 comments

MNT Reform is an open hardware laptop, designed and assembled in Germany

http://mnt.stanleylieber.com/reform/
257•speckx•1d ago•95 comments

Claude Code removed from Anthropic's Pro plan

https://claude.com/pricing
218•JamesMcMinn•1h ago•126 comments

Ibuilt a tiny Unix‑like 'OS' with shell and filesystem for Arduino UNO (2KB RAM)

https://github.com/Arc1011/KernelUNO
53•Arc1011•5h ago•12 comments

Kasane: New drop-in Kakoune front end with GPU rendering and WASM Plugins

https://github.com/Yus314/kasane
39•nsagent•6h ago•5 comments