Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/hacktix/openkeyscore
A modular information gathering tool with support for many sources of OSINT.
https://github.com/hacktix/openkeyscore
osint osint-tool scraper
Last synced: 21 days ago
JSON representation
A modular information gathering tool with support for many sources of OSINT.
- Host: GitHub
- URL: https://github.com/hacktix/openkeyscore
- Owner: Hacktix
- License: mit
- Created: 2023-12-14T16:54:44.000Z (about 1 year ago)
- Default Branch: master
- Last Pushed: 2024-02-05T09:01:40.000Z (about 1 year ago)
- Last Synced: 2024-11-15T23:37:07.319Z (3 months ago)
- Topics: osint, osint-tool, scraper
- Language: Python
- Homepage:
- Size: 62.5 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# OpenKeyscore
A modular information gathering tool with support for many sources of OSINT.## The Concept
OpenKeyscore is a relatively simple command line tool that automatically scrapes the internet for publicly available information based on the data you feed it. In the process of doing so, it builds a network of information, using the following key components:
### Nodes
A "node" is an abstract term for a piece of information. Pretty much anything can be a node: A Username, an Email Address, a Location Name, etc. The data that the user initially inputs is converted to nodes on startup. These nodes are then "fed" to so-called "Processors" which query publicly available OSINT sources for more information. If anything is found, the processor returns more nodes, which are then again fed to other processors, and so on.
### Processors
A "processor" is a class which is capable of consuming pre-determined types of nodes and querying OSINT sources using information from the consumed nodes. The data returned from the external endpoint is then *processed* (hence the name "Processor") and converted into more nodes which can then be fed to other processors.
## Quickstart
In order to get started, you will need to create a KeyScore Data file (.ksd by default). This file is a basic text file, and should have the following format:
```
:
::
```The amount of parameters required depends on the node type. If the `:` character is required to be part of the parameter data itself, you can escape it using a backslash: `\:`
Once you have created the file, you can start OpenKeyscore by using the following command: `python3 openkeyscore.py yourfile.ksd`
For more detailed options, please refer to the following documentation:
### Common Node Types
| Node Type | Parameter |
|-----------|-----------------------------------|
| Username | A username used in any service |
| Email | A standard email address |
| Website | A domain name or URL to a website |### Command Line Options
| Option | Description |
|---------------------|-----------------------------------------------------------------------------------------------------------------|
| `-d \| --depth` | The maximum amount of "child nodes" counted from the initial set of nodes before the scanner stops. Default: 5 |
| `--html` | An optional filename of an HTML file which will be generated by PyVis to visualize the scanners findings. |
| `-l \| --log-level` | The minimum log level which should be output. Default: INFO |## Disclaimer
This software is intended for educational and security research use. Under no circumstances should the author of this software be held accountable for any damages caused by the use of this software. The software itself exclusively utilizes publicly available information during its operation and therefore does not violate any laws or terms and conditions.