Convert Figma logo to code with AI

veo logovscan

开源、轻量、快速、跨平台 的网站漏洞扫描工具,帮助您快速检测网站安全隐患。功能 端口扫描(port scan) 指纹识别(fingerprint) 漏洞检测(nday check) 智能爆破 (admin brute) 敏感文件扫描(file fuzz)

1,438
241
1,438
6

Top Related Projects

20,301

Fast and customizable vulnerability scanner based on simple YAML based DSL.

10,048

Nmap - the Network Mapper. Github mirror of official SVN repository.

8,470

Nikto web server scanner

8,559

WPScan WordPress security scanner. Written for security professionals and blog maintainers to test the security of their WordPress websites. Contact us via contact@wpscan.com

Directory/File, DNS and VHost busting tool written in Go

A Tool for Domain Flyovers

Quick Overview

VScan is an open-source vulnerability scanning tool designed for network security assessment. It combines the functionality of multiple security tools to provide a comprehensive vulnerability analysis, including port scanning, service detection, and vulnerability identification.

Pros

  • Integrates multiple security tools into a single platform
  • Supports both IPv4 and IPv6 scanning
  • Offers customizable scanning options and output formats
  • Regularly updated with new vulnerability signatures

Cons

  • May generate false positives in some scenarios
  • Requires root/administrator privileges for full functionality
  • Can be resource-intensive for large-scale scans
  • Learning curve for advanced features and customization

Code Examples

# Basic port scan
from vscan import Scanner

scanner = Scanner("192.168.1.0/24")
results = scanner.scan(ports=[80, 443, 8080])
print(results)
# Service detection and vulnerability scan
from vscan import Scanner, VulnDB

scanner = Scanner("example.com")
vuln_db = VulnDB()
results = scanner.scan(service_detection=True, vuln_scan=True, vuln_db=vuln_db)
print(results.vulnerabilities)
# Custom output format
from vscan import Scanner, OutputFormatter

scanner = Scanner("10.0.0.1-10.0.0.10")
formatter = OutputFormatter(format="json")
results = scanner.scan(ports="1-1000")
formatted_output = formatter.format(results)
print(formatted_output)

Getting Started

To get started with VScan, follow these steps:

  1. Install VScan:

    pip install vscan
    
  2. Import the necessary modules:

    from vscan import Scanner, VulnDB, OutputFormatter
    
  3. Create a scanner instance and perform a basic scan:

    scanner = Scanner("target_ip_or_range")
    results = scanner.scan(ports="1-1000")
    print(results)
    

For more advanced usage and configuration options, refer to the project's documentation.

Competitor Comparisons

20,301

Fast and customizable vulnerability scanner based on simple YAML based DSL.

Pros of Nuclei

  • Extensive template library with community contributions
  • Highly customizable and flexible scanning engine
  • Supports multiple protocols beyond HTTP (e.g., DNS, TCP, SSL)

Cons of Nuclei

  • Steeper learning curve for creating custom templates
  • Can be resource-intensive for large-scale scans
  • Requires more setup and configuration compared to simpler tools

Code Comparison

Nuclei template example:

id: example-template
info:
  name: Example Template
  severity: info
requests:
  - method: GET
    path:
      - "{{BaseURL}}/example"
    matchers:
      - type: word
        words:
          - "Example Response"

VScan usage example:

vscan -t http://example.com -m dir

Key Differences

  • Nuclei uses YAML-based templates for defining scans, while VScan relies on built-in modules
  • Nuclei offers more advanced features and customization options
  • VScan is generally simpler to use for basic scanning tasks

Use Cases

  • Nuclei: Ideal for comprehensive vulnerability assessments and custom security checks
  • VScan: Better suited for quick, straightforward scans with minimal setup
10,048

Nmap - the Network Mapper. Github mirror of official SVN repository.

Pros of Nmap

  • Extensive feature set and versatility for network scanning and security auditing
  • Large, active community and continuous development
  • Well-documented with comprehensive man pages and online resources

Cons of Nmap

  • Steeper learning curve for beginners
  • Can be resource-intensive for large-scale scans
  • May trigger security alerts or be blocked by firewalls

Code Comparison

Nmap (C++):

static void tcp_scan(Target *target, u16 *portarray, int numports,
                     struct scan_lists *ports) {
  o.current_scantype = CONNECT_SCAN;
  tcp_scan_engine(target, portarray, numports, ports);
}

Vscan (Go):

func ScanPort(protocol string, hostname string, port int) bool {
    address := hostname + ":" + strconv.Itoa(port)
    conn, err := net.DialTimeout(protocol, address, time.Second)
    if err != nil {
        return false
    }
    defer conn.Close()
    return true
}

The code snippets show different approaches to port scanning. Nmap uses a more complex C++ implementation with a dedicated scan engine, while Vscan employs a simpler Go function for individual port checks.

8,470

Nikto web server scanner

Pros of Nikto

  • More mature and widely used project with a larger community
  • Extensive plugin system for customization and extensibility
  • Comprehensive web server and web application vulnerability scanning

Cons of Nikto

  • Slower scanning speed compared to VScan
  • Less focus on modern web technologies and frameworks
  • Perl-based, which may be less familiar to some developers

Code Comparison

Nikto (Perl):

sub nikto_headers {
    my ($mark) = @_;
    my %headers;
    foreach my $header (split(/\n/, $mark->{'headers'})) {
        my ($key, $value) = split(/:\s*/, $header, 2);
        $headers{lc($key)} = $value;
    }
    return %headers;
}

VScan (Go):

func scanHeaders(headers http.Header) {
    for name, values := range headers {
        for _, value := range values {
            checkHeader(name, value)
        }
    }
}

The code snippets show different approaches to handling HTTP headers. Nikto uses Perl to parse and process headers, while VScan utilizes Go's built-in HTTP header handling. VScan's implementation is more concise and leverages Go's strong typing and standard library.

8,559

WPScan WordPress security scanner. Written for security professionals and blog maintainers to test the security of their WordPress websites. Contact us via contact@wpscan.com

Pros of WPScan

  • More comprehensive WordPress-specific scanning capabilities
  • Larger community and more frequent updates
  • Extensive database of known WordPress vulnerabilities

Cons of WPScan

  • Slower scanning speed compared to VScan
  • Limited to WordPress sites only
  • Requires Ruby installation and dependencies

Code Comparison

WPScan (Ruby):

def scan_wordpress_version
  response = Browser.get(url_with_wrong_param)
  version = response.html.css('meta[name="generator"]').first['content'].to_s.strip
  version = version.match(/\d+\.\d+(\.\d+)?/)[0] if version =~ /\d+\.\d+(\.\d+)?/
  Version.new(version)
end

VScan (Go):

func ScanWordPressVersion(url string) (string, error) {
    resp, err := http.Get(url)
    if err != nil {
        return "", err
    }
    defer resp.Body.Close()
    // Parse HTML and extract version
    // ...
}

VScan is a more general-purpose web vulnerability scanner written in Go, while WPScan is specifically tailored for WordPress sites and written in Ruby. VScan offers faster scanning speeds and broader applicability, but WPScan provides more in-depth WordPress-specific vulnerability detection.

Directory/File, DNS and VHost busting tool written in Go

Pros of Gobuster

  • More mature and widely used project with a larger community
  • Supports multiple modes (DNS, vhost, directory/file enumeration)
  • Actively maintained with regular updates and bug fixes

Cons of Gobuster

  • Written in Go, which may have a steeper learning curve for some users
  • Lacks some advanced features found in vscan, such as custom payload generation
  • May be slower for certain types of scans compared to vscan

Code Comparison

vscan (Python):

def scan(self, target, port):
    sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    sock.settimeout(self.timeout)
    result = sock.connect_ex((target, port))
    sock.close()
    return result == 0

Gobuster (Go):

func (s *Scanner) Scan(ctx context.Context, host string, port int) (bool, error) {
    address := fmt.Sprintf("%s:%d", host, port)
    conn, err := s.dialer.DialContext(ctx, "tcp", address)
    if err != nil {
        return false, err
    }
    conn.Close()
    return true, nil
}

Both code snippets show basic port scanning functionality, with vscan using Python's socket library and Gobuster using Go's net package. The main difference lies in the language-specific implementations and error handling approaches.

A Tool for Domain Flyovers

Pros of Aquatone

  • More comprehensive web-based reconnaissance tool with screenshot capabilities
  • Supports multiple input formats and integrates with other tools
  • Active development and community support

Cons of Aquatone

  • Primarily focused on web-based targets, less versatile for general network scanning
  • Requires more dependencies and setup compared to vscan
  • May be slower for large-scale scans due to its additional features

Code Comparison

Aquatone (Ruby):

def run_tasks(urls)
  threads = []
  urls.each do |url|
    threads << Thread.new { process_url(url) }
  end
  threads.each(&:join)
end

vscan (Go):

func ScanPorts(host string, ports []int) {
    for _, port := range ports {
        go scanPort(host, port)
    }
}

Key Differences

  • Aquatone is written in Ruby, while vscan is written in Go
  • Aquatone focuses on web reconnaissance with visual output, vscan is a lightweight port scanner
  • Aquatone has more features and integrations, vscan is simpler and faster for basic port scanning

Use Cases

  • Aquatone: Web application security assessments, bug bounty hunting
  • vscan: Quick network scans, basic security audits, lightweight port enumeration

Convert Figma logo designs to code with AI

Visual Copilot

Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.

Try Visual Copilot

README

vscan

开源、轻量、快速、跨平台 的网站漏洞扫描工具,帮助您快速检测网站安全隐患。

Release

编译/安装/运行 • 参数说明 • 使用方法 • 使用场景 • POC列表 • 自定义扫描器

Features

vscan

  • 快速的端口扫描、指纹探测功能
  • 快速的登录密码爆破功能
  • 快速的POC检测功能
  • 快速的敏感文件检测功能
  • 轻量、开源、跨平台使用
  • 支持指纹 650(eHole) + 3129(Local) + 3053(wappalyzergo) = 6832 条
  • 支持 Xray 和 Nuclei 的 POC 检测
  • 支持多种类型的输入 - STDIN/HOST/IP/CIDR/URL/TXT
  • 支持多种类型的输出 - JSON/TXT/CSV/STDOUT

Licenses

本工具仅面向合法授权的企业安全建设行为,在使用本工具进行检测时,您应确保该行为符合当地的法律法规,并且已经取得了足够的授权。

如您在使用本工具的过程中存在任何非法行为,您需自行承担相应后果,作者将不承担任何法律及连带责任。

在使用本工具前,请您务必审慎阅读、充分理解各条款内容,限制、免责条款或者其他涉及您重大权益的条款可能会以加粗、加下划线等形式提示您重点注意。 除非您已充分阅读、完全理解并接受本协议所有条款,否则,请您不要使用本工具。您的使用行为或者您以其他任何明示或者默示方式表示接受本协议的,即视为您已阅读并同意本协议的约束。

安恒-星火实验室

starfile

专注于实战攻防与研究,研究涉及实战攻防、威胁情报、攻击模拟与威胁分析等,团队成员均来自行业具备多年实战攻防经验的红队、蓝队和紫队专家。本着以攻促防的核心理念,通过落地 ATT&CK 攻防全景知识库,全面构建实战化、常态化、体系化的企业安全建设与运营。