{"id":17006020,"url":"https://github.com/aress31/pentest2xlsx","last_synced_at":"2025-06-30T03:02:52.120Z","repository":{"id":44919217,"uuid":"176713552","full_name":"aress31/pentest2xlsx","owner":"aress31","description":"Excel parser for various pentesting tools.","archived":false,"fork":false,"pushed_at":"2023-06-13T23:58:35.000Z","size":62,"stargazers_count":28,"open_issues_count":0,"forks_count":6,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-04-04T08:39:07.932Z","etag":null,"topics":["excel","excelparser","nmap","nmap-parser","parser","pentest","pentesting","report","reporting","reporting-tool","testssl","testssl-parser","xlsx"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/aress31.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":"aress31","patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"custom":null}},"created_at":"2019-03-20T10:54:36.000Z","updated_at":"2025-03-16T07:57:50.000Z","dependencies_parsed_at":"2024-10-28T14:07:29.861Z","dependency_job_id":"190ddf33-c3a5-4223-94ca-475c97645fad","html_url":"https://github.com/aress31/pentest2xlsx","commit_stats":{"total_commits":28,"total_committers":4,"mean_commits":7.0,"dds":0.4642857142857143,"last_synced_commit":"5476388ba4c41ef950090b9b32c59f99443c3f1d"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/aress31/pentest2xlsx","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aress31%2Fpentest2xlsx","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aress31%2Fpentest2xlsx/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aress31%2Fpentest2xlsx/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aress31%2Fpentest2xlsx/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/aress31","download_url":"https://codeload.github.com/aress31/pentest2xlsx/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aress31%2Fpentest2xlsx/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":260993957,"owners_count":23094275,"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":["excel","excelparser","nmap","nmap-parser","parser","pentest","pentesting","report","reporting","reporting-tool","testssl","testssl-parser","xlsx"],"created_at":"2024-10-14T05:04:49.040Z","updated_at":"2025-06-20T18:11:25.851Z","avatar_url":"https://github.com/aress31.png","language":"Python","funding_links":["https://github.com/sponsors/aress31"],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003ch1 align=\"center\"\u003e\n    pentest2xlsx\n  \u003c/h1\u003e\n  \u003cp align=\"center\"\u003e\n      \u003ca href=\"https://www.python.org\"\u003e\u003cimg alt=\"lang\" src=\"https://img.shields.io/badge/Lang-Python-blue.svg\"\u003e\u003c/a\u003e\n      \u003ca href=\"https://opensource.org/licenses/Apache-2.0\"\u003e\u003cimg alt=\"license\" src=\"https://img.shields.io/badge/License-Apache%202.0-red.svg\"\u003e\u003c/a\u003e\n      \u003cbr\u003e\n      \u003cimg alt=\"bitcoin\" src=\"https://img.shields.io/badge/Bitcoin-15aFaQaW9cxa4tRocax349JJ7RKyj7YV1p-yellow.svg\"\u003e\n      \u003cimg alt=\"bitcoin cash\" src=\"https://img.shields.io/badge/Bitcoin%20Cash-qqez5ed5wjpwq9znyuhd2hdg86nquqpjcgkm3t8mg3-yellow.svg\"\u003e\n      \u003cimg alt=\"ether\" src=\"https://img.shields.io/badge/Ether-0x70bC178EC44500C17B554E62BC31EA2B6251f64B-yellow.svg\"\u003e\n  \u003c/p\u003e\n\u003c/p\u003e\n\n`pentest2xlsx` is a highly modular python script (adding an additional parser is a trivial task) to parse the results from popular tools used by security professionals into Excel workbooks to facilitate the reporting phase of penetration tests, especially useful when dealing with large scopes as customers and testers can make use of Excel powerful filtering capabilities.\n\nParsers for the following tools have been implemented:\n* `nmap`\n* `testssl`\n\n## Supported tools\n### nmap\nThe following Excel worksheets are generated:\n* `Host vs Service`\n* `Host vs OS`\n* `OS vs Hosts`\n\n*_Note_: The `Host vs OS` and `OS vs Hosts` worksheets are only generated when nmap scan results contain OS information (using the `-O` option).*\n\n### testssl\nThe following Excel worksheets are generated:\n* `Host vs Certificate (Details)`\n* `Host vs Certificates`\n* `Host vs Protocol (Details)`\n* `Host vs Protocols`\n* `Host vs Vulnerability (Details)`\n* `Host vs Vulnerabilities`\n\nAll testssl worksheets will be autofitted and colorized by conditional formatting.\n\n## Installation\n```\n$ git clone https://github.com/AresS31/pentest2xlsx\n# python -m pip install -r pentest2xlsx/requirements.txt\n```\n\n## Usage\n### Generic usage\n```\nusage: pentest2xlsx.py [-h] [-oX OUTPUT_FILE] [-v] {nmap,testssl} ...\n\nParse the output from various penetration testing tools into an Excel workbook\n\npositional arguments:\n  {nmap,testssl}\n\noptional arguments:\n  -h, --help            show this help message and exit\n  -oX OUTPUT_FILE, -output--xml OUTPUT_FILE\n                        output results to a specified \u003cOUTPUT_FILE\u003e in XLSX\n                        format\n  -v, --verbose         increase verbosity level\n```\n\n### nmap usage\n```\nusage: pentest2xlsx.py nmap [-h] -iX INPUT_FILES [INPUT_FILES ...]\n\noptional arguments:\n  -h, --help            show this help message and exit\n  -iX INPUT_FILES [INPUT_FILES ...], --input-xml INPUT_FILES [INPUT_FILES ...]\n                        input from nmap file(s) in XML format\n```\n\n### testssl usage\n```\nusage: pentest2xlsx.py testssl [-h] -iJ INPUT_FILES [INPUT_FILES ...]\n\noptional arguments:\n  -h, --help            show this help message and exit\n  -iJ INPUT_FILES [INPUT_FILES ...], --input-json INPUT_FILES [INPUT_FILES ...]\n                        input from testssl file(s) in JSON format\n```\n\n## Possible Improvements\n- [ ] Adding new parsers.\n- [ ] Adding new worksheets.\n- [ ] Source code optimisation.\n\n## Donation\n* Via Bitcoin      : **15aFaQaW9cxa4tRocax349JJ7RKyj7YV1p**\n* Via Bitcoin Cash : **qqez5ed5wjpwq9znyuhd2hdg86nquqpjcgkm3t8mg3**\n* Via Ether        : **0x70bC178EC44500C17B554E62BC31EA2B6251f64B**\n\n## Licenses\n### pentest2xlsx\nCopyright (C) 2019 Alexandre Teyar\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n  \u003chttp://www.apache.org/licenses/LICENSE-2.0\u003e\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License. \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faress31%2Fpentest2xlsx","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faress31%2Fpentest2xlsx","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faress31%2Fpentest2xlsx/lists"}