.----------------. .----------------. .----------------. .----------------. .----------------. .----------------.
| .--------------. || .--------------. || .--------------. || .--------------. || .--------------. || .--------------. |
| | ______ | || | __ | || | ______ | || | ____ ____ | || | ______ | || | _____ | |
| | |_ _ \ | || | / \ | || | |_ _ \ | || | |_ _||_ _| | || | .' ___ | | || | / ___ `. | |
| | | |_) | | || | / /\ \ | || | | |_) | | || | \ \ / / | || | / .' \_| | || | |_/___) | | |
| | | __'. | || | / ____ \ | || | | __'. | || | \ \/ / | || | | | | || | .'____.' | |
| | _| |__) | | || | _/ / \ \_ | || | _| |__) | | || | _| |_ | || | \ `.___.'\ | || | / /____ | |
| | |_______/ | || ||____| |____|| || | |_______/ | || | |______| | || | `._____.' | || | |_______| | |
| | | || | | || | | || | | || | | || | | |
| '--------------' || '--------------' || '--------------' || '--------------' || '--------------' || '--------------' |
'----------------' '----------------' '----------------' '----------------' '----------------' '----------------'
Version 0.1 (always non-production) (updates will be infrequent and sporadic))
Written by - Adam Compton (@tatanus)
Requirements:
- Python 3.x (probably 3.10+) CURRENTLY BROKEN in Python3.12
- Python libraries: requests, paramiko, pycryptodome
Links:
- Blog Post regarding BabyC2 can be found here: XXX
- Video of a conference talk regarding BabyC2 can be found here: XXX
Summary: Baby C2 is a simple C2 written in Python. It is not intended to be used in a production environment. It is intended to be used as a learning tool for those interested in learning about C2s.
It consists of a standalone python server and various agents written in a variety of languages all communicating over either:
- HTTP/HTTPS
- TCP
- TCP (encrypted)
- TCP (ssl wrapped)
- SSH
Future work:
- Add more agents (js, c, c++, etc.)
- AV evasion
- socks proxy
- peer-to-peer
Special thanks: