如何利用Firepower捕获并分析流量

前言:

部署FTD之后,如果您的网络出现任何连通性问题,首先要做的就是验证配置是否正确。但是,如果无法确定任何配置错误,则可能需要捕获实时流量并分析它们。本文将讨论使用FTD内置工具捕获流量的过程。

Chapter 1 - 流量捕获的要点

一. 当Firepower阻止从入向接口发往出向接口的数据包时,这个行为实际上是由防火墙引擎或Firepower引擎执行的。因此,如果两个主机在通过FTD发送流量时遇到任何连通性问题时,则必须分析来自两个引擎的数据包,以确定问题的根本原因。

下图展示了穿越FTD设备的数据流,防火墙引擎从入接口接收到一个数据包,并将其重定向到Firepower引擎。

二. 在考虑捕获流量时,您需要确保以下几点:

  1. Firepower系统主要不是随时捕获实时流量,除了控制流量和检测流量外,Firepower还支持捕获实时流量仅仅用于排错,不推荐长时间使用,来捕获流量。

  2. 在生产环境中捕获实时流量会降低系统性能。

  3. 不要在Console 会话中希纳是捕获的数据包,推荐把捕获的数据包重定向到一个文件中,然后用第三方抓包软件打开。

Chapter 2 - 配置Firepower系统进行流量分析

根据您希望探测的位置,流量的捕获过程会有所不同,接下来,我们会介绍从以下硬件和软件组件上捕获数据包的任务:

  1. Firepower引擎
  2. 防火墙引擎
  3. FMC

下图,展示了本文将使用到的流量捕获场景使用的实验拓扑。

一.从Firepower引擎捕获流量

从Firepower引擎捕获流量步骤如下:

  1. 登陆到FTD CLI中

  2. 在Shell上执行命令 capture-traffic

  3. 当系统提示选择一个域时,选择“Router“域来捕获数据接口的流量,(br1域捕获管理接口的流量)。

    > capture-traffic 

    Please choose domain to capture traffic from: 

    0 - br1 

    1 - Router 

    Selection? 1 

    Please specify tcpdump options desired. 

    (or enter '?' for a list of supported options) 

    Options: 
  1. 当FTD提示指定TCPdump时,可以使用下表中的选项来确定你的选择,如果您没有提供任何选项,默认也 可以不适用任何过滤器来捕获流量

  2. 在您添加了选项后,点击回车键开始捕获。可随时点击Ctrl+C组合键结束。

a.tcpdump提供了大量选项,您可以使用这些选项来管理捕获到的数据包,还提供了BPF过滤参数,您可 以使用BPF控制并提升数据包的显示。具体参数如表1,表2所示:

表1:TCP dump选项

选项 描述
-c 捕获到一定数量的数据包后停止
-e 捕获中显示以太网头部
-n 不解析主机名或端口名称
-s 定义捕获数据包的大小
-v 显示额外数据包数据
-w 在文件中保存捕获的数据包,而不是在Console终端上显示
-x 以16进制显示数据包内容

表2:BPF选项

选项 用途
host.net 分别用来过滤去往和来自特定主机或整个网络的流量
port,portrange 分别用来过滤去往和来自特定端口或特定端口范围的流量
src,dst 选择流量的方向,源或目的
and.or,not 把具体的条件结合在一起或独立起来
vlan 捕获与指定vlan相关的流量

使用tcpdump选项捕获流量

! To capture the 5 HTTP transactions between a web server and a host with IP address 
192.168.1.2: 

Options: -n -c 5 host 192.168.1.2 and port 80 
03:42:23.479970 IP 192.168.1.2.44694 > 172.16.1.2.80: Flags [S], seq 2622260089, win 
29200, options [mss 1380,sackOK,TS val 2174057 ecr 0,nop,wscale 7], 
Technet24 
length 0 
03:42:23.479970 IP 172.16.1.2.80 > 192.168.1.2.44694: Flags [S.], seq 2877405527, ack 
2622260090, win 28960, options [mss 1380,sackOK,TS val 1270689 ecr 2174057,nop,wscale 
7], length 0 
03:42:23.479970 IP 192.168.1.2.44694 > 172.16.1.2.80: Flags [.], ack 1, win 229, options 
[nop,nop,TS val 2174058 ecr 1270689], length 0 
03:42:23.479970 IP 192.168.1.2.44694 > 172.16.1.2.80: Flags [P.], ack 1, win 229, options 
[nop,nop,TS val 2174058 ecr 1270689], length 436 
03:42:23.479970 IP 172.16.1.2.80 > 192.168.1.2.44694: Flags [.], ack 437, win 235, options 
[nop,nop,TS val 1270689 ecr 2174058], length 0 

b.下载Firepower引擎生产的.pcap文件

除了使用Console终端查看以外,还可以将数据包保存到一个.pcap文件中,然后通过数据包分析软件查看 次文件,进一步分析。如下所示,捕获去往和去往192.168.1.2的流量,在捕获数据包时,系统会把这些数 据包保存到traffic.pcap文件中。

Options: -w traffic.pcap -s 1518 host 192.168.1.2 

Caught interrupt signal 

Exiting. 

> 

! The following command confirms that the pcap file is created and stored on the disk. 

> file list 

Feb 15 05:03 886 /traffic.pcap 

捕获到流量且创建了.pcap文件后,可以通过GUI或CLI下载整个文件(本文以FMC为例)。

c.FTD没有自己的GUI,但可以使用FMC的GUI下载文件整个文件

步骤1:登陆FMC的GUI,打开System > Health > Monitor ,这时会显示出Appliance Status Summary(设备状态汇总)图标
步骤2:找到捕获流量的FTD设备,如果没有看到设备,可以展开安全状态旁的箭头图标,如下图所示:

步骤3:找到相应FTD设备后,单击设备名称,会出现这台FTD设备的Health Monitor(健康监控)页面。
步骤4:单击Advanced Troubleshooting(高级排错)按钮,出现如图4,图5,界面,下载文件。

图片4.png
图片5.png
二.从防火墙引擎捕获流量

前面我们介绍了如何从Firepower引擎捕获流量,但您无法在防火墙引擎上使用相同的命令,接下来我们接入如何从防火墙引擎捕获流量
步骤1:确认您希望捕获流量的接口名称。本例我们以GE1/1为例,捕获次接口流量。如下图所示:

步骤2:使用如下命令捕获接口流量

 > capture icmp_traffic interface INSIDE_INTERFACE match icmp host 192.168.1.2 any 

表示从一台主机(192.168.1.2)捕获发往任意目的地的ICMP流量。“ icmp_traffic“capture名称,”NSIDE_INTERFACE“为接口名称。

下图,中清晰展示了从防火墙引擎捕获流量和从Firepower捕获流量的区别。

步骤3:执行一些穿越FTD的ping测试,使用show capture进行查看捕获的流量。

> show capture 
capture icmp_traffic type raw-data interface INSIDE_INTERFACE [Capturing - 1140 bytes] 
match icmp host 192.168.1.2 any 
> 

下载防火墙引擎生产的.pacp文件的方式同Firepower引擎方式一样

三.从FMC捕获流量

要想排查FMC和FTD之间的复杂通信问题,其中一项重要排错工具是对管理流量进行分析。
步骤1:在FMC的管理接口使用tcpdump命令来捕获流量。也可以使用BPF语法,以及Firepower引擎上应用 的类似过滤选项。如下所示,展示了FTD和FMC之间的ICMP流量捕获内容,host选项限制设备 只 捕获从特定主机10.1.1.2发来的流量。该主机位FTD设备,选项-i eth0允许tcpdump工具只侦听

eth0管理接口
admin@FMC:~$ sudo tcpdump -i eth0 host 10.1.1.2
Password:
HS_PACKET_BUFFER_SIZE is set to 4.
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 96 bytes Technet24
11:11:52.121238 IP 10.1.1.2 > FMC: ICMP echo request, id 16625, seq 1, length 64
11:11:52.121293 IP FMC > 10.1.1.2: ICMP echo reply, id 16625, seq 1, length 64
11:11:53.121786 IP 10.1.1.2 > FMC: ICMP echo request, id 16625, seq 2, length 64
11:11:53.121856 IP FMC > 10.1.1.2: ICMP echo reply, id 16625, seq 2, length 64
^C
4 packets captured
4 packets received by filter
0 packets dropped by kernel
admin@FMC:~$

步骤2:下载FMC生成的.pcap文件。为了使用第三方软件分析捕获的流量,需要把流量保存为.pcap文件,然 后把文件传输到本地计算机。如下所示,捕获了10个数据包,并将文件保存在/var/common/路径 下。

admin@FMC:~$ sudo tcpdump -i eth0 host 10.1.1.2 -w /var/common/fmc_traffic.pcap

HS_PACKET_BUFFER_SIZE is set to 4.
tcpdump: listening on eth0, link-type EN10MB (Ethernet), capture size 96 bytes
^C
10 packets captured
10 packets received by filter
0 packets dropped by kernel
admin@FMC:~$

捕获的流量文件,必须存储在FMC上的/var/common目录下,FMC才允许直接从GUI中下载这些文件。文件下载方法同从Firepower引擎捕获流量下载方法一致。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 211,042评论 6 490
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 89,996评论 2 384
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 156,674评论 0 345
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,340评论 1 283
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,404评论 5 384
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,749评论 1 289
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,902评论 3 405
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,662评论 0 266
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,110评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,451评论 2 325
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,577评论 1 340
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,258评论 4 328
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,848评论 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,726评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,952评论 1 264
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,271评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,452评论 2 348

推荐阅读更多精彩内容

  • ORA-00001: 违反唯一约束条件 (.) 错误说明:当在唯一索引所对应的列上键入重复值时,会触发此异常。 O...
    我想起个好名字阅读 5,249评论 0 9
  • 简介 用简单的话来定义tcpdump,就是:dump the traffic on a network,根据使用者...
    JasonShi6306421阅读 1,231评论 0 1
  • 简介 用简单的话来定义tcpdump,就是:dump the traffic on a network,根据使用者...
    保川阅读 5,942评论 1 13
  • 在这追求效率的社会里,孩子发白日梦,被认为是浪费时间、不务正业,甚至是情绪或智力出了问题。发呆真的是坏事么? 形容...
    MayLing_316阅读 290评论 0 3
  • 中午陪孩子玩的时候,我发现提高孩子思考能力是有方法的。 比如中午和孩子玩决明子的时候,孩子让我把一个盒子里面的决明...
    冬后春初阅读 311评论 1 4