BishopFox / sliver

Adversary Emulation Framework
GNU General Public License v3.0
7.94k stars 1.05k forks source link

Webhook Notification Support #870

Open Greenwolf opened 1 year ago

Greenwolf commented 1 year ago

Is your feature request related to a problem? Please describe. I want to be notified easily when a new shell comes in from a campaign we are using Sliver for.

Describe the solution you'd like Sliver could have a command to enter a slack webhook URL from the console. Using notify as a primary command then slack as subcommand leaves it open to be expanded in the future (Discord, Telegram?).

notify slack https://slack.com/blahblah_webhook
notify telegram https://telegram.me/blahblah_webhook
notify discord https://discord.com/blahblah_webhook

It should then trigger the webhook whenever a new shell comes in, posting the following information: ID Name Transport Remote Address Hostname Username Operating System

Initially I think these should be applied globally to the Sliver instance, but future improvements could be to attach different webhooks to different listeners, for different campaigns etc. Webhooks applied to listeners should overrule the global webhook values.

Describe alternatives you've considered Telegram or Discord could be implemented if easier. Honestly having all of them would be fantastic. The C2 Framework Mythic only has Slack, so implementing all 3 would make Sliver pull ahead here.

Additional context Thanks for the awesome C2 framework! We've been using it a lot on our operations recently!

moloch-- commented 1 year ago

We may at some point add native support, in the interim you can implement this functionality fairly easily with https://github.com/moloch--/sliver-py or https://github.com/moloch--/sliver-script

e.g. https://github.com/ezra-buckingham/sally-the-sliver-siren

Greenwolf commented 1 year ago

Awesome, thank you for the links.