Geacon – Implement CobaltStrike’s Beacon In Go

Using Go to implement CobaltStrike’s Beacon
The world's most advanced processor in the desktop PC gaming segment Can deliver ultra-fast 100+ FPS performance in the world's most popular games 12 cores and 24 processing threads, bundled with the AMD Wraith Prism cooler with color controlled LED ... read more
(as of February 28, 2021 - More infoProduct prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on [relevant Amazon Site(s), as applicable] at the time of purchase will apply to the purchase of this product.)
AMD's fastest 6 core processor for mainstream desktop, with 12 processing threads Can deliver elite 100+ FPS performance in the world's most popular games Bundled with the quiet, capable AMD Wraith Stealth cooler 4.6 GHz Max Boost, unlocked for overc... read more
(as of February 28, 2021 - More infoProduct prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on [relevant Amazon Site(s), as applicable] at the time of purchase will apply to the purchase of this product.)
System ram type: DDR4_sdram
(as of February 28, 2021 - More infoProduct prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on [relevant Amazon Site(s), as applicable] at the time of purchase will apply to the purchase of this product.)
This project is for learning protocol analysis and reverse engineering only, if someone’s rights have been violated, please contact me to remove the project, and the last DO NOT USE IT ILLEGALLY
How to play
- Setup the teamserver and start a http lisenter, the teamserver will generate the file
.cobaltstrike.beacon_keys
. - Compile the BeaconTool with Jetbrains Idea, use command
java -jar BeaconTool.jar
to convert java keystore to PEM format. - Replace the RSA key pair in the file
cmd/config/config.go
(the RSA private key is not required, I wrote it in the code just for the record) - Compile the geacon whatever platform you want to run: for example, use the command
export GOOS="darwin" && export GOARCH="amd64" && go build cmd/main.go
to compile an executable binary running on MacOS. - Having fun ! PR and issue is welcome π
- Geacon has just been tested on CobaltStrike 3.14 and only support default c2profile, so many hardcode in the project and I will not try to implement more C2profile support at this moment.
- Thanks for @xxxxxyyyy‘s PR, And now Geacon supports CobaltStrike 4.0, please checkout the branch
4.0
to compile. - Geacon’s branch
master
supports CobaltStrike 4.1, currently available functions include: executing commands, uploading, downloading, file browser, switching the current working directory, and exiting the current process. - Geacon only focuses on protocol analysis, but if you want to experience more features, you can use another project of our partners, check out CrossC2 now!
Protocol analysis
To be continued, I will update as soon as I have time …
Todo
-
Support CobaltStrike 4.x -
Fix the OS icon issue in session table
-
String encoding issue
You may be interested in...
Download Geacon
If you like the site, please consider joining the telegram channel or supporting us on Patreon using the button below.