OScanner
OScanner is an Oracle database assessment framework designed to identify security vulnerabilities, misconfigurations, and weaknesses in Oracle database instances. It performs comprehensive scans across multiple security domains including user privileges, default accounts, and audit settings.
Installation
Sezione intitolata “Installation”Linux/Unix Installation
Sezione intitolata “Linux/Unix Installation”# Download OScanner
wget http://www.cqure.net/tools/oscanner/oscanner110611.tar.gz
# Extract the archive
tar -xzf oscanner110611.tar.gz
cd oscanner
# Set execute permissions
chmod +x oscanner
# Verify installation
./oscanner -h
Prerequisites
Sezione intitolata “Prerequisites”- Java Runtime Environment (JRE) 1.6 or higher
- Network connectivity to target Oracle database
- Valid database credentials (preferably with DBA role)
- Oracle JDBC drivers (included in most distributions)
macOS Installation
Sezione intitolata “macOS Installation”# Install Java if not present
brew install openjdk
# Download and extract
wget http://www.cqure.net/tools/oscanner/oscanner110611.tar.gz
tar -xzf oscanner110611.tar.gz
cd oscanner
# Make executable
chmod +x oscanner
Basic Concepts
Sezione intitolata “Basic Concepts”Target Connection Methods
Sezione intitolata “Target Connection Methods”OScanner connects to Oracle databases using:
- Direct connection: TCP/IP connection to database listener
- Connection string: Standard Oracle connection format
- Authentication: Username/password or OS authentication
Scan Types
Sezione intitolata “Scan Types”- User scanning: Identify privileged accounts and weak passwords
- Privilege analysis: Detect excessive user privileges
- Default account detection: Find unchanged default credentials
- Audit configuration: Review and identify audit gaps
- Server misconfiguration: Identify parameter weaknesses
Basic Commands
Sezione intitolata “Basic Commands”| Command | Description |
|---|---|
oscanner -h | Display help message |
oscanner -s <host>:<port>:<SID> | Scan specific database instance |
oscanner -u <user> -p <pass> | Specify authentication credentials |
oscanner -f <file> | Load targets from file |
oscanner -v <level> | Set verbosity level (0-3) |
Database Connection
Sezione intitolata “Database Connection”Scan Single Database
Sezione intitolata “Scan Single Database”./oscanner -s 192.168.1.100:1521:ORCL \
-u system \
-p manager
Scan with TNS Connection String
Sezione intitolata “Scan with TNS Connection String”./oscanner \
-s orcl.example.com:1521:ORCL \
-u system \
-p manager \
-v 2
Batch Scanning from File
Sezione intitolata “Batch Scanning from File”Create targets.txt:
192.168.1.100:1521:ORCL:system:manager
192.168.1.101:1521:PROD:system:password123
192.168.1.102:1521:TEST:scott:tiger
Then scan:
./oscanner -f targets.txt -v 2
Connect with OS Authentication
Sezione intitolata “Connect with OS Authentication”./oscanner -s 192.168.1.100:1521:ORCL \
-u / \
-p / \
-w 5
Advanced Scanning Options
Sezione intitolata “Advanced Scanning Options”Customize Scan Checks
Sezione intitolata “Customize Scan Checks”# Run only user privilege checks
./oscanner -s 192.168.1.100:1521:ORCL \
-u system \
-p manager \
-checks privilege
# Run only default account checks
./oscanner -s 192.168.1.100:1521:ORCL \
-u system \
-p manager \
-checks default_accounts
Increase Scan Depth
Sezione intitolata “Increase Scan Depth”# Full comprehensive scan with maximum verbosity
./oscanner -s 192.168.1.100:1521:ORCL \
-u system \
-p manager \
-v 3 \
-depth full \
-timeout 300
Network Timeout Configuration
Sezione intitolata “Network Timeout Configuration”# Set connection timeout (seconds)
./oscanner -s 192.168.1.100:1521:ORCL \
-u system \
-p manager \
-timeout 30 \
-retry 3
Security Assessment Tasks
Sezione intitolata “Security Assessment Tasks”Identify Weak User Accounts
Sezione intitolata “Identify Weak User Accounts”./oscanner -s 192.168.1.100:1521:ORCL \
-u system \
-p manager \
-check_weak_passwords \
-output weak_accounts.txt
Audit Privilege Escalation Risks
Sezione intitolata “Audit Privilege Escalation Risks”./oscanner -s 192.168.1.100:1521:ORCL \
-u system \
-p manager \
-analyze privileges \
-report privilege_report.html
Check Default Account Status
Sezione intitolata “Check Default Account Status”./oscanner -s 192.168.1.100:1521:ORCL \
-u system \
-p manager \
-scan_defaults \
-list_inactive
Audit Role Assignments
Sezione intitolata “Audit Role Assignments”./oscanner -s 192.168.1.100:1521:ORCL \
-u system \
-p manager \
-enumerate roles \
-export roles.csv
Output and Reporting
Sezione intitolata “Output and Reporting”Generate HTML Report
Sezione intitolata “Generate HTML Report”./oscanner -s 192.168.1.100:1521:ORCL \
-u system \
-p manager \
-report assessment.html \
-format html
CSV Export for Analysis
Sezione intitolata “CSV Export for Analysis”./oscanner -s 192.168.1.100:1521:ORCL \
-u system \
-p manager \
-export findings.csv \
-format csv
Verbose Output with Timestamps
Sezione intitolata “Verbose Output with Timestamps”./oscanner -s 192.168.1.100:1521:ORCL \
-u system \
-p manager \
-v 3 \
-log oscanner_$(date +%Y%m%d_%H%M%S).log
Authentication and Authorization
Sezione intitolata “Authentication and Authorization”Check User Privilege Escalation
Sezione intitolata “Check User Privilege Escalation”./oscanner -s 192.168.1.100:1521:ORCL \
-u system \
-p manager \
-analyze_privs \
-escalation_check
Identify Excessive DBA Accounts
Sezione intitolata “Identify Excessive DBA Accounts”./oscanner -s 192.168.1.100:1521:ORCL \
-u system \
-p manager \
-list dba_users \
-filter privileged
Role Permission Analysis
Sezione intitolata “Role Permission Analysis”./oscanner -s 192.168.1.100:1521:ORCL \
-u system \
-p manager \
-enumerate role_privs \
-detailed
Vulnerability Assessment
Sezione intitolata “Vulnerability Assessment”Comprehensive Security Scan
Sezione intitolata “Comprehensive Security Scan”./oscanner -s 192.168.1.100:1521:ORCL \
-u system \
-p manager \
-full_scan \
-include_defaults \
-check_cve
Version-Specific Vulnerabilities
Sezione intitolata “Version-Specific Vulnerabilities”./oscanner -s 192.168.1.100:1521:ORCL \
-u system \
-p manager \
-version_check \
-vuln_database \
-patch_level
Password Policy Assessment
Sezione intitolata “Password Policy Assessment”./oscanner -s 192.168.1.100:1521:ORCL \
-u system \
-p manager \
-check_pwd_policy \
-test_complexity
Performance and Optimization
Sezione intitolata “Performance and Optimization”Parallel Scanning
Sezione intitolata “Parallel Scanning”# Scan multiple databases in parallel
./oscanner -f targets.txt \
-parallel 4 \
-v 2
Timeout Settings
Sezione intitolata “Timeout Settings”./oscanner -s 192.168.1.100:1521:ORCL \
-u system \
-p manager \
-connect_timeout 20 \
-query_timeout 60
Troubleshooting
Sezione intitolata “Troubleshooting”Connection Issues
Sezione intitolata “Connection Issues”# Test connectivity first
tnsping ORCL
# Verbose connection debugging
./oscanner -s 192.168.1.100:1521:ORCL \
-u system \
-p manager \
-debug connection
Memory Issues
Sezione intitolata “Memory Issues”# Increase Java heap size
export JAVA_OPTS="-Xmx1024m"
./oscanner -s 192.168.1.100:1521:ORCL \
-u system \
-p manager
Credential Problems
Sezione intitolata “Credential Problems”# Test credentials separately
sqlplus system/manager@ORCL
# Then run scanner with verified credentials
./oscanner -s 192.168.1.100:1521:ORCL \
-u system \
-p manager \
-test_creds
Best Practices
Sezione intitolata “Best Practices”Pre-Scan Checklist
Sezione intitolata “Pre-Scan Checklist”- Obtain written authorization before scanning
- Document baseline database configuration
- Verify network connectivity to target
- Confirm credential validity and permissions
- Review scan scope with database administrator
- Schedule scans during maintenance windows
Scan Configuration
Sezione intitolata “Scan Configuration”# Recommended comprehensive scan
./oscanner -s target.example.com:1521:PROD \
-u system \
-p $(read -sp "Password: " && echo $REPLY) \
-v 2 \
-timeout 300 \
-full_scan \
-report assessment_$(date +%Y%m%d).html
Post-Scan Analysis
Sezione intitolata “Post-Scan Analysis”- Review findings for false positives
- Prioritize critical vulnerabilities
- Document remediation steps
- Track remediation progress
- Re-scan after fixes applied
- Maintain historical records
Common Findings and Remediation
Sezione intitolata “Common Findings and Remediation”Default Accounts Detected
Sezione intitolata “Default Accounts Detected”| Account | Risk | Action |
|---|---|---|
| SCOTT/TIGER | High | Change password or lock account |
| SYSTEM/MANAGER | High | Strengthen password |
| SYS/ | Critical | Immediate remediation required |
| DBSNMP/DBSNMP | Medium | Change default password |
Privilege Issues
Sezione intitolata “Privilege Issues”# Audit specific user privileges
./oscanner -s 192.168.1.100:1521:ORCL \
-u system \
-p manager \
-audit_user scott \
-list_privs
Audit Configuration
Sezione intitolata “Audit Configuration”# Check audit settings
./oscanner -s 192.168.1.100:1521:ORCL \
-u system \
-p manager \
-check_audit \
-verify_settings
Legal and Ethical Considerations
Sezione intitolata “Legal and Ethical Considerations”OScanner should only be used:
- On systems you own or have explicit authorization to test
- As part of authorized security assessments
- Within scope of penetration testing engagement
- With documented approval from system owners
- In compliance with applicable laws and regulations
Always maintain detailed records of:
- Scan scope and authorization
- Findings and recommendations
- Remediation efforts
- Follow-up assessment results
- Time and date of all activities
Resources
Sezione intitolata “Resources”- Official OScanner documentation: http://www.cqure.net/tools/oscanner/
- Oracle security best practices guide
- OWASP database security testing guidelines
- CIS Oracle Database benchmark
- Oracle security update notifications