All Projects → BountyStrike → Emissary

BountyStrike / Emissary

Licence: MIT license
Send notifications on different channels such as Slack, Telegram, Discord etc.

Programming Languages

go
31211 projects - #10 most used programming language
shell
77523 projects

Projects that are alternatives of or similar to Emissary

gosint
Gosint is a distributed asset information collection and vulnerability scanning platform
Stars: ✭ 344 (+942.42%)
Mutual labels:  bugbounty
Bugs-feed
Bug's feed is a local hosted portal where you can search for the latest news, videos, CVEs, vulnerabilities...
Stars: ✭ 90 (+172.73%)
Mutual labels:  bugbounty
rejig
Turn your VPS into an attack box
Stars: ✭ 33 (+0%)
Mutual labels:  bugbounty
tugarecon
Pentest: Subdomains enumeration tool for penetration testers.
Stars: ✭ 142 (+330.3%)
Mutual labels:  bugbounty
xssfinder
Toolset for detecting reflected xss in websites
Stars: ✭ 105 (+218.18%)
Mutual labels:  bugbounty
growl-alert
A simple growl like notification system.
Stars: ✭ 14 (-57.58%)
Mutual labels:  notification
gradejs
GradeJS analyzes production Webpack bundles without having access to the source code of a website. Instantly see vulnerabilities, outdated packages, and more just by entering a web application URL.
Stars: ✭ 362 (+996.97%)
Mutual labels:  bugbounty
jquery.peekABar
jQuery plugin for a Notification Bar
Stars: ✭ 59 (+78.79%)
Mutual labels:  notification
roboxtractor
Extract endpoints marked as disallow in robots files to generate wordlists.
Stars: ✭ 40 (+21.21%)
Mutual labels:  bugbounty
BugBountyHuntingScripts
I built some bash functions to help me while doing mundane and repetitive tasks using BBRF, Nuclei or other Bug bounty tool.
Stars: ✭ 160 (+384.85%)
Mutual labels:  bugbounty
PushNotifications
Push Notification using Embarcadero Rad Studio Tokyo 10.2.3 on Android and Apple Devices written in C++ and Delphi
Stars: ✭ 12 (-63.64%)
Mutual labels:  notification
SourceWolf
Amazingly fast response crawler to find juicy stuff in the source code! 😎🔥
Stars: ✭ 132 (+300%)
Mutual labels:  bugbounty
laravel-notification-settings
🔒 A Laravel package that allows you to check the notification settings before send them.
Stars: ✭ 28 (-15.15%)
Mutual labels:  notification
react-notification-alert
React bootstrap 4 notification alert
Stars: ✭ 34 (+3.03%)
Mutual labels:  notification
A-SOUL-Notification
一个A-SOUL成员动态/直播提醒插件,支持监控B站与抖音动态,可在Windows10 - Windows11系统上运行。
Stars: ✭ 56 (+69.7%)
Mutual labels:  notification
shoppers
Flutter E-Commerce App using Firebase, Razorpay and Stripe
Stars: ✭ 94 (+184.85%)
Mutual labels:  notification
Bug-Hunting
A Collection of Notes, Methodologies, POCs and everything else related to Bug Hunting.
Stars: ✭ 110 (+233.33%)
Mutual labels:  bugbounty
Awesome-HTTPRequestSmuggling
A curated list of awesome blogs and tools about HTTP request smuggling attacks. Feel free to contribute! 🍻
Stars: ✭ 97 (+193.94%)
Mutual labels:  bugbounty
ICU
An Extended, Modulair, Host Discovery Framework
Stars: ✭ 40 (+21.21%)
Mutual labels:  bugbounty
flydns
Related subdomains finder
Stars: ✭ 29 (-12.12%)
Mutual labels:  bugbounty

Emissary

GitHub Workflow Status
Send notifications via different channels such as Slack, Telegram or Teams in your bug bounty flow.

Motivation

The idea is to hook Emissary into https://github.com/BountyStrike/Bountystrike-sh which will notify me on Telegram when new domains have been found.

Usage

$ emissary
Send data through chat channels. Made by @dubs3c.

Usage:
  emissary [options] [message]

Options:
  -ch,  --channel      Specify a custom channel you have defined emissary.ini
  -in,  --inline       Specify channel directly in the commandline
  -m,   --message      Message to send
  -h,   --header       Custom header
  -si,  --stdin        Get message from stdin
  -e,   --email        Send via Email
  -txt, --text         Specify the field that contains the message. Default is 'message'
  -d,   --data         Specify additional data in json format that should be sent
  -r,   --rows         Max rows/lines to send, 0 for unlimited. Default 20
  -v,   --version      Show version

Examples:
  emissary --channel Telegram --message "Hello telegram"
  cat domins.txt | emissary -ch Slack --stdin --header "New subdomains from Google!"
  emissary -ch Discord -ch Telegram -m "Your message"
  emissary -in "webhook:=https://api.telegram.org/botxxxxx/sendMessage§data:={'chat_id': 'xxxx'}" -in "webhook:=https://hooks.slack.com/services/xxxxx" -m "Hack the planet!"

Create ~/.config/emissary.ini with the following:

[Telegram]
webhook=https://api.telegram.org/botxxxxxx:xxxxxxxxxxxxxxxxxxxxxxxxxxxxx/sendMessage
textField=text
data={"chat_id": "xxxxxx"}

[Slack]
webhook=https://hooks.slack.com/services/xxxxxxxxxx/xxxxxxxxxx/xxxxxxxxxx

[Teams]
webhook=https://outlook.office.com/webhook/xxxxxxxxxxxxxxxxxxxxx

[Email]
username=
password=
recipient=
server=smtp.gmail.com
port=587
subject="New domains found!"

When using gmail, you need to activate less secure apps on your account: https://myaccount.google.com/lesssecureapps

Now you can start using emissary :)

Custom Webhooks

It's possible to add your own channels as well, adding Discord as a custom channel looks like this:

[Discord]
webhook=https://discord.com/api/webhooks/xxxxxxxxxxxxxxxxxxxxxxxxxx
textField=content

And can be executed with emissary --channel Discord -m "It works!!!".

The following fields can be used for a given channel:

field description
webhook The actual webhook to send data to
textField Some API's have a specific json key where the message goes, here you can define that. Default key is text, e.g. {"text": "Your message"}.
data If you want to send additional data, you can specify that here as a json formatted string, e.g. data={"someKey": "someValue", "otherKey": "otherValue"}.

Pipe data via stdin:

$ cat domains.txt | emissary -ch telegram --stdin

Specify a message as an argument:

$ emissary -ch telegram --message "This is a very cool message"

Send to multiple channels:

$ cat domains.txt | emissary -ch telegram -ch slack -si

Send only 10 lines:

$ cat domains.txt | emissary -ch telegram -si --rows 10

Send everything from the file:

$ cat domains.txt | emissary -ch telegram -si -r 0

Emissary will only send 20 rows by default, this is to protect against accidentally sending a gazillion domains :) It can be overwritten with --rows 0 which means unlimited rows.

Multiple inline webhooks

It's possible use multiple webhooks directly on the command line without specifying them in config.ini.

The following command will send Hack the planet to Telegram and Slack:

emissary -in "webhook:=https://api.telegram.org/botxxxxx/sendMessage§data:={'chat_id': 'xxxx'}" -in "webhook:=https://hooks.slack.com/services/xxxxx" -m "Hack the planet!"

The same fields in config.ini are used inline as well. They can be used like so:

  • webhook:=<url>
  • textField:=<key>
  • data:=<additional json>

The character § is used as a delimiter between each field.

Contributing

Any feedback or ideas are welcome! Want to improve something? Create a pull request!

  1. Fork it!
  2. Create your feature branch: git checkout -b my-new-feature
  3. Commit your changes: git commit -am 'Add some feature'
  4. Push to the branch: git push origin my-new-feature
  5. Submit a pull request :D
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].