Alikhalkhali / programs-watcher

A Python script designed to monitor bug bounty programs for any changes and promptly notify users.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Table of Contents

InstallationConfiguring Programs WatcherContributingLicenseContact

Programs Watcher

Programs Watcher is a Python program that monitors and notifies you of new updates from various bug bounty platforms. It uses MongoDB for data storage and Discord webhooks for notifications.

Youtube Video

Video Thumbnail

Installation

To install Programs Watcher, you have two options depending on your needs.

Option 1: Docker Installation (Recommended for server environments)

  1. Clone the repository to your local machine:
git clone https://github.com/Alikhalkhali/programs-watcher.git
  1. Change directory to the project folder:
cd programs-watcher
  1. In the config.yml file, replace <YOUR DISCORD WEBHOOK> with your Discord webhook URL.
  2. Run:
docker-compose up -d

Option 2: Manual Installation (Recommended for desktop and laptop usage)

This option is suitable for users who want to run Programs Watcher on their local machines and manually trigger updates and notifications.

  1. Install MongoDB:

    • Download and install MongoDB from the official website: MongoDB Download
    • Follow the installation instructions for your operating system.
  2. Clone the repository to your local machine: ‍‍‍

git clone https://github.com/Alikhalkhali/programs-watcher.git
  1. Change directory to the project folder:
cd programs-watcher
  1. In the config.yml file, replace <YOUR DISCORD WEBHOOK> with your Discord webhook URL and update the MongoDB connection URL to mongodb://localhost:27017/.

  2. Install the required dependencies:

pip3 install -r requirements.txt
  1. Run the program:
python3 main.py

Remember to manually run the program whenever you want to check for updates and receive notifications. This option is recommended for desktop and laptop installations.

Configuring Programs Watcher

The Programs Watcher program uses a configuration file named config.yml to store information about the bug bounty platforms to monitor and the notification options to use.

Discord Webhook

To use the Discord webhook, replace <YOUR DISCORD WEBHOOK> with the actual URL of your webhook in the following line:

discordWebhook:
programs_watcher: <YOUR DISCORD WEBHOOK>

MongoDB

  • uri: This is the URI of the MongoDB database that the application will use to store data.
  • database: This is the name of the database that the application will use to store data.

Platforms

This section contains a list of bug bounty platforms to monitor. For each platform, provide the name, URL, and a set of notification options. The notification options specify which types of changes should trigger notifications.

Monitor:

Specify the monitoring options for the platform.

  • rdp: Set to true if you want to monitor RDP programs.
  • vdp: Set to true if you want to monitor VDP programs.
  • excluded_programs: List the URLs of the programs you wish to exclude from monitoring. Please note that this applies only to public programs.
  • specific_programs: List the specific program URLs you want to monitor. Note that it only monitors public programs. For example:
    • bugcrowd:
        specific_programs: 
          - https://bugcrowd.com/rarible-ogmbb
          - https://bugcrowd.com/smartthings
    • hackerone:
        specific_programs: 
          - https://hackerone.com/phabricator?type=team
          - https://hackerone.com/yahoo?type=team
    • intigriti:
        specific_programs: 
          - https://app.intigriti.com/programs/portofantwerp/nxtport
          - https://app.intigriti.com/programs/intergamma/intergamma
    • yeswehack:
        specific_programs: 
          - https://yeswehack.com/programs/swiss-post-evoting
          - https://yeswehack.com/programs/dana-bug-bounty-programd

Notifications

To receive notifications for a specific type of change, set the corresponding notification option to true. The available notification options are:

  • new_program: Notify when a new program is added.
  • removed_program: Notify when a program is removed.
  • new_inscope: Notify when a new scope is added.
  • removed_inscope: Notify when a scope is removed.
  • new_out_of_scope: Notify when a new out-of-scope item is added.
  • removed_out_of_scope: Notify when an out-of-scope item is removed.
  • new_scope: Notify when a scope is added or removed.
  • changed_scope: Notify when a scope is modified.
  • new_type: Notify when a new program type is added.
  • new_bounty_table: Notify when a new bounty table is added.

Fill in the necessary information for each platform that you want to monitor.

Contributing

If you would like to contribute to this project, please fork the repository and submit a pull request.

License

This project is licensed under the MIT license. See the LICENSE file for details.

Contact

If you have any questions or concerns, please feel free to contact me directly on social media:

I am always happy to hear from you and will do my best to respond to your questions as soon as possible.

For Support:

"Buy Me A Coffee"

About

A Python script designed to monitor bug bounty programs for any changes and promptly notify users.

License:MIT License


Languages

Language:Python 99.2%Language:Dockerfile 0.8%