Skip to content
Utkarsh464Public

About

Personal cybersecurity tools built with Python — port scanner, hash cracker, password auditor, and more. For learning and authorized use only.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

Pentools

MIT License Python 3.10+

Small cybersecurity utilities I built while learning — port scanning, hash cracking, password auditing, PDF protection testing, and blind SQLi extraction. Each tool is self-contained and focused on one thing, written to understand security concepts by coding them myself.

Designed for learning, lab practice, and authorized security testing only.


Tools

Tool Description
port_scanner.py TCP connect port scanner — scan a target IP or hostname across a port range.
hash_cracker.py Hash identifier and cracker — auto-detects algorithm by hash length and cracks against a wordlist.
hasher.py Password hasher — generate MD5, SHA1, SHA224, SHA256, SHA384, or SHA512 hashes.
pdf_cracker.py PDF password auditor — generates targeted wordlists from personal info and tests encrypted PDFs.
blind_sqli_extractor.py Blind SQL injection password extractor — Oracle conditional-error oracle (TO_CHAR(1/0)) with char-by-char extraction.

Installation

git clone https://github.com/Utkarsh464/pentools.git
cd pentools
pip install -r requirements.txt

Usage

Port Scanner

python port_scanner.py 192.168.1.1 --start 1 --end 1024

Hash Cracker

python hash_cracker.py hashes.txt wordlist.txt

Hasher

python hasher.py mysecret --algo sha256

PDF Cracker

python pdf_cracker.py protected.pdf John 1234567890 01011990

Blind SQLi

python blind_sqli_extractor.py https://0a1b2c...web-security-academy.net/ SESSION_VALUE TRACKING_VALUE

Solves PortSwigger's Blind SQL injection with conditional errors lab on an Oracle backend by asking the app yes/no questions ("is this character correct?") and reading the answer from the HTTP status code (500 = TRUE, 200 = FALSE). Uses requests.

Written alongside my PortSwigger Academy lab writeups — see the Blind SQL injection with conditional errors writeup for the walkthrough this tool automates.


Requirements

  • Python 3.10+
  • pypdf — for PDF cracking (included in requirements.txt)
  • requests — for blind_sqli_extractor.py (included in requirements.txt)

All other tools use only the Python standard library.


Disclaimer

These tools are provided for educational and authorized testing purposes only. Unauthorized use of security tools against systems you do not own or have explicit permission to test is illegal. The author is not responsible for any misuse of these tools.


License

Licensed under the MIT License.


Utkarsh Solanki — Cybersecurity Student LinkedIn · GitHub


Limitations

  • The blind SQLi extractor uses a lowercase-only charset and caps password length at 99 characters.
  • HTTP requests in the blind SQLi extractor have no timeout set.

About

Personal cybersecurity tools built with Python — port scanner, hash cracker, password auditor, and more. For learning and authorized use only.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages