pignus-agent-for-internet-protection
Version 0.05
A Python GUI application for scanning URLs and domains for safety
Usage
- Install and upgrade virtualenv if not already done by executing
pip3 install virtualenv --user
- Clone the repository on your local drive and make it your current working directory.
- Create a virtual environment by executing
virtualenv venv
- Activate the virtual environment by executing
source venv/bin/activate
- Install all dependencies for the project by executing
pip3 install -r requirements.txt
- Run the project by executing
python3 pigipgui.py
- Sign up at VirusTotal website to get your own public API key.
- Create a new file called
virustotal.key
and store your key there.
- Queue URL scanning, get URL report or get domain report of your target.
- When done tinkering, deactivate the virtual environment by executing
deactivate
- Give stars to the repository if it was helpful
To-do
- [X] Build GUI and prototype UX for loopholes
- [X] Add function on single URLs for URL scanning
- [X] Add function on single URLs for URL reports
- [X] Add function on single URLs for domain reports
- [X] Add timer function to note the duration for scanning
- [X] Implement table iteration for list-of-tuples
- [X] Add clear button for all line edit boxes
- [ ] Add fixes for unresolved API request errors
- [ ] Cleanup and optimise code base
- [ ] Make miscellaneous bug fixes
Changelog
v0.01
- Initial build
- Built a robust GUI and checked loopholes
- Added functionality to queue URL scan
- Added way of dealing with APIKEY externally
v0.02
- Resolved API request errors from queue URL scan
- Added timer function for queue URL scan
- Handled exception where URLs could not be found
- Handled exception where API key was not provided
- Handled exception where API was overused
v0.03
- Added warning messages
- Added functionality to get URL report
- Switched fontface to improve legibility
- Added clear button for all line edit boxes
- Added message for timing and scan success
v0.04
- Resolved API request errors for get URL report
- Added functionality to get domain report
- Implemented table iterations for list-of-tuples
- Fix for URLs which are blocked by the ISPs
- Fix for timeout errors
v0.05 (Current)
- Cleaned up code from debug messages
- Added a new set of fonts for rastering
- Restructured
requirements.txt
for distribution
- Added generic fix for unindexed errors
- Fix for IndexError on table structuring
v0.06 (Oncoming)
To be decided
Screenshots
- Queue URL scanning (Basic layout, v0.05 onwards)
- Queue URL scanning (Results from
t0xic0der.netlify.com
, v0.05 onwards)
- Get URL report (Basic layout, v0.05 onwards)
- Get URL report (Results from
t0xic0der.netlify.com
, v0.05 onwards)
- Get domain report (Basic layout, v0.05 onwards)
- Get domain report (Results from
t0xic0der.netlify.com
, v0.05 onwards)
Bugs
- Some domains cannot be scanned due to ISP blockage or denial from the API provider.
- Populating tables with data might take some time on single-core PCs.
- Random API errors might occur some time - Try another URL first.
Contribute
Fork, add, build and make a PR. You know the drill.