SagiHacky/PyScanner

GitHub: SagiHacky/PyScanner

PyScanner 是一个零配置的 Python 局域网扫描器,能自动发现网络设备并探测开放端口、操作系统、MAC 地址及供应商信息。

Stars: 0 | Forks: 0

# PyScanner 🔍 ``` ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ ░ p y s c a n n e r ░ ░ network recon · python ░ ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ ``` 一个使用 Python 构建的网络扫描器,灵感来自 nmap。PyScanner 会自动检测你的本地网络并扫描所有设备 —— 包括开放端口、服务、OS 指纹识别、主机名、MAC 地址、供应商信息和防火墙检测。 由一位网络无政府主义者构建,他认为安全工具应该对其功能和所服务的对象保持诚实。 ## 功能 - **自动网络检测** —— 无需手动输入你的 IP 范围 - **主机发现** —— ping 你子网上的所有 254 台主机 - **端口扫描** —— 多线程 TCP 扫描以提高速度 - **服务检测** —— 识别开放端口上的服务 - **Banner 抓取** —— 在可用时读取服务 banner - **OS 指纹识别** —— 通过 TTL 分析猜测 OS - **主机名解析** —— 反向 DNS 查询 - **MAC 地址查询** —— 从 `/proc/net/arp` 读取 - **供应商查询** —— 通过 MAC API 识别制造商 - **防火墙检测** —— 检测被过滤的端口并进行汇总 - **进度条** —— 实时扫描进度 - **彩色输出** —— 绿色表示开放,红色表示被过滤 - **Ctrl+C 支持** —— 优雅地中断 ## 要求 - Python 3.x - Linux(使用 `/proc/net/arp` 进行 MAC 查询) - 互联网连接(通过 `api.macvendors.com` 查询供应商) ## 用法 ``` python3 PyScanner.py ``` 无需参数。扫描器会自动检测你的网络并开始扫描。 ## 示例输出 ``` ___ _ _ ____ ____ ____ _ _ _ _ ____ ____ |__] \_/ [__ | |__| |\ | |\ | |___ |__/ | | ___] |___ | | | \| | \| |___ | \ Scan has begun... 192.168.1.1 - _gateway - Linux/Mac - aa:bb:cc:dd:ee:ff - XEROX CORPORATION 53 - domain - no banner 80 - http - no banner 443 - https - no banner 192.168.1.105 - myphone - Linux/Mac - ff:ee:dd:cc:bb:aa - Apple, Inc. 146 ports filtered 192.168.1.202 - unknown - Network Device - 18:69:d8:xx:xx:xx - Tuya Smart Inc. 42 ports filtered [██████████████████████████████████████████████████] 100% Scan has ended... 6 hosts were down The scan took 62 seconds ``` ## 工作原理 1. 使用 `socket` 自动检测你的本地 IP 2. 通过 `os.system` ping `/24` 子网中的每台主机 3. 从 ping 输出中获取 TTL 以进行 OS 指纹识别 4. 读取 `/proc/net/arp` 获取 MAC 地址 5. 从 `api.macvendors.com` 查询供应商 6. 使用多线程 TCP socket 扫描端口 7. 尝试在开放端口上进行 banner 抓取 8. 通过 `socket.timeout` 检测被过滤的端口 9. 按主机分组打印彩色结果 ## 限制 - MAC 供应商查询可能会受到免费 API 的速率限制 - 通过 TTL 进行的 OS 检测是近似的,并非绝对准确 - 仅限 Linux - 你自己机器的 MAC 可能会显示为 `unknown` ## 法律声明 请仅在拥有所有权或获得明确扫描许可的网络上使用 PyScanner。未经授权的网络扫描在你所在的司法管辖区可能是非法的。未经同意的安全测试即为监控。 ## 作者 由 [SagiHacky](https://github.com/SagiHacky) 制作 · they/them · 网络无政府主义者 · `@legolymas:matrix.org`
标签:Facebook API, Python, 插件系统, 数据统计, 无后门, 检测规则, 端口扫描, 网络扫描器, 网络资产发现, 逆向工具