Skip to content

Bode-Raymond/hackermind

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

HackerMind

HackerMind is a document query system that is specifically designed for querying some of the most popular cybersecurity knowledge base wikis. The information in these wikis cover many different topics and techniques in information security. More specifically, the majority of documents on these wikis are focused on offensive security concepts, techniques, and walkthroughs. The purpose of HackerMind is to provide an easily accessible interface for querying all of these information sources at once instead of searching through them individually. The successful implementation of HackerMind will allow for the near instantaneous retrieval of relevant information, which will save time in research allowing for users to spend more time completing tasks instead of researching techniques.

Installation

  1. Clone the repository and navigate to the hackermind directory:
git clone https://github.com/Bode-Raymond/hackermind.git
cd hackermind
  1. Update git submodules
git submodule init
git submodule update
  1. Create a python virtual environment using Python 3.12 (Tested with Python 3.12, unknown if <3.12 works):
python -m venv venv
  1. Activate the virtual environment:
source venv/bin/activate
  1. Install dependencies:
pip install -r requirements.txt

Usage

  1. Parsing data from raw data sources:
python src/hackermind.py parse

Note: Raw data can be found in ./data/raw/. Parsed documents are written to ./data/docs.json

  1. Analyzing parsed data for some basic statistics:
python src/hackermind.py analyze

Note: Graphical results are outputed to ./static/

  1. Run BM25 test:
python src/hackermind.py bm25

Note: Queries that are being tested can be found in ./data/queries.txt. All output from the test goes to the command line.

Web App deployment

  1. Follow the above installation steps

  2. Run the following commands to start the server

cd site
python app.py

Note: This can be set up to run as a service or in the backgroud. To modify hosting parameters, please see site/config.py