Live data from Hacker News

Endlessh: An SSH Tarpit

nullprogram.com

81–90 of 118 posts

Re: Endlessh: An SSH Tarpit

#81
post #77

I wonder if you could make the attacker crunch out some shah-256 and you can profit by mining Bitcoin.

You can no longer profit mining Bitcoin with a CPU or GPU. ASICs are needed.

The idea of this sort of scheme is that it's perfectly profitable if you aren't paying for the CPU and the power it uses.

Re: Endlessh: An SSH Tarpit

#83
This is the Internet equivalent of keeping phone scammers on the line by not just refusing to hang up, but actively interacting with them until they hang up (search YouTube for "tech support scammer trolling" for some entertainment...)

That said, I'm a little confused even after reading the linked RFC paragraph; it claims "The primary use of this feature is to allow TCP-wrappers to display an error message before disconnecting." but I'm not familiar with that term and there are no other occurrences of the word "wrapper" in that document.

Firefox and Chrome will spin on that server for hours before giving up.

For a web browser, this behaviour makes a lot of sense: timeouts are usually based on "I've waited for X and haven't received anything", not "this connection is like collecting water from a dripping tap". As long as there is a slow but steady stream of content coming in, you wouldn't want to abort until the user gives up or an internal limit on the data collected is hit (which is probably what happened with the author's tests --- a quick search doesn't yield the maximum size of the response headers browsers will accept, but servers usually have a configurable limit of a few KB at most for the request headers alone.)

Re: Endlessh: An SSH Tarpit

#84
What a wonderful opportunity to rickroll ... to prolong detection time rot13 it or walk through all the ciphers you can get away with.

cause we are never going to give you up ;)

Re: Endlessh: An SSH Tarpit

#85

Neat little tool! Since switching to Teleport I haven't had OpenSSH listening publicly for a while, just reverse proxies. Still, I'll prob spin up a small server for this to observe the patterns and IP locations. Also, don't think that posting this blog article on March 22 didn't go unnoticed :)

What is significant about March 22?

Re: Endlessh: An SSH Tarpit

#86

Could the return strings be generated by a Deep Learning powered fuzzer?

What are you trying to achieve?

He's trying to crash a script-kiddy's box with fuzzing. It's a fun thought, though I'm not sure it's practical as you'd only get a few tries. Fuzzing is typically an approach of throwing it the wall and seeing what sticks; if your deep learning found something that crashed most ssh clients that would just be a zero-day.

Re: Endlessh: An SSH Tarpit

#87
post #85

Neat little tool! Since switching to Teleport I haven't had OpenSSH listening publicly for a while, just reverse proxies. Still, I'll prob spin up a small server for this to observe the patterns and IP locations. Also, don't think that posting this blog article on March 22 didn't go unnoticed :)

What is significant about March 22?

SSH's default port is 22.

Re: Endlessh: An SSH Tarpit

#88

This is the Internet equivalent of keeping phone scammers on the line by not just refusing to hang up, but actively interacting with them until they hang up (search YouTube for "tech support scammer trolling" for some entertainment...) That said, I'm a little confused even after reading the linked RFC paragraph; it claims "The primary use of this feature is to allow TCP-wrappers to display an error message before dis…

TCP Wrappers was a popular access control mechanism in earlier decades: https://en.wikipedia.org/wiki/TCP_Wrappers

It does a number of things in userspace (with a simple minimalist code base) that people might nowadays more often do in a firewall.

Re: Endlessh: An SSH Tarpit

#89
If you don't want to waste resources and run a separate service, you can do a very similar thing with just iptables. Look for the TARPIT target.

> Captures and holds incoming TCP connections using no local per-connection resources. Connections are accepted, but immediately switched to the persist state (0 byte window), in which the remote side stops sending data and asks to continue every 60-240 seconds. Attempts to close the connection are ignored, forcing the remote side to time out the connection in 12-24 minutes.

Re: Endlessh: An SSH Tarpit

#90
post #34

Earlier quoted context omitted.

almost, but backwards. The bots all know port 22. Only you know which random other port is the real ssh port.

And the second guess would be port 2222, so don't use it for a real ssh server!

I use 12345 as my SSH port (not really)
Post reply on HN