I setup SSHD to listen on a wireguard interface rather than listening on all interfaces. This makes SSHD only accessible to wireguard peers rather than the entire internet. A nice aspect of wireguard is that it's "steath", meaning that it does not respond to unauthenticated connections at all, so there is no way to probe and scan for wireguard listeners at all. I think setting up daemons behind wireguard offers a lot…
> A nice aspect of wireguard is that it's "steath", meaning that it does not respond to unauthenticated connections at all, so there is no way to probe and scan for wireguard listeners at all. I did not know this. That’s really cool. Is it done over a stateless protocol like UDP, or is a TCP connection opened first? Ie. is it impossible to see if there’s even a server there at all, or is it first revealed that there’…
Brute.Fail: Watch brute force attacks fail in real time
221–230 of 268 posts
Re: Brute.Fail: Watch brute force attacks fail in real time
#222Re: Brute.Fail: Watch brute force attacks fail in real time
#223Re: Brute.Fail: Watch brute force attacks fail in real time
#224Earlier quoted context omitted.
How short we talking? Since there's multiple opportunities to inject code, it's possible to split out the payload across multiple fields: https://www.highseverity.com/2011/06/xss-in-confined-spaces.... Ten characters per block is enough for: /* */eval(/* */'....'+/* */'....'+/* */'....'+/* ... */)/* */ Best to escape everything at render time.
Everything is escaped server side before it is sent to the client. Shoot me an email and I will let you play with it after the HN traffic dies down.
Re: Brute.Fail: Watch brute force attacks fail in real time
#225Re: Brute.Fail: Watch brute force attacks fail in real time
#226Earlier quoted context omitted.
That's still not really security but just a nuisance mitigation IMO :)
It's both, really. If you're not getting scanned, you've reduced an attack surface, and that can only be good.
But I know I'm a bit of an absolutist on security.
Re: Brute.Fail: Watch brute force attacks fail in real time
#227Re: Brute.Fail: Watch brute force attacks fail in real time
#228Earlier quoted context omitted.
Port knocking as it's usually done is easily sniffed. Perhaps using a dynamic TOTP-like time based seed to constantly rotate the ports might help. But it sounds overly complex. It feels very like a "key under the third plant on the right" kinda thing. Not a solid security measure.
Single packet authorization. It's like the server is not even there unless you send a cryptographically signed packet https://cipherdyne.org/fwknop/docs/SPA.html
Re: Brute.Fail: Watch brute force attacks fail in real time
#229Earlier quoted context omitted.
Earlier this month I was downloading top 1 million websites' robots.txt and some guy just served 100mb of whitespace :/
Once I was trying to scrape from some internal API, and made a request that used parameters the real client wouldn't make. I didn't expect curl to scream "FUCK YOU " at me. Presumably the name belonged to someone who scraped it before.
Re: Brute.Fail: Watch brute force attacks fail in real time
#230Earlier quoted context omitted.
is it possible? how did you filter? (I've tried 2 years ago: at that time even aws is not able to provide a reliable EU ip list)
I use this setup [1] on my servers. IPs are mapped to countries using Maxmind's GeoLite2 database. Linux's Tcp Wrappers are configured to block access for all IPs that aren't in my country. A custom fail2ban jail adds all IPs that get blocked by the Tcp Wrappers to the system's firewall. [1]: https://www.axllent.org/docs/ssh-geoip/