网络安全威胁分析师(初级)


一、威胁分析工具双雄:Wireshark与Splunk

1.1 Wireshark:流量解剖专家

  • ​核心能力​​:支持1200+协议解析,实时捕获40Gbps流量,内置会话重组、流量统计等高级功能

  • ​典型场景​​:HTTP数据包重组、DNS隧道检测、SSL/TLS解密

  • ​安装配置​​:

    bash 复制代码
    # Ubuntu安装(含调试符号)
    sudo apt-get install wireshark-common wireshark-gnome
    # 启用混杂模式捕获
    sudo setcap cap_net_raw,cap_net_admin+eip /usr/bin/dumpcap

1.2 Splunk:日志分析引擎

  • ​核心能力​​:每秒处理百万级事件,支持200+数据源接入,内置威胁检测知识库

  • ​典型场景​​:异常登录检测、恶意IP溯源、APT攻击链分析

  • ​快速部署​​:

    ini 复制代码
    # Docker一键部署
    docker run -d -p 8000:8000 splunk/splunk:latest --answer-file=answers.conf
    # 配置日志输入
    [monitor:///var/log/auth.log]
    disabled = false
    sourcetype = linux_auth

二、基础操作实战指南

2.1 Wireshark流量捕获技巧

2.1.1 过滤器语法精要

过滤类型 示例 应用场景
显示过滤 ip.addr == 192.168.1.100 定位特定主机通信
协议过滤 http.request.method == "POST" 拦截敏感数据提交
深度过滤 tls.handshake.certificate contains "malicious.com" 识别伪造证书

2.1.2 流量捕获实战

bash 复制代码
# 使用tshark命令行捕获SSH爆破
tshark -i eth0 -Y "tcp.port==22 and tcp.analysis.retransmission" \
       -T fields -e ip.src -e tcp.analysis.retransmission_packet_count \
       > ssh_bruteforce.log

2.2 Splunk数据查询进阶

2.2.1 搜索语法详解

ini 复制代码
# 多条件组合查询
(index=web src_ip="10.0.0.5" status="500") 
OR (index=db query="SELECT * FROM users") 
| stats count values(uri) as requested_uris

# 时间窗口分析
eventtype="authentication_failed" 
| timechart span=5m count by src_ip

2.2.2 可视化仪表盘配置

xml 复制代码
<!-- 攻击趋势仪表盘 -->
<dashboard>
  <row>
    <panel>
      <title>异常登录热力图</title>
      <table>
        <search>
          index=auth status="401" 
          | stats count by src_ip dest_ip _time 
          | eval time=mvindex(_time, 0)
        </search>
        <drilldown>
          <link target="_blank">/app/search/attack_details?ip=$row.src_ip</link>
        </drilldown>
      </table>
    </panel>
  </row>
</dashboard>

三、典型威胁分析案例

3.1 DDoS攻击溯源(Wireshark实战)

​场景特征​ ​:服务器响应延迟突增,出现大量TCP重传 ​​分析步骤​​:

  1. ​流量捕获​​:

    arduino 复制代码
    tshark -i eth0 -f "tcp.analysis.retransmission" -w ddos.pcap
  2. ​特征识别​​:

    ini 复制代码
    # 统计SYN包占比
    syn_packets = [pkt for pkt in cap if 'SYN' in pkt.tcp.flags]
    syn_ratio = len(syn_packets)/total_packets
  3. ​攻击溯源​​:

    csharp 复制代码
    index=netflow src_port=80 dst_port=80 
    | stats count by src_ip 
    | where count > 1000 
    | table src_ip count

3.2 SQL注入攻击检测(Splunk实战)

​日志特征​ ​:包含UNION SELECT、sleep()等关键字 ​​检测方案​​:

ini 复制代码
(index=web method="GET" uri="*.php") 
| rex field=uri "(?i)union.*select" 
| rex field=params "(?i)sleep\s*(.*)" 
| stats count values(uri) as vulnerable_uris 
| where count > 5

​防御建议​​:

  • 启用ModSecurity规则:SecRule ARGS "@rx (union\s+select)" "id:900001,deny,status:403"
  • 使用参数化查询防止注入

3.3 横向移动识别(联合分析)

​攻击特征​ ​:短时间内访问多个敏感路径 ​​分析流程​​:

  1. ​数据准备​​:

    bash 复制代码
    # 导出Apache访问日志
    logrotate -f /etc/logrotate.d/apache2
  2. ​行为建模​​:

    python 复制代码
    # 使用PySpark分析访问模式
    from pyspark.sql import functions as F
    df = spark.read.csv("access.log", header=True)
    anomalies = df.filter(
        (F.col("path").rlike(r"/(admin|config|backup)")) &
        (F.col("status") == 200) &
        (F.col("bytes_sent") > 1000000)
    )
  3. ​可视化呈现​​:

    ini 复制代码
    index=web action="file_download" 
    | stats count by src_ip dest_path 
    | eval risk_score=count*10 
    | sort risk_score desc 
    | table src_ip dest_path risk_score

四、高级威胁狩猎技术

4.1 流量异常检测模型

​基于统计的检测​​:

ini 复制代码
# 使用Scikit-learn构建异常检测模型
from sklearn.ensemble import IsolationForest
clf = IsolationForest(contamination=0.01)
clf.fit(traffic_features)
anomalies = clf.predict(new_traffic)

​机器学习方案​​:

python 复制代码
| fit GBDT "attack_probability" from src_ip dst_port bytes 
| apply attack_probability as threat_level

4.2 加密流量分析

​TLS指纹识别​​:

bash 复制代码
# 提取TLS握手特征
tls_features = {
    'version': pkt.tls.version,
    'cipher_suites': pkt.tls.cipher_suites,
    'extensions': pkt.tls.extensions
}

​证书异常检测​​:

csharp 复制代码
index=ssl 
| stats count by ssl.certificate.subject 
| where count > 10 
| table ssl.certificate.subject count

4.3 自动化响应脚本

​Splunk告警联动​​:

kotlin 复制代码
(index=alert) 
| where severity="critical" 
| lookup threat_intel.csv as src_ip 
| if(match(src_ip, "malicious")) 
| send_sms "安全团队,检测到来自$src_ip的攻击!"

五、分析师成长路线图

5.1 能力培养路径

diff 复制代码
基础阶段(1-3月):
- 掌握Wireshark协议解析
- 熟悉Splunk基础搜索
- 学习ATT&CK框架

进阶阶段(3-6月):
- 构建SIEM平台
- 开发检测规则
- 参与红蓝对抗

专家阶段(6-12月):
- 主导威胁狩猎
- 设计防御体系
- 输出安全研究

5.2 推荐学习资源

  • ​书籍​:《Wireshark网络分析实战》《Splunk企业级应用实战》
  • ​靶场​:Hack The Box、RangeForce威胁分析实验室
  • ​社区​:Wireshark官方论坛、Splunk安全社区

结语

威胁分析是理论与实践高度结合的领域。建议初级分析师从 ​​单点攻击分析​ ​ 入手,逐步掌握 ​​全链路追踪​ ​ 和 ​​威胁情报联动​​ 能力。通过本文的案例解析和工具指南,读者可快速构建起威胁狩猎的知识框架。记住:安全分析没有终点,唯有持续学习才能在这场没有硝烟的战争中立于不败之地。

相关推荐
world-wide-wait5 小时前
python高级05——HTTP协议和静态服务器
网络·网络协议·http
Ankie Wan6 小时前
ARP: Address Resolution Protocol (ARP),IP转mac address
网络协议·tcp/ip·rfc·arp
沐浴露z6 小时前
【深入理解计算机网络10】UDP协议详解
网络·网络协议·计算机网络·udp
卓码软件测评10 小时前
【第三方网站代码登记测试_HTTP头语法代码详解】
网络·网络协议·http·架构·web
奇树谦10 小时前
Fast DDS 默认传输机制详解:共享内存与 UDP 的智能选择
网络·网络协议·udp·fastdds
wuxuanok18 小时前
WebSocket —— 在线聊天室
网络·websocket·网络协议
爱偷懒的。。1 天前
基于 WebSocket 协议的实时弹幕通信机制分析-抖音
网络·python·websocket·网络协议·学习·js
全栈小51 天前
【小程序】微信开发者工具上调用api接口可以,到了线上调用发现提示wx.request调用报错,原来是https协议问题
网络协议·小程序·https
心.c1 天前
深入理解HTTP协议的本质
网络·网络协议·http