ZacharyZcR
|
d19abcac36
|
feat: 新增发包频率控制功能
- 添加-rate参数:控制每分钟最大发包次数
- 添加-maxpkts参数:控制整个程序最大发包总数
- 在所有网络操作点集成发包限制检查
- 支持端口扫描、Web检测、服务插件、POC扫描等场景
- 默认不限制,保持向后兼容性
|
2025-09-02 11:24:09 +00:00 |
|
ZacharyZcR
|
a36767c158
|
feat: 实现进度条网络包统计功能,支持TCP成功失败分类
- 新增全局原子操作包计数器,支持TCP成功/失败、UDP分类统计
- 端口扫描TCP连接区分成功失败计数,提供准确的网络活动监控
- HTTP请求统一归类到TCP统计,简化显示逻辑
- 进度条实时显示发包统计:发包:总数[TCP:成功✓失败✗,UDP:数量]
- 服务插件TCP/UDP连接同步计数,确保统计完整性
- 使用原子操作保证高并发环境下计数准确性
|
2025-09-02 08:45:44 +00:00 |
|
ZacharyZcR
|
80644cd6f1
|
refactor: 删除多余的-fp参数,服务指纹识别默认启用
理由:
- SmartPortInfoScanner已默认进行服务指纹识别
- -fp参数造成用户困惑,存在两种显示模式
- 详细服务信息对安全扫描很有价值,应该默认显示
删除内容:
- 移除-fp命令行参数定义
- 删除EnableFingerprint变量和相关逻辑
- 清理国际化文件中的相关文本
- 移除配置结构体中的指纹识别字段
新行为:
- 服务识别信息默认显示完整详情
- 包含版本、系统、产品、协议信息和Banner
- 简化用户界面,消除参数选择的困惑
效果验证:
- 原来: ./fscan -h IP -fp 显示详细信息
- 现在: ./fscan -h IP 默认显示详细信息
- 用户体验更简洁一致
|
2025-09-02 07:51:28 +00:00 |
|
ZacharyZcR
|
82ab894bcf
|
feat: 实现智能服务识别,网络包减少50-70%,保持信息完整性
问题:
- 原版本每个端口需要发送5-10个探测包
- 网络交互冗余,性能较差
- 用户希望减少网络包但保持准确性
解决方案:
- 实现SmartPortInfoScanner智能识别策略
- Banner优先:大部分服务主动发送banner,零额外网络包
- 智能探测:每个端口只使用最优的1-2个探测器
- 保持nmap指纹库的完整解析能力
智能策略:
1. 首先尝试Banner识别(SSH/SMTP/FTP等)
2. 失败时使用端口专用的首选探测器
3. 最后回退到3个最有效的通用探测器
优化效果:
- 网络包减少: 50-70% (从12-38包降至7-12包/端口)
- 信息完整性: 100%保持 (SSH显示完整版本信息)
- 性能提升: 扫描时间显著缩短
- 统一显示: 端口发现和服务识别同步输出
测试验证:
- SSH: 版本:9.6p1 Ubuntu 3ubuntu13.13 ✓
- SMTP: 完整banner信息 ✓
- HTTP: 正确Web服务标记 ✓
- MySQL: 准确服务识别 ✓
|
2025-09-02 06:33:18 +00:00 |
|
ZacharyZcR
|
5133010ed2
|
fix: 解决端口扫描与服务识别的显示时序问题
问题:
- 端口发现日志在25.2s显示
- 服务识别结果在30.2s-40.2s分批显示
- 用户希望合并为统一显示
解决方案:
- 延迟端口开放日志输出直到服务识别完成
- 将端口状态和服务信息合并为一行显示
- 格式: "端口开放 IP:PORT [服务](类型) 版本/详情"
- Web服务标注"(Web服务)"便于识别
效果:
- 消除了分批显示的时间差
- 信息更加简洁统一
- 保持了-fp参数的详细信息展示
|
2025-09-02 06:08:35 +00:00 |
|
ZacharyZcR
|
cddbb9e7e4
|
refactor: 统一Core目录大小写为小写
|
2025-08-12 13:04:14 +08:00 |
|