Skip to content
Keye is a reconnaissance tool that was written in Python with SQLite3 integrated. After adding a list of URLs, it will make a request to these URLs and try to detect changes based on their response's content length.
Branch: master
Clone or download
Latest commit 2a5f78f Jun 19, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.gitignore Add .gitignore Jun 10, 2019
LICENSE Initial commit May 25, 2019
README.md Readme minor fix in the installation section Jun 10, 2019
keye.py Add display URLs function Jun 5, 2019
requirements.txt New fixes and improvements Jun 5, 2019
slackconfig.py Update slackconfig.py Jun 5, 2019

README.md

What is Keye?

Keye is a reconnaissance tool that was written in Python with SQLite3 integrated. After adding a list of URLs, it will make a request to these URLs and try to detect changes based on their response's content length. This tool is supposed to be scheduled to run periodically at fixed times, dates, or intervals (Ideally each day). Recognized changes of URLs will be sent to Slack workspace with a notification push.

Thanks to Yassine Aboukir for his help and support on this project.

Requirements

  • Virtual Private Server (VPS) running on Unix.
  • Python 2.x or 3.x.
  • Free Slack workplace.

Installation & Configuration

First of all, you will have to clone the tool from Github to your server:

$ git clone https://github.com/clirimemini/Keye.git && cd Keye

Install the dependencies:

$ pip install -r requirements.txt (or pip3 install -r requirements.txt)

Next step is to create a Slack workspace, to where new recognized changes of URLs will be sent to. Just browse to https://slack.com/ and create a free account.

Then, create a channel on your workspace.

Next, we need to generate a Webhook URL for our channel so we can leverage Slack API.

Browse to https://api.slack.com/apps and create a new application.

Browse to Incoming Webhooks and create a Webhook, and link it to the channel that we created previously.

You will obtain a link in the following format:

https://hooks.slack.com/services/XXXXXXX/BF0XXXXME/XXXXXXXXXXXXX

Copy that link and edit slackconfig.py

Now, we need to add a new Cron job to schedule execution of Keye at given time. To do it, type:

$ crontab -e

Add the following line at the end of the Cron file:

0 */12 * * * cd /root/Keye/ && /usr/bin/python /root/Keye/keye.py

Now, we're done with installing and configuring Keye.

Usage

$ python keye.py -h

Short Form Long Form Description
-s --singleurl Single URL to add. E.g: http://google.com
-ul --urlslist File with new URLs to add. E.g: urls.txt
-rm --remove URL to remove from database. E.g: http://google.com
-d --display Display all monitored URLs.

Feedback and issues?

If you have any feedback, anything that you want to see implemented or if you're running into issues using Keye, please feel free to file an issue on https://github.com/clirimemini/Keye/issues

You can’t perform that action at this time.