Skip to content

Mscan 是一个功能强大的内网扫描工具,集成了端口扫描、Web 服务识别、SSH 爆破等功能。

Notifications You must be signed in to change notification settings

RiderTimeDecade/Mscan

Repository files navigation

Mscan

Mscan Logo

一款功能强大的内网安全扫描工具,集成端口扫描、服务识别、漏洞检测等功能。

Python Version License GitHub Stars

English | 简体中文 | 使用文档 | 更新日志

✨ 特性

  • 🚀 高性能扫描

    • 智能存活检测
    • 自适应并发控制
    • 精准指纹识别
    • 低误报率
  • 🎯 多样化功能

    • 端口扫描(支持 IP、CIDR、范围)
    • Web 服务识别(CMS、中间件、框架)
    • SSH/FTP 弱口令检测
    • 自定义 POC 漏洞扫描
  • 📊 专业报告

    • 美观的 Web 界面
    • 可交互数据表格
    • 详细扫描结果
    • 资产统计分析

🚀 快速开始

环境要求

  • Python 3.9+
  • pip 包管理器

安装

# 方式一:pip 安装(推荐)
pip install mscan

# 方式二:源码安装
git clone https://github.com/RiderTimeDecade/Mscan.git
cd mscan
python setup.py install

使用示例

# 扫描单个目标
mscan -i 192.168.1.1

# 扫描网段
mscan -i 192.168.1.0/24 -m common

# Web 服务识别
mscan -u http://example.com

# SSH 弱口令检测
mscan -i 192.168.1.1 -p 22 --ssh-brute

# FTP 弱口令检测
mscan -i 192.168.1.1 -p 21 --ftp-brute

📚 使用指南

扫描目标格式

  • 单个IP:192.168.1.1
  • CIDR:192.168.1.0/24
  • IP范围:192.168.1.1-192.168.1.254
  • 文件导入:@targets.txt
  • URL:http://example.com

常用命令

# 常用端口扫描
mscan -i 192.168.1.0/24 -m common

# 全端口扫描
mscan -i 192.168.1.1 -m full

# SSH 弱口令检测(使用内置字典)
mscan -i 192.168.1.1 -p 22 --ssh-brute

# SSH 弱口令检测(自定义字典)
mscan -i 192.168.1.1 -p 22 --ssh-brute --user-file users.txt --pass-file pass.txt

# FTP 弱口令检测(使用内置字典)
mscan -i 192.168.1.1 -p 21 --ftp-brute

# FTP 弱口令检测(自定义字典)
mscan -i 192.168.1.1 -p 21 --ftp-brute --user-file users.txt --pass-file pass.txt

# 生成 HTML 报告
mscan -i 192.168.1.1 -o report.html

内置字典说明

SSH 默认字典

  • 用户名:root, admin, ubuntu 等系统和服务默认用户
  • 密码:空密码、弱密码、常见组合等

FTP 默认字典

  • 用户名:anonymous, ftp, admin 等FTP常见用户
  • 密码:空密码、anonymous@、弱密码等

📋 完整参数说明

-h, --help            显示帮助信息
-i, --ip IP          目标IP/CIDR/范围
-u, --url URL        目标URL
-m, --mode MODE      扫描模式 (common/minimal/full)
-p, --ports PORTS    自定义端口
-t, --threads N      线程数 (默认: 500)
-o, --output FILE    输出文件
-v, --verbose        详细输出
--no-web             禁用Web识别
--ssh-brute          启用SSH弱口令检测
--ftp-brute          启用FTP弱口令检测
--user-file FILE     用户名字典
--pass-file FILE     密码字典
--report-dir DIR     报告目录

📸 扫描结果展示

端口扫描结果 漏洞扫描报告 漏洞扫描报告

📦 项目结构

mscan/
├── mscan.py          # 主程序入口
├── assets/           # 资源文件
│   ├── logo.svg     # 项目logo
│   └── images/      # 文档图片
├── config/          # 配置文件
│   └── settings.py  # 全局配置
├── lib/             # 功能库
│   ├── scanners/    # 扫描器模块
│   │   ├── __init__.py
│   │   ├── port_scanner.py    # 端口扫描
│   │   ├── ssh_scanner.py     # SSH扫描
│   │   ├── web_scanner.py     # Web扫描
│   │   └── vuln_scanner.py    # 漏洞扫描
│   └── utils/       # 工具函数
│       ├── __init__.py
│       ├── http_utils.py      # HTTP工具
│       ├── logger.py          # 日志模块
│       ├── output.py          # 输出格式化
│       └── progress.py        # 进度显示
├── data/            # 数据文件
│   └── cms_finger.db # CMS指纹库
└── reports/         # 扫描报告输出目录

⚡ 性能建议

  • 生产环境建议使用较小线程数(-t 50)
  • 全端口扫描耗时较长,建使用 common 模式
  • 大规模扫描时注意目标网络带宽
  • 使用 -v 参数可查看详细扫描进度
  • 弱口令检测建议使用自定义小型字典提高效率

🤝 贡献指南

欢迎提交 Issue 和 Pull Request!详见 贡献指南

📜 开源协议

本项目采用 MIT 开源协议。

👨‍💻 作者

Mscan © RiderTimeDecade


GitHub @RiderTimeDecade

About

Mscan 是一个功能强大的内网扫描工具,集成了端口扫描、Web 服务识别、SSH 爆破等功能。

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages