{"id":13797217,"url":"https://github.com/wh1t3rh1n0/pentest-scripts","last_synced_at":"2026-03-14T12:47:26.283Z","repository":{"id":26644498,"uuid":"30100494","full_name":"Wh1t3Rh1n0/pentest-scripts","owner":"Wh1t3Rh1n0","description":"Miscellaneous scripts for pentesting","archived":false,"fork":false,"pushed_at":"2018-03-22T15:55:50.000Z","size":153,"stargazers_count":215,"open_issues_count":1,"forks_count":41,"subscribers_count":10,"default_branch":"master","last_synced_at":"2024-08-04T23:10:59.515Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Wh1t3Rh1n0.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-01-31T03:10:31.000Z","updated_at":"2024-07-17T14:28:39.000Z","dependencies_parsed_at":"2022-07-26T23:02:04.100Z","dependency_job_id":null,"html_url":"https://github.com/Wh1t3Rh1n0/pentest-scripts","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Wh1t3Rh1n0%2Fpentest-scripts","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Wh1t3Rh1n0%2Fpentest-scripts/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Wh1t3Rh1n0%2Fpentest-scripts/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Wh1t3Rh1n0%2Fpentest-scripts/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Wh1t3Rh1n0","download_url":"https://codeload.github.com/Wh1t3Rh1n0/pentest-scripts/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":225167414,"owners_count":17431595,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-03T23:01:25.178Z","updated_at":"2025-12-24T08:53:30.836Z","avatar_url":"https://github.com/Wh1t3Rh1n0.png","language":"Shell","funding_links":[],"categories":["\u003ca id=\"8c5a692b5d26527ef346687e047c5c21\"\u003e\u003c/a\u003e收集"],"sub_categories":[],"readme":"Pentest Scripts\n===============\nJust a bunch of simple, miscellaneous scripts I've created while pentesting.\n\nThe rest of this readme was automatically generated with the following command:\n\n        for f in * ; do echo -en \"## $f\\n\" ; echo -e \"\\n$(./$f --help | tail -n +2 | sed -E 's/^/    /g')\" ; done \u003e\u003e README.md\n        \n## dim\n\n    dim - Dim the screen\n    --------------------\n    Usage: dim  \u003c= Dim the screen to the lowest setting.\n           dim \u003cinteger\u003e   \u003c= Dim to a custom level.\n    \n## enable-forwarding\n\n    enable-forwarding\n    -----------------\n    A simple script to forward all incoming traffic out\n    whatever interface is currently connected to the Internet.\n    \n    Usage: enable-forwarding [Internet-connected interface]\n    \n## extract-hashes-responder\n\n    extract-hashes-responder\n    ------------------------\n    Extracts one hash per user from a Responder-Session.log file for easy\n    cracking with hashcat.\n    \n    Usage: ./extract-hashes-responder \u003c/opt/Responder/Responder-Session.log\u003e [Result number]\n    \n## gnmap2ip\n\n    gnmap2ip\n    --------\n    Converts a .gnmap file to an list of colon separated IP and TCP port numbers.\n    \n    Usage: gnmap2ip [GNMAP FILE]\n    \n## grep-cidr\n\n    grep-cidr\n    ---------\n    Searches a target file for any IP addresses in the given range. Any range\n    format that is Nmap compatible *should work*, not just CIDR.\n    \n    Usage: grep-cidr \u003cIP Range\u003e \u003cTarget File\u003e [Additional grep options]\n    \n## grip\n\n    grip\n    ----\n    greps a file for common patterns.\n    \n    Should accept most standard grep flags.\n    \n    Example usage - IPv4 addresses only:\n       grep for IPv4 addresses only:     grip \u003cfilename\u003e\n       include CIDR notation:            grip --cidr \u003cfilename\u003e\n       grep for IP:Port:                 grip --port \u003cfilename\u003e\n    \n    Example usage - IPv6 addresses only:\n       grep for IPv6 addresses only:     grip --6 \u003cfilename\u003e\n       include CIDR notation:            grip --6cidr \u003cfilename\u003e\n    \n    Other supported patterns:\n       grep for emails:                  grip --email \u003cfilename\u003e\n       grep for MAC addresses:           grip --mac \u003cfilename\u003e\n    \n## heartbleed\n\n    Usage: heartbleed \u003cIP Address\u003e \u003cPort\u003e\n    \n## heartbleed-parser\n\n    Usage: heartbleed-parser \u003cinput file\u003e\n    \n## ip2dec.py\n\n    ip2dec.py\n    ---------\n    Converts an IP address to its decimal equivalent.\n    \n    Usage: ip2dec.py [IP Address]\n    \n## iplist2dirs\n\n    iplist2dirs\n    -----------\n    Reads an IP:Port list and creates the following directory structure for \n    each IP address:\n    \n        ./[OUTPUT DIR]/[PORT]/[IP Address]\n    \n    Usage: iplist2dirs \u003cIP List\u003e [Ports]\n    \n    Example: iplist2dirs iplist.txt \"80 443\"\n    \n    Use \"all\" in place of port numbers to create a directory for every port listed.\n    \n    If ports are omitted, the default port list is used.\n    The defaul port list and output directory name can be changed in the settings\n    section of this script.\n    \n## iplist-detect_http.sh\n\n    iplist-detect_http\n    ------------------\n    Retrieves HTTP headers from each server listed in a IP:Port formatted file.\n    \n    Usage: iplist-detect_http \u003cIP List File\u003e [Maximum Connect Timeout]\n    \n## Kali_Linux_Extra_Tools2.sh\n\n    Kali Linux: Extra tools and customizations script\n    =================================================\n    Created by Wh1t3Rh1n0\n    \n    This script adds a bunch of my favorite tools to Kali Linux.\n    \n    Usage:\n      Install all tools:  ./Kali_Linux_Extra_Tools2.sh install\n      Non-GUI tools only: ./Kali_Linux_Extra_Tools2.sh install nogui\n    \n## live-usb-tweaks.sh\n\n    live-usb-tweaks.sh\n    ------------------\n    Install tweaks to increase performance when running\n    Kali from a LiveUSB with persistence.\n    \n    Usage: ./live-usb-tweaks.sh install\n    \n## merge-hashcat.py\n\n    merge-hashcat.py\n    ----------------\n    Matches passwords cracked with hashcat to their usernames.\n    \n    Usage: merge-hashcat.py \u003cuser:hash file\u003e \u003chash:password file\u003e\n    \n    Notes: The \"hash:password\" file is created by hashcat's -o option.\n    \n           The \"user:hash\" file is easy to create using your original hashdump and\n           the \"cut\" command. An example of creating this file from hashes dumped\n           from a Windows domain controller follows:\n           \n           cat raw_dump.txt | cut -d ':' -f 1,4 \u003e dumped-users_hashes.txt\n    \n## ms15-034_check.py\n    \n    Example: %s 'https://example.com:8443/'\n\n## mv-screenshots\n\n    mv-screenshots\n    --------------\n    Moves screenshots from the current directory to a destination directory.\n    Removes colons from the filename for Windows compatibility.\n    \n    Usage: mv-screenshots \u003cDESTINATION\u003e\n    \n## ncsv2ip\n\n    ncsv2ip\n    -------\n    Converts a Nessus exported CSV file to a colon-separated list of IPs and ports\n    \n    Usage: ncsv2ip [CSV FILE]\n    \n    Requires: grep, awk, sort\n    Limitations: Only outputs TCP ports. UDP ports are ignored.\n    \n## setup-x-limited.sh\n\n    ----------------------------------\n    setup-x-limited.sh | by Wh1t3Rh1n0\n    ----------------------------------\n    This script creates a script and a menu icon for executing a given program\n    as a regular, non-root user if you are logged in as root.\n    \n    The following environment variables need to be set for it to run:\n    \n    script_name - the filename that the created script will be saved as.\n    iw_user - the user that will be created for running the target program.\n    program_description - the name that will show on the icon.\n    command_line - the path of the target program to be run.\n    icon - the icon to display on the menu\n    categories - where the icon is placed within the applications menu.\n    \n    Example execution:\n    ------------------\n    script_name=firefox-nonroot iw_user=firefox-user \\\n    program_description=\"Firefox (Non-Root)\" command_line=\"/opt/firefox/firefox\" \\\n    icon=\"/opt/firefox/browser/icons/mozicon128.png\" categories=\"Network;\" \\\n    ./setup-x-limited.sh\n    \n    Alternatively, you can provide a known binary location to accept default\n    options for that program.\n    \n    Usage: ./setup-x-limited.sh [full path to binary]\n    \n    Currently accepted binary paths:\n        /opt/firefox/firefox\n    \n## strip-colors\n\n    strip-colors\n    ------------\n    Removes colors from output for easy grepping.\n    \n    Usage: cat \u003csome file\u003e | strip-colors\n    \n## update-firefox.sh\n\n    Firefox Updater/Installer\n    -------------------------\n    Just a simple script to update or install Firefox on Kali Linux.\n    \n    Installs to /opt/firefox\n    \n    Run with no options to install or update.\n    \n## usb-armory\n\n    usb-armory\n    ----------\n    A simple script to setup a connection to a USB armory with Kali installed.\n    \n    Usage: usb-armory [Internet-connected interface]\n    \n## word-mutator\n\n    word-mutator 9000\n    -----------------\n    Generates a wordlist by running all of hashcat's built-in rules on a\n    single word (such as a company name) or small list of words.\n    \n    Primarily intended for targeted, offline password cracking attacks.\n    \n    Usage: bash ./word-mutator [optional output file] [optional input wordlist]\n    \n    Because I'm being lazy, you must specify an output file name in order\n    to specify an input file. :P\n    \n    *This script has only been tested with the legacy hashcat 2.00 binaries.*\n    \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwh1t3rh1n0%2Fpentest-scripts","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwh1t3rh1n0%2Fpentest-scripts","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwh1t3rh1n0%2Fpentest-scripts/lists"}