Recent submissions

Comment · 1 month ago
This github search returns just 11 results, and the issues are more or less reasonable. Doesn't seem that egregious.
Comment · 1 year ago
Thanks! Yeah linux network namespaces are a powerhouse that we're only just starting to fully utilize (outside of containerization).
Comment · 1 year ago
Thank you! mitmproxy is fantastic - thanks for all the work that's gone into that project. Maybe we can get in touch and chat about all this stuff.
Comment · 1 year ago
Nothing at all!

You do need write access to /dev/net/tun. This is standard for all users for the distros that I've looked into, but it is ultimately a distro-specific thing.

Comment · 1 year ago
Unfortunately TLS happens inside the the application, not in the kernel, so using eBPF to hook syscalls to write won't help with TLS decryption.
Comment · 1 year ago
Fascinating, I hadn't heard of WARC - thanks for the pointer and I'll consider it.
Comment · 1 year ago
Comment · 1 year ago
Wireshark is awesome but yeah as others mentioned it's the TLS decryption piece that is difficult in that workflow
Comment · 1 year ago
Woah, this is super helpful info. Thanks. That sounds like a real possibility for a macOS port actually.
Comment · 1 year ago
This is a very interesting possibility actually. Not 100% sure what the implication would be but maybe there is something here.
Comment · 1 year ago
Yeah mitmproxy is great. The main difference with httptap is that it's an HTTP proxy server, so you have to configure your program to use a proxy server. When I wrote httptap I wanted to be able to run `httptap <command>` and see the httptraces right there in standard output. There is an absolute ton of cool things that mitmproxy can do that httptap is not even close to, like interactively modifying HTTP requests and such. Very cool project.
Comment · 1 year ago
Thanks!

I did try this with firefox but it doesn't work right now due to (I think) the user namespace messing with user IDs. I think I should be able to fix this, though. I will have to try it with other desktop apps soon too...

Comment · 1 year ago
Same here actually -- have wanted this from time to time for years. Finally sat down and worked it out.
Comment · 1 year ago
Yep. This is the first time I've mentioned this but there are actually two implementations of this in the codebase -- one uses gVisor and one is an incredibly bare-bones TCP implementation that I wrote myself in 550 lines of Go code (tcp.go). The home-grown one isn't used by default and it doesn't support much of TCP proper, but it actually works pretty well. You can use it with `--stack=homegrown`.
Comment · 1 year ago
Very cool! Would love to hear how it goes, especially any features that would be useful in the context of real-world usage.

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton