Skip to content

sibexico/deadend

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

C23 Support Me

Deadend

Lightweight scriptable honeypot runner that loads Lua scripts from a directory, compiles them into memory, listens with one TCP listener per script, and executes service emulation when a port is triggered. The idea is to confuse the red team or malicious agents during server observation and port scanning.

The code is clean and simple to understand, making it good for educational projects.

API & Scripting Manual

Attention! The current version is incompatible with scripts made for version <0.3.0. Since this program was used by just a couple of users, I decided not to change the first number in the semantic version.

Build

Requirements:

  • CMake 3.20+
  • C23 compiler
  • Lua development package (headers + library)

Linux

cmake -S . -B build
cmake --build build -j
./build/deadend -dir ./examples

Windows (PowerShell)

cmake -S . -B build
cmake --build build --config Release
.\build\Release\deadend.exe -dir .\examples

Usage

deadend -dir <path>

Script file naming

Deadend only loads files matching:

  • 1.lua ... 65535.lua
  • Non-numeric names are ignored silently.

Each valid filename indicates which TCP port the script will serve.

Example scripts

  • examples/22.lua: basic telnet-answer behavior
  • examples/80.lua: simple HTTP behavior

About

Lightweight scriptable honeypot runner

Resources

License

Stars

Watchers

Forks

Packages