DecoyMini 技术交流社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 3416|回复: 0

[蓝队] 数据包分析

[复制链接]

172

主题

34

回帖

30

荣誉

Rank: 9Rank: 9Rank: 9

UID
2
积分
339
精华
1
沃币
2 枚
注册时间
2021-6-24

论坛管理

发表于 2022-3-23 17:50:19 | 显示全部楼层 |阅读模式

一、数据包捕获的基础知识


数据包捕获的过程为捕获和存储原始网络流量,以供后面分析。这是一种从给定源捕获所有网络流量的格式,并按时间和数据包编号对其进行组织,以便从内容到元数据的所有流量细节都可以解析以进行分析。

原始数据包捕获是安全分析的主要内容,因为它们可以是完整的日志源,可能存储在给定时间通过设备/接口的所有流量。这种详细的细节级别可以提供其他日志源无法提供的答案。数据包捕获的缺点是存储,从给定设备/接口捕获所有数据时,数据可能会在短时间内达到令人难以置信的数量,这在使用有限的存储容量时可能会导致问题。

  • PCAP - 数据包捕获的标准文件格式;
  • BPF - 代表伯克利包过滤器,BPF 语法用于 Wireshark 等数据包分析器中,用于在网络分析期间从捕获中过滤掉特定数据包,也可通过 tcpdump 等工具在 Linux 终端中使用;
  • Libpcap - 其他程序用来读取数据包捕获文件的最常用库;

二、捕获和索引


  • Awesome Collection: Pcap Tools
  • Arkime (Moloch) - Arkime 增强了安全基础设施,以标准 PCAP 格式存储和索引网络流量,提供快速、索引访问
  • Stenographer by Google - 一个完整的数据包捕获实用程序,用于将数据包缓冲到磁盘以进行入侵检测和事件响应。提供了 NIC 到磁盘数据包写入的高性能实现,在磁盘填满时处理删除这些文件,并提供快速轻松地读取特定数据包集的方法
  • CapMe - 用于与数据包捕获轻松交互的 Web 界面,位于 Security Onion 内
  • NTOP - Handy 一个灵活的工具堆栈,可以创建数据包捕获、网络流日志和网络探测器,以记录不同类型的流量
  • Dumpcap - Wireshark 附带的工具,用于简单地捕获数据包数据并写入磁盘
  • Daemon Logger - 简单的数据包记录和 soft tap 守护程序
  • Netsniff-ng - 基于数据包 mmap(2) 机制的快速网络分析器。它可以将 pcap 文件记录到光盘、重放它们,还可以进行离线和在线分析
  • Attacking Network Protocols: Ch.2 Capturing Application Traffic - pg.11

三、解密加密数据包


这可以通过以下几种方式完成:

Man-in-the-middle (MITM)


Using the (Pre)-Master-Secret SSLKEYLOGFILE Using an RSA Private Key

四、Wireshark


使用最广泛的网络协议分析器 Wireshark,它可以让你在微观层面上查看网络上发生的事情,并且是许多商业和非营利企业、政府机构和教育机构的事实上 (通常是法律上) 的标准。


视频演示:https://www.youtube.com/watch?v=6ywAHXEOHZE

五、TShark


tshark - Wireshark 的命令行版本


5.1 基础命令


  • #tshark -r [file]
  • #tshark -r [file] -Y [wireshark display filter]
    • -Y 选项指定一个显示过滤器,以帮助组织数据包捕获并过滤掉特定数据,例如协议或主机信息。
  • #tshark- r [file] -Y [wireshark display filter] -T fields -e [field]
    • 可以使用 -tfields 和 -e 选项进一步过滤数据包,有了这些,就可以使用 Wireshark 语法指定不同的过滤器层。-T 确定 tshark 文本输出的格式,-e 将允许您指定要打印的数据包的不同字段。
  • #tshark -r [file] tcp.port == 80 || udp.port == 80
    • 显示过滤器也使用 BPF 语法,可以在捕获之后应用,并且在正确使用时非常有用。显示/BPF 过滤器在参数中使用原语 (&&、||、!)
  • https://linux.die.net/man/1/tshark
  • https://hackertarget.com/tshark-tutorial-and-filter-examples/
  • BTFM: tshark - pg. 43
  • Operator Handbook: TShark - pg.304
  • Tshark for Packet Analysis - Applied Network Security Monitoring, pg.359

5.2 合并多个 pcap 文件


Note: mergecap
  1. mergecap /<directory>/*.pcap -w /<directory>/capture.pcap
复制代码

5.3 列出 Pcap 中的唯一 IP 源


  1. tshark -T fields -r 'capture.pcap' -e ip.src | sort -u
复制代码

5.4 列出 HTTP 流量的唯一 IP 源和目标


  1. tshark -T fields -r 'capture.pcap' -e ip.src -e ip.dst -Y "http" | sort -u
复制代码

5.5 WiFi 上的实时 DNS 请求和响应


  1. tshark -i wlan0 -T fields -f "src port 53" -n -e dns.qry.name -e dns.resp.addr       
复制代码

5.6 从支持的协议中提取所有对象/文件


note: 这将创建一个名为 "exported" 的文件夹并将结果放在那里
  1. tshark -r 'capture.pcap' --export-objects http,exported
  2. tshark -r 'capture.pcap' --export-objects dicom,exported
  3. tshark -r 'capture.pcap' --export-objects imf,exported
  4. tshark -r 'capture.pcap' --export-objects smb,exported
  5. tshark -r 'capture.pcap' --export-objects tftp,exported
复制代码

5.7 列出访问的 URI


  1. tshark -T fields -r capture.pcap -e http.host -e ip.dst -e http.request.full_uri -Y "http.request"
复制代码

5.8 获取 HTTP POST 请求并输出到 JSON


  1. tshark -T json -r capture.pcap -Y "http.request.method == POST"
复制代码

六、TCPDump


TCPDump - tcpdump 是一个命令行数据包分析工具


6.1 基础命令


  • #tcpdump -r [filename.pcapng] host [IPADDRESS]
    • 显示传入和传出指定 IP 地址的所有数据包
  • #tcpdump -r [filename.pcapng] -w [filename]
    • 将结果输出到指定的文件类型,例如 csv 或 txt

6.2 过滤流量



视频演示:https://www.youtube.com/watch?v=1lDfCRM6dWk

七、NGREP


命令行数据包分析工具,使用户能够在网络层搜索单词和短语

  • 基本使用
    • #ngrep -I [pcapfile]
    • #ngrep -I ngrep.pcap "POST"
  • Filters - ngrep 理解 BPF 语法,可以与模式匹配一起应用
    • #ngrep -I ngrep.pcap "POST" host '192.168.1.1'

八、在线数据包捕获分析器


  • APackets -  可以分析 pcap 文件以查看 HTTP 标头和数据、提取传输的二进制文件、文件、办公文档、图片的 Web 实用程序;
  • PacketTotal - PacketTotal 是一个用于分析、分类和共享 .pcap 文件的引擎。该工具在构建时考虑到了 InfoSec 社区,并在恶意软件分析和网络取证中具有应用程序;

九、Powershell 数据包捕获


PCAP 集合

note:脚本和 pcap 应位于 C:\Windows\System32 或用户目录下
  1. Invoke-Command -ScriptBlock {ipconfig} -Session $s1

  2. Invoke-Command -ScriptBlock {
  3. $url = "https://raw.githubusercontent.com/nospaceships/raw-socket-sniffer/master/raw-socket-sniffer.ps1"
  4. Invoke-WebRequest -Uri $url `
  5.         -OutFile "raw-socket-sniffer.ps1"
  6. PowerShell.exe -ExecutionPolicy bypass .\raw-socket-sniffer.ps1 `
  7.         -InterfaceIp "[RemoteIPv4Address]
  8.         -CaptureFile "capture.cap"
  9.         } -Session $s1
复制代码

十、其它工具


  • Brim -  用于高效搜索大型数据包捕获和 Zeek 日志的桌面应用程序;
  • BruteShark - BruteShark 是一种网络取证分析工具 (NFAT),它对网络流量 (主要是 PCAP 文件,但它也能够直接从网络接口进行实时捕获) 进行深度处理和检查。包括:密码提取、构建网络地图、重建 TCP 会话、提取加密密码的哈希,甚至将其转换为 Hashcat 格式以执行离线蛮力攻击;
  • Net-creds -  从接口或 pcap 嗅探敏感数据
  • PCredz -  该工具从 pcap 文件或实时界面中提取信用卡号、NTLM (DCE-RPC、HTTP、SQL、LDAP 等)、Kerberos (AS-REQ 预授权类型 23)、HTTP Basic、SNMP、POP、SMTP、FTP、IMAP 等;
  • chaosreader - Chaosreader 跟踪 TCP/UDP/其他会话并从 snoop 或 tcpdump 日志 (或其他 libpcap 兼容程序) 中获取应用程序数据。这是一种 "any-snarf" 程序,因为它将从网络流量日志中捕获的数据中获取 telnet 会话、FTP 文件、HTTP 传输(HTML、GIF、JPEG 等)和 SMTP 电子邮件;

十一、资源



您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|小黑屋|DecoyMini 技术交流社区 ( 京ICP备2021005070号 )

GMT+8, 2024-4-19 12:07 , Processed in 0.066791 second(s), 23 queries .

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表