- Home
- Honeypot Software
- Conpot
Conpot
What it is
Conpot is a free, open-source honeypot for collecting intelligence about attacks aimed at industrial control systems. It is self-hosted on Linux or POSIX systems and classified as a console application. The default profile imitates a Siemens S7-200 CPU with expansion modules and exposes Modbus, HTTP, SNMP, and S7comm services. Operators can run it in Docker or install it from PyPI or source; the current host guide requires Python 3.10 or newer. Custom templates and port changes let users shape the decoy. ConpotFS proxies files from a controlled location so protocol activity does not alter permissions on the real filesystem. HPFeeds support is included but disabled by default, and shared data is raw JSON. Accessing shared data requires an HPFriends account, accepting the share, and creating an authentication key. The project uses the GPL-2.0 license, which provides the software without warranty.
For and against
For
- Free and open source
- Docker, PyPI, or source deployment
- Emulates Siemens S7-200 and common protocols
- Custom templates and configurable ports
- Controlled filesystem proxying
Against
- Requires Python 3.10 or newer for host installation
- HPFeeds is disabled by default
- Shared data requires an HPFriends account
- License provides no warranty
The verdict
Conpot offers a configurable industrial-control-system decoy with several deployment paths and protocol emulations. Its self-hosted model and setup requirements suit technical operators comfortable managing Linux systems.
Who it suits
Conpot suits developers, ICS security researchers, and honeypot operators gathering information about industrial-control-system attacks. It is intended for self-managed Linux/POSIX deployments.
On the record
- Customization
- Users can edit XML profiles to configure emulated device information, Modbus data blocks, and SNMP MIB values.conpot.readthedocs.io · read 5 Oct 2026
- Data access
- The FAQ says users seeking shared Conpot data need an HPFriends account and must accept the share to create an auth key.conpot.readthedocs.io · read 4 Oct 2026
- Data sharing
- Conpot supports HPFeeds for sharing attack data, and HPFeeds is disabled by default.conpot.readthedocs.io · read 5 Oct 2026
- Default emulation
- The default profile emulates a Siemens S7-200 CPU with expansion modules and exposes Modbus, HTTP, SNMP, and s7comm.conpot.readthedocs.io · read 5 Oct 2026
- Deployment
- The documentation offers Docker, Docker Compose, and direct host installation options.conpot.readthedocs.io · read 5 Oct 2026
- Emulation
- The default profile emulates a Siemens S7-200 CPU and exposes MODBUS, HTTP, SNMP, and S7comm.conpot.readthedocs.io · read 4 Oct 2026
- Host requirement
- The host installation guide says Conpot requires Python 3.10 or newer.conpot.readthedocs.io · read 5 Oct 2026
- Intended audience
- Project metadata lists developers as the intended audience.github.com · read 4 Oct 2026
- Intended users
- The project describes its purpose as gathering intelligence on attacks against industrial control systems, making it relevant to ICS security research and honeypot operators.github.com · read 5 Oct 2026
- License
- The GitHub repository identifies the project license as GPL-2.0.github.com · read 5 Oct 2026
- Purpose
- Conpot is an ICS honeypot designed to collect intelligence about adversaries targeting industrial control systems.github.com · read 5 Oct 2026
- Runtime requirement
- The current host installation guide requires Python 3.10 or newer.conpot.readthedocs.io · read 4 Oct 2026
- Safe file system
- ConpotFS proxies files from a controlled location and avoids changing permissions on the actual file system.conpot.readthedocs.io · read 4 Oct 2026
- Security
- ConpotFS proxies files through a controlled location so protocol operations do not change the actual filesystem permissions.conpot.readthedocs.io · read 5 Oct 2026
- Security limitation
- The customization guide warns that SNMP could be abused for traffic amplification and describes request rate limits to mitigate this risk.conpot.readthedocs.io · read 5 Oct 2026
- Shared data format
- The FAQ describes shared data as raw JSON and says a Python client can consume it through HPFeeds.conpot.readthedocs.io · read 5 Oct 2026
- Support
- The project links documentation, a FAQ, and GitHub issues, with no commercial support terms stated on the pages reviewed.github.com · read 5 Oct 2026
- Supported environment
- The project metadata classifies Conpot as a console application for Linux/POSIX.github.com · read 4 Oct 2026