geo787/company-security-tool
GitHub: geo787/company-security-tool
这是一个基于 Python 开发的轻量级端口扫描工具,旨在通过识别开放端口和服务来辅助企业进行基础设施的安全审计与合规检查。
Stars: 0 | Forks: 0
# 🔐 企业安全端口扫描器
一个实用的基于 Python 的安全工具,旨在扫描 TCP 端口、识别暴露的服务并生成结构化的安全报告。
该项目构建为一个 **作品集就绪的网络安全工具**,展示了与初创公司、IT 团队和安全分析师相关的现实世界网络、安全和软件工程技能。
# 🚀 概述
**企业安全端口扫描器**
是一个命令行安全工具,用于帮助识别目标系统在指定范围内的开放端口。
它解析域名,执行 TCP 连接检查,并将扫描结果导出为可读的报告文件。
该工具模拟了在部署应用程序、审计基础设施或执行授权渗透测试之前通常执行的现实世界安全任务。
# 🏢 现实世界用例
一家部署 Web 应用程序的初创公司希望在上线前验证只有所需的服务被暴露。
该工具允许团队:
* 检测意外开放的端口
* 验证安全配置
* 记录网络暴露情况
* 支持合规性和安全检查
* 协助进行基本的漏洞评估
可以使用该工具的典型环境:
* 初创公司基础设施验证
* DevOps 部署检查
* 网络安全审计
* 网络安全实验室和练习
* 教育环境
# 🧠 架构
用户输入
```
|
v
```
域名解析器 (DNS)
```
|
v
```
TCP 端口扫描器
```
|
v
```
报告生成器
```
|
v
```
TXT / CSV 输出文件
# ⚙️ 功能
* 扫描自定义端口范围(例如:1–1024)
* 检测开放的 TCP 端口
* 将域名解析为 IP 地址
* 生成 TXT 和 CSV 安全报告
* 简洁清晰的命令行界面
* 跨平台
* 模块化的 Python 代码结构
* 输入验证和错误处理
# 🛡️ 展示的技能
## 网络
* TCP/IP 通信
* DNS 解析
* 端口扫描逻辑
* Socket 编程
## 网络安全
* 基本的侦察技术
* 服务暴露检测
* 网络枚举
* 结构化安全报告
## 软件工程
* 模块化 Python 架构
* 错误处理
* 输入验证
* 文件系统操作
* 日志记录和报告设计
# 🧰 使用的技术
* Python 3
* socket
* datetime
* os
* Git
* GitHub
# 📦 项目结构
company-security-tool/
```
main.py
scanner.py
reports/
README.md
.gitignore
```
# ▶️ 安装
## 1. 克隆仓库
```
git clone https://github.com/geo787/company-security-tool.git
cd company-security-tool
```
## 2. 创建虚拟环境
```
python -m venv venv
```
## 3. 激活环境
Windows:
```
venv\Scripts\activate
```
Linux / macOS:
```
source venv/bin/activate
```
# ▶️ 运行扫描器
```
python main.py
```
示例输入:
目标:
```
scanme.nmap.org
```
端口范围:
```
1
1024
```
# 📸 示例扫描输出
```
Scanning target: scanme.nmap.org
Open ports detected:
[OPEN] Port 22 -> SSH
[OPEN] Port 80 -> HTTP
Scan completed successfully
```
生成的报告:
```
reports/scan_report_45.33.32.156_2026-04-07.txt
reports/scan_report_45.33.32.156_2026-04-07.csv
```
# 📄 输出报告
每次扫描后,该工具会自动生成结构化报告。
## TXT 报告
用于:
* 文档记录
* 审计日志
* 事件笔记
## CSV 报告
用于:
* 电子表格分析
* 安全仪表板
* 自动化工作流
# 🔒 合理使用声明
该工具严格用于:
* 教育目的
* 授权的安全测试
* 网络安全学习环境
请勿在未经许可的情况下使用该工具扫描系统。
# 🚀 路线图
## 版本 1.1
* 多线程扫描
* 性能优化
* 更快的端口检测
## 版本 1.2
* 服务检测(Banner 抓取)
* 超时处理改进
* 日志系统
## 版本 2.0
* 漏洞检测模块
* JSON 报告导出
* CLI 参数支持
## 版本 3.0
* Web 仪表板界面
* REST API 集成
* Docker 容器部署
# 🧪 实用开发计划
该计划将项目从一个简单脚本转变为适用于求职申请和初创公司环境的现实世界网络安全工具。
## 阶段 1 — 稳定性与性能(1–2 周)
目标:
使扫描器可靠且具备生产就绪能力。
任务:
* 实现多线程
* 添加超时控制
* 改进错误处理
* 添加日志系统
* 优化扫描速度
交付成果:
* 更快的扫描速度
* 稳定的执行
* 专业的日志
## 阶段 2 — 安全功能(2–3 周)
目标:
将工具转变为真正的安全实用程序。
任务:
* 实现 Banner 抓取
* 检测服务版本
* 识别常见的高风险端口
* 基本漏洞指标
示例:
* 开放 Telnet
* 开放 FTP
* 暴露的 SSH
交付成果:
* 服务检测
* 安全警告
* 丰富的报告
## 阶段 3 — 自动化与 CLI(2 周)
目标:
使工具可用于脚本和 DevOps 流水线。
任务:
* 添加 argparse 支持
* 允许命令行参数
* 添加配置文件
* 启用批量扫描
示例用法:
```
python main.py --target example.com --ports 1-1024
```
交付成果:
* 可自动化的扫描器
* DevOps 兼容性
## 阶段 4 — 部署与作品集就绪(2–3 周)
目标:
使项目对招聘人员和初创公司具有吸引力。
任务:
* 创建 Docker 容器
* 添加 requirements.txt
* 添加架构图图片
* 创建演示截图
* 添加使用文档
交付成果:
* 可部署的安全工具
* 生产级仓库
## 阶段 5 — 高级版本(可选)
目标:
将项目转变为旗舰级的网络安全作品集项目。
可能的扩展:
* Web 界面仪表板
* REST API
* 定时扫描
* 邮件警报
* 漏洞数据库集成
* 网络发现模块
# 📌 建议的后续提交顺序
1. 添加日志系统
2. 实现多线程
3. 添加 CLI 参数
4. 添加 Banner 抓取
5. 添加 Docker 支持
# 👩💻 作者
Roberta Barba
网络安全与计算机科学
GitHub:
[https://github.com/geo787](https://github.com/geo787)
# ⭐ 为什么该项目很重要
该项目展示了现实技术环境所需的实用网络安全和软件工程能力。
它展示了以下能力:
* 构建功能性的安全工具
* 理解网络基础知识
* 自动化技术流程
* 生成结构化报告
* 设计可扩展的软件组件
该仓库旨在作为以下职位的作品集项目:
* 网络安全职位
* 网络工程职位
* DevOps 职位
* QA 和测试职位
* 初创公司技术职位
标签:AES-256, DevOps安全, IP地址解析, Qt框架, Socket编程, SYN扫描, TCP扫描, 二进制模式, 域名解析, 基础设施验证, 开源安全工具, 批量测试, 插件系统, 数据统计, 服务识别, 漏洞评估, 端口扫描, 网络侦查, 网络安全, 网络安全教育, 网络安全研究, 网络工具, 跨平台工具, 逆向工程平台, 隐私保护