cowrie
https://github.com/micheloosterhof/cowrie
Python
Cowrie SSH/Telnet Honeypot
Triage Issues!
When you volunteer to triage issues, you'll receive an email each day with a link to an open issue that needs help in this project. You'll also receive instructions on how to triage issues.
Triage Docs!
Receive a documented method or class from your favorite GitHub repos in your inbox every day. If you're really pro, receive undocumented methods or classes and supercharge your commit history.
Python not yet supported0 Subscribers
Add a CodeTriage badge to cowrie
Help out
- Issues
- docs: add an operator skill file for LLM assistants
- docker: generate the version file inside the build when the context lacks it
- fix: stop forwarding after a rejected or malformed CONNECT response
- `TCPTunnelForwardingChannel.write()` keeps forwarding data after a non-`200 CONNECT` response, and can raise an unhandled `IndexError` on a malformed one
- `backend_pool producer_loop()` blocks the reactor thread on every iteration after the first
- `execute_ssh()`/`execute_telnet()` deferred never resolves if the connection fails or drops before the command completes
- Backend pool wire protocol has no message framing; `PoolServer.dataReceived()` assumes exactly one complete message per TCP read
- `self.guests` list is mutated without `guest_lock` by the producer, while consumer methods iterate/mutate it under the lock
- `Passwd.setpwentry()` reseeds the global random module using the attacker's login username, disrupting unrelated randomness in every other concurrent session
- `CowrieServer`'s docstring says it's shared per source IP so SFTP uploads are visible in SSH sessions, but it's actually created fresh for every single connection
- Docs
- Python not yet supported