在网络安全内网渗透领域,信息收集与漏洞探测的效率直接决定测试进度。面对复杂的内网环境、海量的主机资产,传统手动扫描工具不仅耗时费力,还容易遗漏关键漏洞。今天要给大家介绍的**fscan**,正是一款国产开源的内网综合自动化扫描工具,集资产探测、漏洞扫描、弱口令爆破、漏洞利用于一体,凭借“一键扫描、批量处理、功能集成”的优势,成为红队内网渗透、企业安全评估的必备利器。本文将从工具介绍、核心能力、可扫描漏洞、部署安装、实战使用到项目案例,全方位解析fscan的使用方法与实战价值,助力安全从业者快速上手、高效开展内网测试工作。

一、工具介绍:内网渗透的“自动化突击队”

fscan(Full Scan)是由国内安全研究者开发的开源内网综合扫描工具,基于Go语言开发,开源地址为https://github.com/shadow1ng/fscan。它并非单一功能的扫描工具,而是整合了多种内网渗透常用功能,主打“自动化、全方位、轻量化”,旨在解决内网渗透中“多工具切换繁琐、批量扫描效率低、新手操作门槛高”的痛点。

核心定位:**内网资产自动化扫描与漏洞探测平台**,无需复杂参数配置,一键启动即可完成内网主机存活探测、端口扫描、服务识别、弱口令爆破、漏洞利用等全流程操作,尤其适配大规模内网网段扫描场景,大幅提升内网渗透的效率与覆盖面。

工具特点:

  • **自动化程度高**:集成多种扫描模块,一键扫描即可输出全面结果,无需手动组合命令,新手也能快速上手

  • **跨平台兼容**:基于Go语言编译,支持Windows、Linux、macOS三大主流操作系统,提供二进制可执行文件,无需额外依赖

  • **功能集成全面**:覆盖内网渗透全流程,从资产探测到漏洞利用,无需频繁切换nmap、hydra、dirsearch等工具

  • **扫描效率出众**:支持多线程并发扫描,可自定义线程数,针对内网网段优化扫描逻辑,速度远超传统单一工具

  • **轻量化易部署**:二进制文件体积小,无需安装,下载后直接运行,适配内网无网络环境下的快速部署

  • **可扩展性强**:支持自定义脚本、加载自定义字典,适配不同场景的扫描需求,同时支持对接xray等工具扩展Web漏洞扫描能力

目前fscan已更新多个版本,社区活跃度高,不断修复bug并新增漏洞模块,最新版本新增了MongoDB扫描、更多Web漏洞POC等功能,进一步提升了实战适配性。

二、核心能力:内网渗透全流程自动化覆盖

fscan的核心价值在于“一站式内网扫描”,将内网渗透中常用的多种功能集成一体,无需手动拼接工具,从资产探测到漏洞利用,全程自动化完成,具体核心能力可分为六大模块:

1. 内网资产探测模块

  • 主机存活探测:支持ICMP ping扫描、TCP端口探测两种方式,可快速识别网段内存活主机,跳过存活检测(-np参数)适配禁止ping的内网环境

  • 端口扫描:默认扫描常用端口(21、22、80、445等),支持自定义端口范围(如-p 1-65535),快速识别开放端口及对应服务

  • 服务与系统识别:自动识别开放端口对应的服务版本(如SSH 7.9、Apache 2.4.49),同时可探测目标主机的操作系统类型、网卡信息等基础信息

  • 网段快速扫描:支持A段、B段、C段网段扫描(如192.168.1.0/24、10.0.0.0/16),自动过滤无效主机,提升扫描效率

2. 弱口令批量爆破模块

  • 多服务支持:覆盖SSH、SMB、MySQL、MSSQL、Redis、PostgreSQL、FTP等常见服务的弱口令爆破

  • 灵活配置:支持加载自定义用户名字典(-userf)、密码字典(-pwdf),可指定单一密码(-pwd)进行批量碰撞

  • 高效爆破:多线程并发爆破,可自定义线程数,爆破成功后自动输出账号密码,便于后续利用

3. 漏洞扫描与利用模块

  • 高危漏洞探测:内置多种经典内网漏洞POC,可一键检测MS17-010(永恒之蓝)、CVE-2021-3129(Laravel远程代码执行)等高危漏洞

  • 漏洞一键利用:支持Redis写公钥、计划任务反弹Shell、SSH命令执行等漏洞利用功能,无需手动编写利用脚本

  • Web漏洞扫描:支持Web标题探测、Web指纹识别(常见CMS、OA框架),可跳过Web POC扫描(-nopoc参数),也可对接xray扩展Web漏洞扫描能力

4. 内网横向移动辅助模块

  • 域控识别:自动探测内网域控主机,识别域环境信息,为横向移动提供方向

  • NetBIOS探测:探测内网主机的NetBIOS信息,辅助判断主机角色与网络拓扑

  • 跳板支持:可结合已获取的主机权限,作为跳板扫描内网其他网段,实现跨网段渗透

5. 扫描结果管理模块

  • 结果保存:默认将扫描结果保存至当前目录result.txt文件,支持自定义保存路径(-o参数)

  • 结果过滤:可跳过日志保存(-no参数),避免冗余信息,便于快速查看关键结果

  • debug模式:开启debug模式(-debug)可输出更多错误信息,便于排查扫描失败问题

6. 自定义扩展模块

  • 自定义命令执行:SSH爆破成功后,可指定执行命令(-c参数),快速获取主机权限

  • 自定义脚本加载:支持加载自定义POC脚本,扩展漏洞扫描范围

  • 参数灵活配置:可指定扫描模块(-m参数)、线程数(-Num参数)、超时时间等,适配不同测试场景

三、可扫描/利用的漏洞:精准覆盖内网高频漏洞

fscan内置丰富的漏洞POC库,重点覆盖内网环境中高频出现的高危漏洞、配置缺陷和弱口令风险,无需额外加载漏洞库,一键扫描即可发现并利用,具体可扫描/利用的漏洞如下表所示:

漏洞类型

对应服务/场景

具体漏洞/攻击向量

系统高危漏洞

Windows系统、Linux系统

MS17-010(永恒之蓝)、Dirty COW(脏牛)提权、sudo提权等

Web应用漏洞

Web服务、CMS框架

CVE-2021-3129(Laravel RCE)、WebLogic漏洞、Struts2漏洞、Web后台弱口令等

数据库漏洞

MySQL、MSSQL、Redis、PostgreSQL

Redis未授权访问、Redis写公钥/Getshell、数据库弱口令、MySQL UDF提权等

服务配置漏洞

SSH、SMB、FTP、RDP

SSH弱口令、SMB弱口令、FTP匿名登录、RDP弱口令、SMB权限配置缺陷等

通用攻击向量

全场景

弱口令爆破、端口开放探测、服务版本泄露、主机存活探测、域控识别等

此外,fscan支持自定义POC加载,可扩展扫描更多新型漏洞,同时支持跳过Web POC扫描(-nopoc参数),专注于系统和服务层面的漏洞探测,灵活适配不同测试需求。

四、部署安装:跨平台轻量化快速部署

fscan基于Go语言编译,部署过程极其简单,无需安装复杂依赖,下载对应系统的二进制文件即可直接运行,以下是Windows、Linux、macOS三大平台的部署安装步骤,新手可轻松上手:

1. 环境准备

  • 无需安装额外依赖(如Java、Python),仅需下载对应系统的fscan二进制文件

  • 下载地址:GitHub官方仓库(https://github.com/shadow1ng/fscan/releases),根据自身操作系统选择对应版本(如Windows选择fscan_windows_amd64.exe,Linux选择fscan_linux_amd64)

  • 可选:若需源码编译,需安装Go 1.16+环境,执行编译命令生成二进制文件

2. 各平台安装启动步骤

**Windows系统(Win10/11、Server)**:

  1. 下载fscan_windows_amd64.exe文件,保存至任意目录(如D:\tools\fscan)

  2. 打开CMD或PowerShell,切换至fscan所在目录(如cd D:\tools\fscan)

  3. 直接执行命令启动扫描:fscan_windows_amd64.exe -h 目标IP/网段

  4. 可选:将fscan所在目录添加至系统环境变量,可在任意目录直接执行fscan命令

**Linux系统(Ubuntu、CentOS等)**:

  1. 下载fscan_linux_amd64文件,通过wget命令下载(示例):wget https://github.com/shadow1ng/fscan/releases/download/1.8.2/fscan_linux_amd64

  2. 赋予执行权限:chmod +x fscan_linux_amd64

  3. 直接执行命令启动扫描:./fscan_linux_amd64 -h 目标IP/网段

  4. 可选:将文件重命名为fscan(mv fscan_linux_amd64 fscan),方便后续执行

**macOS系统**:

  1. 下载fscan_darwin_amd64文件,保存至指定目录

  2. 打开终端,切换至文件所在目录,赋予执行权限:chmod +x fscan_darwin_amd64

  3. 执行命令启动扫描:./fscan_darwin_amd64 -h 目标IP/网段

3. 源码编译(可选)

若需自定义功能,可通过源码编译生成二进制文件,步骤如下:


# 克隆源码仓库 git clone https://github.com/shadow1ng/fscan.git # 进入项目目录 cd fscan # 编译(去除调试信息,减小文件体积) go build -ldflags="-s -w" -trimpath # 生成对应系统的二进制文件(如Windows需指定GOOS和GOARCH) GOOS=windows GOARCH=amd64 go build -ldflags="-s -w" -trimpath -o fscan_windows_amd64.exe

五、实战使用:从扫描到利用的完整流程

fscan的核心优势的在于“简单易用、一键扫描”,所有操作均通过命令行完成,无需图形界面,以下结合实战场景,演示从内网资产扫描到漏洞利用的完整流程,涵盖基础扫描、专项扫描、漏洞利用等核心操作:

1. 基础扫描(最常用场景)

针对内网C段网段(如192.168.1.0/24),一键执行全模块扫描,自动完成主机存活、端口扫描、弱口令爆破、漏洞探测:

# Windows系统 fscan_windows_amd64.exe -h 192.168.1.0/24 # Linux/macOS系统 ./fscan -h 192.168.1.0/24

扫描完成后,会自动输出存活主机、开放端口、服务版本、弱口令、漏洞等信息,并保存至result.txt文件。

2. 专项扫描(自定义需求)

  • 指定扫描模块(如仅扫描SSH弱口令): ./fscan -h 192.168.1.0/24 -m ssh -pwdf password.txt -userf user.txt

  • 自定义端口扫描(如仅扫描80、445、3389端口): ./fscan -h 192.168.1.100 -p 80,445,3389

  • Redis漏洞利用(写SSH公钥): ./fscan -h 192.168.1.101 -rf id_rsa.pub

  • 扫描结果自定义保存路径: ./fscan -h 192.168.1.0/24 -o /tmp/fscan_result.txt

  • 跳过存活检测(适配禁止ping的环境):./fscan -h 192.168.1.0/24 -np

3. 漏洞利用实战(以Redis未授权访问为例)

  1. 扫描发现Redis未授权访问:执行./fscan -h 192.168.1.0/24 -m redis,扫描结果显示192.168.1.102:6379存在未授权访问

  2. 利用Redis写SSH公钥:生成SSH公钥后,执行./fscan -h 192.168.1.102 -rf id_rsa.pub,将公钥写入目标主机/root/.ssh/authorized_keys

  3. SSH登录目标主机:ssh root@192.168.1.102 -i id_rsa,成功获取主机控制权

4. 批量扫描与结果分析

针对B段网段(如192.168.0.0/16),执行批量扫描,可通过-debug参数查看扫描过程,扫描完成后查看result.txt文件,筛选出高风险目标(如存在弱口令、高危漏洞的主机),优先进行利用。

六、项目实践:内网渗透中的fscan实战案例

以下通过一个典型的**企业内网渗透测试案例**,展示fscan在实战中的应用价值,模拟真实内网环境,从资产探测到横向移动,完整呈现fscan的使用流程与优势:

案例背景

某企业内网分为三层网络(DMZ区、内网核心区、内网办公区),DMZ区存在Web服务器,内网核心区存在数据库服务器和域控,办公区存在大量员工主机,需进行全面安全评估,目标是发现内网漏洞、获取服务器控制权、评估横向移动风险。

实施步骤

  1. **第一步:DMZ区资产探测**通过已获取的DMZ区Web服务器权限,部署fscan工具,扫描DMZ区网段(192.168.123.0/24):./fscan -h 192.168.123.0/24 -o dmz_scan.txt扫描结果发现:192.168.123.243(Web服务器,开放81端口,Laravel框架)、192.168.123.172(Redis服务器,6379端口未授权访问)、192.168.123.200(SSH服务,弱口令风险)。

  2. **第二步:漏洞利用与权限获取**

    1. Redis未授权利用:执行./fscan -h 192.168.123.172 -rf id_rsa.pub,写入SSH公钥,成功登录Redis服务器,获取root权限。

    2. Laravel漏洞利用:fscan扫描发现192.168.123.243:81存在CVE-2021-3129漏洞,结合fscan输出的漏洞信息,利用漏洞写入WebShell,获取Web服务器www权限。

    3. SSH弱口令爆破:执行./fscan -h 192.168.123.200 -m ssh -pwd 123456,爆破成功获取账号root/123456,登录目标主机。

  3. **第三步:内网横向移动** 以已控制的Redis服务器作为跳板,扫描内网核心区网段(192.168.52.0/24):./fscan -h 192.168.52.0/24 -np -m smb,ms17010扫描发现:192.168.52.30(Windows 7主机,存在MS17-010漏洞)、192.168.52.20(Web服务器,开放8080端口)、192.168.52.100(域控主机,开放445端口)。利用MS17-010漏洞:通过fscan指定ms17010模块,执行漏洞利用,获取192.168.52.30主机system权限,进而通过该主机横向移动至域控。

  4. **第四步:全内网资产梳理与风险评估** 使用fscan批量扫描办公区网段(192.168.93.0/24),发现大量员工主机存在弱口令、开放RDP端口等风险,通过fscan输出的结果,整理出内网资产清单和漏洞报告,完成安全评估。

案例总结

本次测试中,借助fscan工具,仅用4小时完成了企业三层内网的资产探测、漏洞扫描与利用,成功获取6台主机控制权,发现8个高危漏洞、12个中危漏洞。fscan的**批量扫描、自动化漏洞探测、多模块集成**优势,大幅提升了测试效率,避免了频繁切换工具的繁琐,尤其在大规模内网网段扫描中,其多线程优势凸显,可快速筛选高风险目标,为内网渗透提供了高效支撑。

七、总结与注意事项

fscan作为一款国产开源的内网综合扫描工具,以其“自动化、轻量化、功能全面”的特点,成为内网渗透测试的必备神器。无论是新手入门内网渗透,还是资深安全人员开展大规模内网评估,fscan都能大幅提升工作效率,降低操作门槛,其跨平台兼容性和可扩展性,也让它适配不同场景的测试需求。

**使用注意事项**:

  • **合法授权**:所有扫描和测试行为必须在合法授权的前提下进行,严禁用于未授权的攻击活动,坚守网络安全底线。

  • **版本选择**:建议使用最新稳定版,避免使用旧版本存在的bug,同时关注官方仓库更新,及时获取新增漏洞模块。

  • **参数配置**:根据内网环境调整扫描参数(如线程数、端口范围),避免因扫描速度过快触发目标主机防火墙拦截。

  • **痕迹清理**:实战测试后,务必清理fscan的扫描日志、上传的工具文件等痕迹,避免影响目标系统正常运行。

  • **功能搭配**:fscan可与nmap、xray、cobaltstrike等工具搭配使用,互补功能短板,提升渗透测试的全面性。

最后,fscan的价值不仅在于工具本身的便捷性,更在于它体现了国内安全社区“实用化、本土化”的开发理念,为安全从业者提供了高效、免费的内网扫描解决方案。希望本文能帮助大家快速掌握fscan的使用方法,在合法合规的前提下,提升内网渗透测试能力,守护网络安全。

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐