pkpoc-bpf | Stateful packet processing : port knocking PoC in BPF
kandi X-RAY | pkpoc-bpf Summary
kandi X-RAY | pkpoc-bpf Summary
pkpoc-bpf is a Python library. pkpoc-bpf has no bugs, it has no vulnerabilities, it has a Permissive License and it has low support. However pkpoc-bpf build file is not available. You can download it from GitHub.
Port knocking is a port obfuscation measure that consists in a secret sequence of “knocks” which have to be transmitted to a server before the latter opens a given port, usually SSH, for the client. Here the experiment creates two network namespaces, a client and a server. The client wants to reach a given server port, here TCP port 9922. It sends the packets of the secret sequence but, before those packets reach the network, they are caught by an eBPF filter installed on the tc (Linux traffic control) hook of the interface. The port knocking occurs at this level: thanks to tables, eBPF can implement the OpenState layer and provide stateful processing for the flow. So if the client sends the correct sequence of packets, the state is set to OPEN and the server sees traffic on its port 9922. Otherwise, all packets are dropped at the client's interface. The idea behind this PoC is to explore eBPF's stateful capabilities, and to integrate it, at a later stage, in a BPF version of a full BEBA switch.
Port knocking is a port obfuscation measure that consists in a secret sequence of “knocks” which have to be transmitted to a server before the latter opens a given port, usually SSH, for the client. Here the experiment creates two network namespaces, a client and a server. The client wants to reach a given server port, here TCP port 9922. It sends the packets of the secret sequence but, before those packets reach the network, they are caught by an eBPF filter installed on the tc (Linux traffic control) hook of the interface. The port knocking occurs at this level: thanks to tables, eBPF can implement the OpenState layer and provide stateful processing for the flow. So if the client sends the correct sequence of packets, the state is set to OPEN and the server sees traffic on its port 9922. Otherwise, all packets are dropped at the client's interface. The idea behind this PoC is to explore eBPF's stateful capabilities, and to integrate it, at a later stage, in a BPF version of a full BEBA switch.
Support
Quality
Security
License
Reuse
Support
pkpoc-bpf has a low active ecosystem.
It has 24 star(s) with 1 fork(s). There are 3 watchers for this library.
It had no major release in the last 6 months.
pkpoc-bpf has no issues reported. There are no pull requests.
It has a neutral sentiment in the developer community.
The latest version of pkpoc-bpf is current.
Quality
pkpoc-bpf has 0 bugs and 0 code smells.
Security
pkpoc-bpf has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.
pkpoc-bpf code analysis shows 0 unresolved vulnerabilities.
There are 0 security hotspots that need review.
License
pkpoc-bpf is licensed under the BSD-3-Clause License. This license is Permissive.
Permissive licenses have the least restrictions, and you can use them in most projects.
Reuse
pkpoc-bpf releases are not available. You will need to build from source code and install.
pkpoc-bpf has no build file. You will be need to create the build yourself to build the component from source.
Installation instructions are not available. Examples and code snippets are available.
It has 194 lines of code, 6 functions and 2 files.
It has medium code complexity. Code complexity directly impacts maintainability of the code.
Top functions reviewed by kandi - BETA
kandi has reviewed pkpoc-bpf and discovered the below as its top functions. This is intended to give you an instant insight into pkpoc-bpf implemented functionality, and help decide if they suit your requirements.
- Start a single flow
- Create a new NS namespace
- Release all resources
- Create a new NS entry
Get all kandi verified functions for this library.
pkpoc-bpf Key Features
No Key Features are available at this moment for pkpoc-bpf.
pkpoc-bpf Examples and Code Snippets
No Code Snippets are available at this moment for pkpoc-bpf.
Community Discussions
No Community Discussions are available at this moment for pkpoc-bpf.Refer to stack overflow page for discussions.
Community Discussions, Code Snippets contain sources that include Stack Exchange Network
Vulnerabilities
No vulnerabilities reported
Install pkpoc-bpf
You can download it from GitHub.
You can use pkpoc-bpf like any standard Python library. You will need to make sure that you have a development environment consisting of a Python distribution including header files, a compiler, pip, and git installed. Make sure that your pip, setuptools, and wheel are up to date. When using pip it is generally recommended to install packages in a virtual environment to avoid changes to the system.
You can use pkpoc-bpf like any standard Python library. You will need to make sure that you have a development environment consisting of a Python distribution including header files, a compiler, pip, and git installed. Make sure that your pip, setuptools, and wheel are up to date. When using pip it is generally recommended to install packages in a virtual environment to avoid changes to the system.
Support
For any new features, suggestions and bugs create an issue on GitHub.
If you have any questions check and ask questions on community page Stack Overflow .
Find more information at:
Reuse Trending Solutions
Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items
Find more librariesStay Updated
Subscribe to our newsletter for trending solutions and developer bootcamps
Share this Page