Knock: A Linux kernel patch for NAT-compatible, stealthy port knocking

A Linux kernel patch that “implements a new NAT-compatible, TCP option for stealthy port knocking with a few new twists for improved security” has been released.

Port knocking is a security implementation that’s designed to reduce the visibility of TCP servers on the network. A good port knock tool renders TCP servers stealthy, making them invisible to port scanners.

The point of a port knock tool is to make TCP servers respond to TCP SYN request only after a pre-defined sequence of packets have been sent and received. It’s like having a club house whose doors open only after a set number and sequence of knocks. There have been tools like in the past, but as far as I know, all have been in user space. Knock is thus likely the first port knock tool for Linux in kernel space.

From the release announcement:

  • Knocking is done in the Linux kernel. Applications can activate Knock with a single additional setsockopt call (in both client and server). Thus, once Linux has been patched, deployment will be much simpler compared to other implementations. Also, as Knock operates in the Kernel, timing attacks should be much harder to do.
  • Our Knock optionally does not merely enable opening the connection, but also can be used to protect the first N bytes of the TCP payload. Thus, given a sane protocol being run above TCP (one begins with a key exchange), an active attacker cannot simply take over the TCP connection after the handshake without also being locked into sending the same TCP payload. Thus, if the client begins by sending his public key and then continues to send data that must be authenticated with that key, even an active man-in-the-middle adversary cannot hijack the connection.

Knock is the work of Julian Kirsch, Maurice Leclaire and Christian Grothoff. The complete release announcement, associated documentations, as well as the code, are available here. The patch has been submitted to the Linux Kernel Mailing List (LKML), the kernel networking mailing list and subsystem maintainer. Could be coming to a Linux kernel next, if it passes muster.

Related Posts

Jitsi 1.0 released Version 1.0 of Jitsi, an audio/video and chat communicator, has been released. This comes after four months of active development, bug hunting and fix...
Dissecting the Android KorBanker malware KorBanker is a malware currently making the rounds on Android devices. It's only targeting banking customers in South Korea, especially customers ...
The K Desktop Environment is 15 Editor: The title of this article is misleading, but trust me, it was not intentional. KDE is actually 16, but KDE e. V., the non-profit organization ...
SkyJack software can hijack any drone, Prime Air drones included SkyJack software and a companion drone can be used to hijack and take command of nearby drones. I think a certain country in the Middle East has done ...
Hand of Thief trojan and your favorite Linux distribution The Hand of Thief (HoT) trojan is a commercial form-grabber and backdoor banking trojan released in July (2013) and aimed at Linux distributions. Codi...
Intel’s Compute Stick and your favorite Linux distribution With the announcement of the Compute Stick, Intel has signaled its intent to battle for market share at the low end of the mobile computing space. ...

We Recommend These Vendors and Free Offers

Launch an SSD VPS in Europe, USA, Asia & Australia on Vultr's KVM-based Cloud platform starting at $5:00/month (15 GB SSD, 768 MB of RAM).

Deploy an SSD Cloud server in 55 seconds on DigitalOcean. Built for developers and starting at $5:00/month (20 GB SSD, 512 MB of RAM).

Want to become an expert ethical hacker and penetration tester? Request your free video training course of Online Penetration Testing and Ethical Hacking

Whether you're new to Linux or are a Linux guru, you can learn a lot more about the Linux kernel by requesting your free ebook of Linux Kernel In A Nutshell.


One Comment

  1. Pingback: Links 13/12/2013: Linux (Kernel) News | Techrights

Leave a Comment

Your email address will not be published. Required fields are marked *

*