netanelcyber / netanelcyber/AdPentestAI-Python
Reporting: CSV export for discovered users and credentials
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 5
- Forks
- 2
- Avg merge
- 22h 25m
- Merged PRs (30d)
- 7
Description
Description
Implement CSV export functionality for easy consumption of discovered users, valid credentials, and email addresses in spreadsheet applications.
Exports
-
Users CSV
- Username
- Email address
- Full name (if discovered)
- Discovery method (LDAP, SMTP VRFY, etc.)
- Last password change (if available)
- Account status (enabled/disabled)
- Group membership (comma-separated)
-
Valid Credentials CSV
- Username
- Password (ENCRYPTED or redacted in default)
- Protocol tested (SMTP/POP3/IMAP)
- Server/host
- Port used
- TLS version
- Test timestamp
- Confidence level
-
Email Servers CSV
- Server hostname
- IP address
- Port
- Protocol (SMTP/POP3/IMAP)
- Banner/version
- Service type (Exchange/O365/etc)
- TLS support
- Authentication methods
-
Domain Summary CSV
- Target domain
- DC count
- User count
- Computer count
- Forest level
- Domain functional level
Features
- RFC 4180 compliant CSV format
- Proper escaping of special characters
- UTF-8 encoding
- Optional: Excel-compatible format
- Optional: Encrypt sensitive columns
- Headers with descriptions
Files to Create
adpentest/exporters/csv_exporter.py- Update:
run()function to call exporter
Implementation
- Use Python
csvmodule (standard library) - Optional:
openpyxlfor Excel export - Separate exporters for each data type
- Unified export function
Success Criteria
- All discovered data exportable
- Compatible with Excel, Google Sheets, LibreOffice
- No data corruption on special characters
- Optional encryption for credentials
- < 100MB file size for 10k+ users
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Trace the existing run() entry point and the structures holding discovered users, credentials, email servers, and domain summaries before creating adpentest/exporters/csv_exporter.py. Define the four CSV outputs around the listed columns, then verify RFC 4180 escaping, UTF-8 output, sensitive-value handling, and export of 10k+ users against the stated compatibility and size criteria.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- backend, data, security
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 55/100