NFinger(溯纹)是一款基于AI智能分析的Web应用指纹识别工具,具备高效、可扩展的特性。它支持高精度CMS识别、框架检测及中间件指纹匹配,通过多维度特征分析,能够快速、精准地识别网站技术栈,有效助力安全审计、资产梳理与漏洞排查工作。
在线使用:https://NFinger.SecNN.com
Download:https://github.com/SecNN/NFinger/releases
██████ █████ ███████████ ███
▒▒██████ ▒▒███ ▒▒███▒▒▒▒▒▒█ ▒▒▒
▒███▒███ ▒███ ▒███ █ ▒ ████ ████████ ███████ ██████ ████████
▒███▒▒███▒███ ▒███████ ▒▒███ ▒▒███▒▒███ ███▒▒███ ███▒▒███▒▒███▒▒███
▒███ ▒▒██████ ▒███▒▒▒█ ▒███ ▒███ ▒███ ▒███ ▒███▒███████ ▒███ ▒▒▒
▒███ ▒▒█████ ▒███ ▒ ▒███ ▒███ ▒███ ▒███ ▒███▒███▒▒▒ ▒███
█████ ▒▒█████ █████ █████ ████ █████▒▒███████▒▒██████ █████
▒▒▒▒▒ ▒▒▒▒▒ ▒▒▒▒▒ ▒▒▒▒▒ ▒▒▒▒ ▒▒▒▒▒ ▒▒▒▒▒███ ▒▒▒▒▒▒ ▒▒▒▒▒
███ ▒███
▒▒██████
▒▒▒▒▒▒
- 🤖 AI 智能分析: 集成 AI 分析功能,自动识别技术栈并提供安全建议
- 🌐 Web 版本: 提供图形化 Web 界面,支持浏览器访问
- 🔍 指纹识别: 基于多种规则识别 Web 应用指纹(CMS、框架、技术栈等)
- 🌐 IP 归属地查询: 自动解析域名并查询 IP 归属地
- 🎯 Favicon 识别: 计算 Favicon 的 mmh3 和 md5 哈希值
- 📊 网络资产测绘: 生成 FOFA、Shodan、ZoomEye 等平台的查询语法
- 🤖 Robots.txt 扫描: 自动访问并分析 robots.txt 文件
- 💻 开发语言识别: 自动识别 PHP、JSP、ASPX、ASP 等开发语言
- 📝 ICP 备案识别: 自动提取网页中的 ICP 备案号
- 🚀 多线程扫描: 支持多线程批量扫描,提高扫描效率
- 📄 多种导出格式: 支持 HTML、Markdown、Excel 三种格式导出
- 📊 多目标扫描:支持批量扫描和单个目标扫描
- 🔄 自动重试: 请求失败时自动重试机制(最多3次)
- 🎨 美观的 HTML 报告: 生成响应式的可视化扫描报告
- 📈 实时进度显示: 扫描过程中实时显示进度和统计信息
- 🎭 随机 User-Agent: 模拟多种浏览器访问
- 🌍 跨平台支持:Windows、Linux、macOS 全平台兼容
- 🔒 安全可靠:指纹数据加密存储
- 🚀 高性能:支持并发扫描
🔧编辑 config/config.ini或在 Web 界面中临时配置。
[AI]
# AI 大模型配置
# 支持的模型:OpenAI API、Ollama 本地模型、其他兼容 OpenAI API 的模型
# API 地址(必填)
# OpenAI: https://api.openai.com/v1
# Deepseek: https://api.deepseek.com
# 硅基流动: https://://api.siliconflow.cn/v1
# Ollama: http://127.0.0.1:11434/v1
# SecNN API: https://api.secnn.com/v1
# 其他兼容 OpenAI API 的服务:请查看对应服务的文档
base_url =
# API Key 密钥(可选)
# Ollama: 可以留空
# 其他服务: 根据服务要求填写
api_key =
# 模型名称(必填)
# OpenAI: gpt-3.5-turbo, gpt-4, gpt-4-turbo 等
# Deepseek: deepseek-chat, deepseek-reasoner 等
# 硅基流动: Pro/deepseek-ai/DeepSeek-V3.2-Exp , Qwen/Qwen3.5-397B-A17B 等
# Ollama: deepseek-r1:14b, llama2:7b 等(根据本地安装的模型)
# 其他服务: 根据服务支持的模型填写
model = # 扫描单个目标
NFinger_CLI -u http://example.com
# AI 智能分析
NFinger_CLI -u http://example.com --ai
# 批量扫描(从文件读取目标)
NFinger_CLI -f targets.txt
## 创建一个文本文件(如 `targets.txt`),每行一个目标 URL:
http://example.com
https://test.com
http://192.168.1.1:8080
example.org
192.168.1.1
# 指定线程数进行批量扫描
NFinger_CLI -f targets.txt -t 20
# 批量扫描并启用 AI 分析
NFinger_CLI -f targets.txt --ai
# 在线更新指纹库
NFinger_CLI --update| 参数 | 说明 |
|---|---|
-u, --url |
指定单个目标 URL 或 IP |
-f, --file |
指定包含多个目标的文件(每行一个 URL) |
-t, --threads |
设置线程数,默认为 10 |
-o, --output |
指定输出文件名前缀(不含扩展名) |
--html |
导出为 HTML 格式 |
--md |
导出为 Markdown 格式 |
--xlsx |
导出为 Excel 格式 |
--all |
导出所有格式 |
--update |
在线更新指纹库 |
--ai |
使用 AI 分析功能 |
启动 Web 服务,通过浏览器访问图形化界面:
运行 NFinger_WEB🌐服务启动后,在浏览器中访问地址: http://127.0.0.1:20000
API地址(URL):http://127.0.0.1:11434/v1
API密钥(KEY):
大模型(Model):deepseek-r1:14b
https://platform.deepseek.com/sign_in
API地址(URL):https://api.deepseek.com
API密钥(KEY):sk-xxxxxx
大模型(Model):deepseek-chat && deepseek-reasoner
https://cloud.siliconflow.cn/i/FN4rN9cn
API地址(URL):https://api.siliconflow.cn/v1
API密钥(KEY):sk-xxxxxx
大模型(Model):Pro/deepseek-ai/DeepSeek-V3.2-Exp && Qwen/Qwen3.5-397B-A17B
API地址(url):https://api.secnn.cn/v1
API密钥(KEY):sk-xxxxxx
大模型(model):deepseek-v3.1:671b-cloud
请求:
POST /api/scan
Host: 127.0.0.1:20000
Content-Type: application/json
{
"target": "http://secnn.com"
}响应:
{
"target": "http://secnn.com",
"status": "success",
"status_code": 200,
"title": "Example Domain",
"ip_address": "93.184.216.34",
"server": "ECS (dcb/7A8E)",
"languages": ["PHP"],
"icp": "",
"fingerprints": [
{
"name": "WordPress",
"type": "cms",
"version": "unknown"
}
],
"favicon_hash": 123456789,
"favicon_md5": "abc123..."
}请求:
POST /api/batch_scan
Host: 127.0.0.1:20000
Content-Type: application/json
{
"targets": [
"http://example.com",
"https://test.com"
],
"threads": 10
}响应:
{
"results": [
{
"target": "http://example.com",
"status": "success",
...
},
{
"target": "https://test.com",
"status": "success",
...
}
]
}POST /api/ai_analyze
Host: 127.0.0.1:20000
Content-Type: application/json
{
"scan_result": {...},
"ai_config": {
"base_url": "...",
"api_key": "...",
"model": "..."
}
}NFinger/
├── NFinger # 主程序文件
├── web/ # Web 前端调用
│ └── templates/
│ └── index.html # Web 界面模板
├── data/
│ ├── ip2region.xdb # IP 归属地数据库
│ └── fingerprints.db # 加密指纹规则库
├── output/ # 扫描结果输出目录
├── targets.txt # 目标列表文件(示例)
└── README.md # 项目说明文档
A: 运行 NFinger_WEB 启动服务。
A: 服务启动后,在浏览器中访问 http://127.0.0.1:20000。
A: 以增加线程数(-t 参数),但请注意不要设置过高以免对目标服务器造成压力。
A: 确保 data/fingerprints.db 文件存在且格式正确,--update 在线更新指纹库。
A: 暂未开通自定义指纹库,需要添加指纹可WX联系:SecNN-
A: 使用对应的参数,如 --html、--md 或 --xlsx。
A: 确保 data/ip2region.xdb 文件存在且完整。
A: 某些网站可能没有 favicon 或路径非常规,工具会尝试多种常见路径获取。
欢迎提交 Issue 和 Pull Request!
Made with ❤️ by SecNN