首页 > 编程知识 正文

常见的家庭网络接入方式有哪几种,网络抓包分析

时间:2023-05-04 02:04:01 阅读:37493 作者:769

几种常见的网络抓取方式介绍一、网络分流(TAP ) 2、具有网络管理功能的小型交换机3、双网卡Linux方案4、总结

无论是作为网络运营商,还是安全渗透工程师,在工作中都不可避免地会遇到网络包的需求。

对于网络运营商,网易可以:

了解确定网络中异常设备的网络性能瓶颈的因特网的实际情况。 如果您是安全渗透工程师,则web捕获可以

有助于网络型APP的逆解析; 确定可能会从实际流量中发现可用漏洞的互联网后门和木马。 这些目标往往仅靠在本地抓包是无法实现的,需要一种在网络层抓包更方便的解决方案。 以前使用集线器(Hub )时,Hub设备不是“智能的”,所以会将所有通信转发到所有端口。 因此,通过将监听设备的网卡设置为“拥塞模式”,可以从连接到同一Hub的其他设备接收流量。 但是,随着Hub退出市场,这种方式逐渐不再适用。

以下是实验室环境和中小型网络下的几种网络捕获方式。 它们适合于个人网络的反向分析和问题定位,而不是企业级的专业解决方案。

另一方面,由于网络分路(TAP )网络分路多数是无源)设备,所以不需要安装软件,不需要多馀的知识,能够捕捉网络电缆上流动的通信量。 是一款体积非常小、携带方便、适合个人使用的网络分析仪。

上图东西的全称是“Throwing Star LAN TAP”,通过上述关键词可以在淘宝上找到。 盛惠50元。 从与参照物的对比可以看出,它非常小巧,为而且无需电源供电。 但是,访问网络时会引起暂时的网络中断,对网络几乎没有影响。

共有4个RJ45口,呈一个飞镖形状。 飞镖的英语是“Throwing Star”。 使用时将J1-J2串入需要制作包的网络中,J3和J4与抓住包的机器连接。 也就是说,J3和J4两个端口分别捕获流入和流出两个方向的流量,并将其复制到拦截系统的两个网络端口。 因此,要捕获同时监视链路上的所有通信,监视工作站计算机上需要两张嗅探网卡。 这也不容易实现。 除了默认的有线网卡外,还需要连接另一个USB连接器的有线网卡。 以下是TAP访问网络的场景。

TAP可以直接连接在抓住包的设备之前,也可以连接在更换设备之前。 如果在更换设备之前进行连接,所获得的通信量可能很大,在设置捕获参数时需要进行适当的过滤。 如上图所示,我们使用的抓取机是Linux系统,有两张有线网卡,分别连接到J3和J4接口。 需要注意的是,抓住包的机器这样访问TAP,自己就无法上网了!

在捕获计算机上,运行tshark-D命令以获取系统当前可以捕获的所有接口的列表。 可以通过-i参数指定哪些接口需要抓住包。 下图网卡列表中,排名第一的“1.enp0s25”是系统附带有线网卡,排名第二的“2. enx00e04c680039”是USB接口的有线网卡。 如果需要同时剥离两个NIC,则只需在tshark -i参数后添加NIC编号。 因此,最后执行的命令是tshark-i1-i2-w cap2.pcap,其可将TAP中流动的所有业务保存在cap2.pcap文件中。

以上步骤在Linux操作系统的捕获机上举例说明,但可以完全移植到其他平台上。 例如,在Windows平台上,可以选择直接在图形界面的Wireshark上捕获的网络接口,操作起来更直观。 从得到的cap2.pcap捕获文件中进行细致的数据包分析和检索。

下图所示的端点列表。

有如下图所示的HTTP流量。 如果捕获机只有一个网卡,并且只能连接到J3/J4接口之一,则下一个屏幕快照上的HTTP通信只能获得同时响应请求或单向响应的通信。

二、在具有网管功能的小型交换机上介绍的无源TAP虽然很便携,但如果不想给自己的机器配备一个网络接口,就无法同时抓住双向流量。 怎么解决这个问题? 最简单的方法是使用具有网络管理功能的交换机。 目前,具有网络管理功能的交换机并不昂贵,而是有许多适合办公室网络的小交换机。 购买时,请注意功能列表中是否记载了“支持端口镜像”。 如果有记载,可以满足包的需要。 对于用于测试的此tp-link TL-SG2005小型交换机:

这些设备的使用方式因品牌和型号而异,请参阅说明。 在该设备中,您只需将监控设备连接到一个网络接口,访问内置的Web控制台,并通过Web控制台指定要镜像通信的哪个端口或多少端口。 在下图中,需要捕获数据包的设备位于端口4。 配置示例如下所示。

完成上图的设置后,在连接端口5的捕获机器上,可以轻松地对连接端口4的机器进行捕获监视。

三、使用两张网卡的Linux方案的hmmm,上面的方法确实都很好,像只支持有线连接设备抓包一样吗? 如果我需要抓住无线设备的流量该怎么办? 这可以通过安装两张网卡,构建自己的无线AP来实现。 低预算的可以选择草莓派这样的ARM平台的硬件系统,预算充裕的可以选择带无线网卡的各种迷你计算机。 在这些计算机上安装相应的Linux发行版,并将这些设备配置为“有线”

-无线网卡”的网桥/无线接入点,然后直接在这台机器的网桥接口上进行抓包。这种方式可以指定源端机器的详细信息做过滤,如IP地址或MAC地方,抓包过滤可以更定制化更精确。以下我们以装了基于Debian系统的树莓派举例说明大体步骤。

树莓派已自带一块有线网卡和一块无线网卡接口,在系统中分别名为eth0和wlan0。以下用树莓派3在官方Raspbian平台的情况举例。

首先安装 (1)网桥管理程序 bridge-utils、(2)软AP接入点管理程序hostapd、(3)命令行抓包工具tshark 和 (4)随机数产生工具rng-tools:

sudo apt-get install -y bridge-utils hostapd tshark rng-tools

要启用网桥功能,需要在内核里把 net.ipv4.ip_forward 置为1。修改 /etc/sysctl.conf ,加入以下这行:

net.ipv4.ip_forward=1

创建一个网桥br0,编辑 /etc/network/interfaces,把eth0 网卡加入网桥br0,把网桥br0的IP,设置为原来eth0的IP。

也就是【address 192.168.99.13】这一行,应为 eth0 网卡的原IP地址,其他信息如网关和dns等请根据实际情况修改。

auto loiface lo inet loopbackauto eth0iface eth0 inet manualallow-hotplug wlan0iface wlan0 inet manual#创建一个网桥br0,把eth0加入这个网桥#给网桥指定一个静态IP,这里用192.168.99.13,是因为树莓派所接网段为192.168.99.0/24,需要根据实际情况修改#网桥的静态IP最好和原来的eth0静态ip保持一致,虽然不是强制项auto br0iface br0 inet static bridge_ports eth0 address 192.168.99.13 netmask 255.255.255.0 network 192.168.99.0 broadcast 192.168.99.255 gateway 192.168.99.1 dns-nameservers 8.8.8.8#如果网桥需要用dhcp方式获得IP#iface br0 inet dhcp

把无线网卡wlan0配置为AP热点,热点的ssid名为【wifi_ssid】,密码为【12345678】,编辑文件 /etc/hostapd/hostapd.conf :

# 把wlan0网卡配置为ap热点interface=wlan0driver=nl80211hw_mode=gchannel=6ieee80211n=1wmm_enabled=1ht_capab=[HT40][SHORT-GI-20][DSSS_CCK-40]macaddr_acl=0auth_algs=1ignore_broadcast_ssid=0wpa=2wpa_key_mgmt=WPA-PSKrsn_pairwise=CCMP# 接入点名称,可按实际需求修改ssid=wifi_ssid# 接入点验证密码,可按实际需求修改wpa_passphrase=12345678# 把接入点加入网桥br0bridge=br0

要持久化以上热点配置,编辑hostapd服务文件,执行命令 sudo vi/etc/systemd/system/hostapd.service,把 /etc/systemd/system/hostapd.service 文件的内容设置为:

[Unit]Description=Hostapd Service[Service]Type=forkingExecStart=/usr/sbin/hostapd -B /etc/hostapd/hostapd.conf[Install]#WantedBy=multi-user.targetWantedBy=graphical.targetAlias=hostapd.service

其中【WantedBy=】一行取决于当前系统的默认启动级别,可以先执行命令 systemctlget-default 确认默认启动级别。根据实际情况,选择其中一种。

再把hostapd服务指定为自启动模式:

sudo update-rc.d hostapd defaultssudo update-rc.d hostapd enableservice hostapd status

完成后重启机器, sudo reboot now 。

重启重新登录系统后,执行以下命令查看网桥br0的状态:

$ brctl show br0bridge name bridge id STP enabled interfacesbr0 8000.b827eb99a031 no eth0 wlan0$ifconfig br0br0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.99.90 netmask 255.255.255.0 broadcast 192.168.99.255 inet6 fe80::ba27:ebff:fe99:a031 prefixlen 64 scopeid 0x20<link>

执行以下命令,验证和查看wlan0网卡上的热点状态,在返回的内容里,看到【ssid wifi_ssid】,即为热点正常启动。

$sudo iw wlan0 infoInterface wlan0 ifindex 3 wdev 0x1 addr b8:27:eb:cc:f5:64 ssid wifi_ssid type AP wiphy 0 channel 6 (2437 MHz), width: 20 MHz, center1: 2437 MHz txpower 31.00 dBm

重启和验证过网桥和热点信息后,扫描所在无线网络,果然看到名为“wifi_ssid”的接入点。从手机的WIFI设置上,选择加入该无线网络:

输入正确的接入点验证密码后,手机获得了树莓派网桥分配的IP地址:

此时只要登录树莓派,执行以下命令行,在 host参数里指定手机的IP地址,即可对该IP的所有流量进行精确抓包:

tshark -i br0 -w traffic_from_mobile.pcap 'host 192.168.99.114'

最后得到的 traffic_from_mobile.pcap 文件里就获得这台手机的完整流量了。

四、总结

从以上介绍可以看出,网络层抓包有各种可选方式,建议根据自己的需求和具体网络架构,选择适用的模式。另外也可以进行多种模式的叠加和串接,实现更灵活的抓包模式。

同时我们也要提醒一下:网络抓包有风险!不要贸然实施未获授权的抓包,可能会违法违规,以上方式只建议在实验和学习环境中使用。

最后,我们也再完整地总结一下上述三种方式的对比:

分流器(TAP)小交换机迷你电脑成本最低大约50元最低大约200元最低大约220元复杂程度简单简单稍微复杂适用位置灵活有线无线缺陷抓包机器需要两个网络接口有源,需要额外配置需要一定的动手能力

Ref

J. Bullock, J T. Parker - Wireshark for security professionalsUsing a Raspberry Pi 3 as a WiFi Access Point and BridgeNetworkConfigurationRPI-Wireless-Hotspot

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。