Software engineer Chris Wellons writes about tar-pitting nefarious SSH probes. Anyone with a publicly-facing SSH server knows that it is probed from the moment it is turned on. Usually, the overwhelming majority of incoming connection attempts are malevolent in nature. There are several ways to deal with these attempts, one method is to drag out the response for as long as possible.
This program opens a socket and pretends to be an SSH server. However, it actually just ties up SSH clients with false promises indefinitely — or at least until the client eventually gives up. After cloning the repository, here’s how you can try it out for yourself (default port 2222):
[...] Your SSH client will hang there and wait for at least several days before finally giving up. Like a mammoth in the La Brea Tar Pits, it got itself stuck and can’t get itself out. As I write, my Internet-facing SSH tarpit currently has 27 clients trapped in it. A few of these have been connected for weeks. In one particular spike it had 1,378 clients trapped at once, lasting about 20 hours.
(Score: 0) by Anonymous Coward on Monday March 25 2019, @09:02PM
As I've mentioned above in another post. I use a whitelist to limit the problem. I know which subnet the authorized logins are going to come from, no reason to let the whole world open a connection. Having limited the scope of the problem, an automated log-monitoring system for banning unauthorized access is not going to be a demanding task.
I think port knocking is pretty cool, but I haven't got a use for it yet.