# 如何使用Masscan、Nmap、ELK做內網資產收集
## 引言
在大型企業內網或復雜網絡環境中,資產發現與安全管理是基礎性工作。本文將介紹如何通過`Masscan`快速掃描、`Nmap`深度探測結合`ELK`(Elasticsearch+Logstash+Kibana)構建自動化內網資產收集與分析系統。
---
## 一、工具概述
### 1. Masscan
- **特點**:號稱"最快互聯網掃描器",支持無狀態掃描,每秒可處理百萬級數據包
- **適用場景**:快速發現存活IP和開放端口
### 2. Nmap
- **特點**:深度端口掃描、服務識別、操作系統檢測
- **適用場景**:精細化資產指紋采集
### 3. ELK Stack
- **組成**:
- Elasticsearch:分布式搜索分析引擎
- Logstash:數據收集處理管道
- Kibana:可視化展示平臺
- **作用**:實現資產數據的集中存儲、分析和可視化
---
## 二、實施步驟
### 階段1:Masscan快速掃描
```bash
# 掃描整個內網網段(示例:10.0.0.0/24)
masscan -p1-65535 10.0.0.0/24 --rate=10000 -oJ masscan_results.json
# 參數說明:
# -p : 掃描端口范圍
# --rate : 發包速率(根據網絡環境調整)
# -oJ : 輸出JSON格式結果
輸出處理:
# 提取存活IP(Python示例)
import json
with open('masscan_results.json') as f:
data = json.load(f)
alive_ips = {entry['ip'] for entry in data}
# 對存活IP進行精細化掃描
nmap -sV -O -T4 -p- -iL alive_ips.txt -oX nmap_results.xml
# 參數說明:
# -sV : 服務版本探測
# -O : 操作系統檢測
# -iL : 從文件讀取IP列表
# -oX : 輸出XML格式結果
input {
file {
path => "/path/to/nmap_results.xml"
start_position => "beginning"
sincedb_path => "/dev/null"
}
}
filter {
xml {
source => "message"
target => "nmap_data"
xpath => [
"//host/address/@addr", "host_ip",
"//port/@portid", "port_number",
"//service/@name", "service_name",
"//service/@product", "service_product"
]
}
}
output {
elasticsearch {
hosts => ["localhost:9200"]
index => "nmap_scan-%{+YYYY.MM.dd}"
}
}
logstash -f nmap.conf
nmap_scan-*
# 每天凌晨執行掃描(crontab示例)
0 2 * * * /usr/bin/masscan -p1-65535 10.0.0.0/24 -oJ /data/masscan_$(date +\%Y\%m\%d).json
30 2 * * * /usr/bin/nmap -sV -O -iL /data/alive_ips.txt -oX /data/nmap_$(date +\%Y\%m\%d).xml
Metasploit
進行漏洞驗證Shodan
等外部情報通過Masscan+Nmap+ELK
的組合,可實現:
1. 高效發現:Masscan快速定位存活資產
2. 深度識別:Nmap獲取詳細指紋信息
3. 智能分析:ELK實現資產可視化與歷史追蹤
注:實際部署時需根據網絡規模調整參數,企業級環境建議使用分布式ELK集群。 “`
該方案完整代碼與配置文件可在GitHub獲?。?a href="">示例倉庫鏈接(需替換為實際鏈接)
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。