# API Reference: Web Application Scanning with Nikto ## Nikto CLI Options | Flag | Description | |------|-------------| | `-h ` | Target hostname or IP | | `-port ` | Target ports (comma-separated) | | `-ssl` | Force SSL/TLS connection | | `-Format xml\|json\|csv\|htm` | Output format | | `-output ` | Save results to file | | `-Tuning ` | Scan tuning categories | | `-Plugins ` | Specific plugins to run | | `-maxtime s` | Maximum scan duration | | `-nointeractive` | Disable interactive prompts | | `-useproxy ` | Use HTTP proxy | | `-id ` | HTTP Basic auth credentials | ## Tuning Categories | Code | Category | |------|----------| | 1 | Interesting File / Seen in logs | | 2 | Misconfiguration / Default File | | 3 | Information Disclosure | | 4 | Injection (XSS/Script/HTML) | | 5 | Remote File Retrieval - Inside Web Root | | 6 | Denial of Service | | 7 | Remote File Retrieval - Server Wide | | 8 | Command Execution / Remote Shell | | 9 | SQL Injection | | 0 | File Upload | ## XML Output Structure | Element | Description | |---------|-------------| | `` | Root element | | `` | Scan metadata | | `` | Individual finding | | `` | Finding with OSVDB reference | | `` | Affected URI path | | `` | Finding description | ## Python Libraries | Library | Version | Purpose | |---------|---------|---------| | `subprocess` | stdlib | Execute Nikto CLI | | `xml.etree.ElementTree` | stdlib | Parse Nikto XML output | | `json` | stdlib | Report generation | ## References - Nikto GitHub: https://github.com/sullo/nikto - Nikto Documentation: https://cirt.net/Nikto2 - OSVDB (archived): https://vulndb.cyberriskanalytics.com/