TCPDUMP

Change libpcap Version on macOS (Apple removed a feature)

主宰稳场 提交于 2021-01-29 09:24:25
问题 I just want to use tcpdump with the same -Qout functionality that is available on Ubuntu. On macOS tcpdump and libpcap have been stripped off the functionality to filter with -Qout. tcpdump -Qout -nnSX -c 10 -w packet.pcap port XXXX tcpdump: cannot parse term at: tcpdump: invalid expression "out" I have build tcpdump (./configure, make, make install) and PATH=/usr/local/sbin:$PATH . When I check with tcpdump --version tcpdump version 4.9.3 libpcap version 1.8.1 -- Apple version 79.250.1 Now

抓包一张tcpdump小抄就够了

陌路散爱 提交于 2021-01-29 04:20:27
一、tcpdump Cheat Sheet介绍 tcpdump是一款数据包分析工具,我们抓包的时候经常会用到,但是他的可选项众多,光凭我们的记忆是很难的,况且我们不应该去记工具型的东西。大脑是用来思考的,不应该用来存储。CPU不应该用来做存储。因此,有了这样一张tcpdump Cheat Sheet(tcpdump小抄)的出现,当然这张图不是出自我,在网上找到的好东西,必须得分享出来, 原文可点击这里 ,此文是我自己根据他的文章总结出来的。 二、包含的内容 安装命令 数据包捕获选项 逻辑操作符 显示/输出选项 使用的协议 用于过滤捕获协议的常用命令 三、资源下载 文中的图片以及PDF都可下载,无需关注,无需密码。 链接: https://pan.baidu.com/s/1Gd2HUbC_ZIL8C4N0ntpAZw 密码: 5dsb 四、常用命令 1、安装tcpdump yum install tcpdump 2、列出本机所有的网卡接口 tcpdump -D 3、捕获特定网口的数据包 tcpdump -i eth0 4、捕获具体数量的数据包 tcpdump -c 5 -i eth0 5、捕获的数据包保存到指定的文件 tcpdump -w 0001.pcap -i eth0 6、捕获的数据包显示IP而不是域名 tcpdump -n -i eth0 7、捕获指定协议的数据包

Five86-2靶机渗透实战

不问归期 提交于 2021-01-22 17:40:39
靶机地址: http://www.vulnhub.com/entry/five86-2,418/ 本文涉及知识点实操练习:相关实验: VulnHub渗透测试实战靶场Node 1.0 (Node 1.0 是一个难度为中等的Boot2root/CTF挑战,靶场环境最初由 HackTheBox 创建,实验目的是获取两个flag) 技术点总结 • 对WordPress网站的渗透 – wpscan • WordPress中IEAC插件的RCE漏洞 – WordPress插件IEAC漏洞分析及组合利用尝试 • tcpdump的使用 – tcpdump使用详解 目标发现 nmap -sP 参数使用 ping 扫描局域网主机,目的地址为 192.168.56.6 nmap -A 192.168.56.6 -p- 可以看到目标主机的一些信息,-A 是进行操作系统指纹和版本检测,-p- 是全端口 开放了 22、21、80 端口,并且 80 端口是WordPress 5.1.4的CMS 这里最好提前在/etc/hosts中加上192.168.56.6 five86-2这一条,因为后面访问wordpress的后台wp-admin时会跳转到到这个域名 漏洞发现与利用 在searchsploit和Google并没有发现WordPress 5.1.4的漏洞,可以用wpscan扫描一下这个URL

Linux性能优化(七)——网络流量监控工具

允我心安 提交于 2021-01-18 10:26:16
一、iftop 1、iftop简介 iftop命令可以用来监控网卡的实时流量(可以指定网段)、反向解析IP、显示端口信息等。 在线安装:yum install iftop 2、iftop命令 iftop -h | [-nNpblP] [-u unit] [-i interface] [-f filter code] [-F net/mask] [-G net6/mask6] -h:查看帮助信息 -i:指定监控网卡 -b:不显示流量柱状图 -B:以字节为单位显示流量(默认bits) -n:不解析主机名称,直接都显示IP -N:不解析端口服务,直接显示端口号 -F:显示特定网段的进出流量 -m limit:设置带宽上限,可使用K、M、G作为后缀 iftop -b -n -N -F 192.168.0.0/24 TX:发送流量 RX:接收流量 TOTAL:总流量 cum:累积总流量 peak:流量峰值 rates:分别表示最近2s、10s、40s的平均流量 3、iftop交互命令 按h切换是否显示帮助 按n切换显示本机IP或主机名 按s切换是否显示本机的host信息 按d切换是否显示远端目标主机的host信息 按t切换显示格式为2行/1行/只显示发送流量/只显示接收流量 按N切换显示端口号或端口服务名称 按S切换是否显示本机的端口信息 按D切换是否显示远端目标主机的端口信息

Linux性能优化(十)——CPU性能分析工具

空扰寡人 提交于 2021-01-18 10:25:20
一、CPU性能指标 1、CPU使用率 CPU使用率是最常见的一个性能指标,描述了非空闲时间占总CPU 时间的百分比,根据CPU上运行任务的不同,分为用户CPU、系统CPU、等待IO CPU、软中断和硬中断等。 用户CPU使用率包括用户态CPU使用率(user)和低优先级用户态CPU使用率(nice),表示CPU在用户态运行的时间百分比。用户CPU使用率高,通常说明有应用程序比较繁忙。 系统CPU使用率,表示CPU在内核态运行的时间百分比(不包括中断)。系统CPU使用率高,说明内核比较繁忙。 等待IO的CPU使用率,即iowait,表示等待IO的时间百分比。iowait 高,通常说明系统与硬件设备的IO交互时间比较长。 软中断和硬中断的CPU使用率,分别表示内核调用软中断处理程序、硬中断处理程序的时间百分比。中断CPU使用率高,通常说明系统发生大量的中断。 窃取CPU使用率(steal)和客户CPU使用率(guest),分别表示被其它虚拟机占用的CPU时间百分比,和运行客户虚拟机的CPU 时间百分比。 2、CPU平均负载 CPU平均负载是系统的平均活跃进程数,反应了系统的整体负载情况,主要包括三个数值,分别指过去1分钟、过去5分钟和过去15分钟的平均负载。理想情况下,平均负载等于逻辑CPU个数,表示每个CPU都恰好被充分利用。如果平均负载大于逻辑CPU个数,表示负载比较重。 3

TCP三次握手与四次挥手

馋奶兔 提交于 2021-01-13 22:13:31
TCP是什么 TCP(Transmission Control Protocol 传输控制协议)是一种面向连接(连接导向)的、可靠的、 基于IP的传输层协议。 TCP有6种标示:SYN(建立联机) ACK(确认) PSH(传送) FIN(结束) RST(重置) URG(紧急) TCP的三次握手 第一次握手:客户端向服务器发送请求报文,这时报文首部中的同部位SYN=1,并生成一个随机序列值seq=n。客户端进入syn-sent(同步已发送)状态,等待服务器确认 第二次握手:TCP服务器收到请求报文后,如果同意连接,则发出确认报文。确认报文中应该 ACK=1,SYN=1,确认号ACK=n+1,同时自己也随机生成一个seq=m,此时服务器进入SYN-RCVD(同步收到)状态。 第三次握手:TCP客户端进程收到确认后,还要向服务器给出确认。确认报文的ACK=1,ack=m+1, TCP的三次握手抓包 使用nc -l localhost 8088 监听8088端口 客户端使用nc -v localhost 8088 连接8088端口 再开个终端使用 tcpdump -i lo -vv -nnn tcp port 8088 抓包8088 端口tcp连接 抓包数据 为什么需要三次握手 端口 client发送了一个请求连接的报文,但是网络不好,这个请求没有立即达到服务端

记一次TCP全队列溢出问题排查过程

女生的网名这么多〃 提交于 2021-01-13 18:54:33
1. 前言 本文排查的问题是经典的TCP队列溢出问题,因TCP队列问题在操作系统层面没有明显的指标异常,容易被忽略,故把排查过程分享给大家。 2. 问题描述 A服务调用B服务接口超时,B服务主机IOWAIT高,具体超时情况分为两种: A服务的请求在B服务日志中可查到,但B服务的响应时间超过了A服务的等待超时时间3S。 A服务的请求在B服务日志中无法查到。 3. 问题分析 此种超时请求集中在很短的一段时间(通常在2分钟之内),过后便恢复正常,所以很难抓到问题现场分析原因,只能搭建测试环境,A服务持续请求B服务,在B服务主机上通过DD命令写入大量数据造成主机IOWAIT高,同时通过TCPDUMP在两端抓包分析。 部分服务超时日志: 服务A:Get http://xxx&id=593930: net/http: request canceled (Client.Timeout exceeded while awaiting headers) 服务B: "GET xxx&id=593930 HTTP/1.1" 200 64 "-" "Go-http-client/1.1" "-" "-" 165000(单位微秒) 服务A发起请求3S后没有收到服务B响应,断开连接,服务B日志显示处理时长为0.165S,远低于3S,服务A侧看服务B的响应时间为网络传输时间

聊聊风口上的 eBPF

岁酱吖の 提交于 2021-01-06 11:01:42
eBPF 是一个用于访问 Linux 内核服务和硬件的新技术,由于其灵活性和高性能等特点,被迅速用于网络、出错、跟踪以及防火墙等多场景。目前国内已有少数企业开始尝试将 eBPF 引入生产实践,又拍云也是其中一个。专为技术开发者提供知识分享的 Open Talk 公开课邀请了又拍云开发工程师周晨约直播分享 eBPF 的学习经验与开发心得,并对其分享内容进行整理,下拉至文末点击阅读原文可回看原视频。 大家好,今天分享的主题是《eBPF 探索之旅》,围绕三部分展开: eBPF 是什么 eBPF 能做什么 如何编写 eBPF 程序 认识 eBPF eBPF 是什么,从字面上来看是扩展伯克利包处理器,那伯克利包处理器是什么呢? 在此之前先来了解一个性能优秀的常用抓包工具:tcpdump tcpdump 图中展示了两个常用指令 指令一:指定 IP 和端口,可以抓到 IP 为 220.173.103.227,端口为 80 的包 指令二:加上 grep,可以过滤出带有 route 字段的数据 那么 tcpdump 又是如何做到通过用户提供的规则处理网络上收到的包,再 copy 给用户的呢?如果放在用户层,就需要在系统里所有 socket 读写的时候做一层处理,把规则放上去,这样做难度太大。而 tcpdump 是基于 libpcap 库实现的,libpcap 能做到在驱动将包交给内核网络时

这些最常用的Linux命令,每一条都应该学会!

醉酒当歌 提交于 2021-01-05 01:17:38
linux命令是对Linux系统进行管理的命令。对于Linux系统来说,无论是中央处理器、内存、磁盘驱动器、键盘、鼠标,还是用户等都是文件,Linux系统管理的命令是它正常运行的核心。 线上查询及帮助命令(2个) man:查看命令帮助,命令的词典,更复杂的还有info,但不常用。 help:查看Linux内置命令的帮助,比如cd命令。 文件和目录操作命令(18个) ls:全拼list,功能是列出目录的内容及其内容属性信息。 cd:全拼change directory,功能是从当前工作目录切换到指定的工作目录。 cp:全拼copy,其功能为复制文件或目录。 find:查找的意思,用于查找目录及目录下的文件。 mkdir:全拼make directories,其功能是创建目录。 mv:全拼move,其功能是移动或重命名文件。 pwd:全拼print working directory,其功能是显示当前工作目录的绝对路径。 rename:用于重命名文件。 rm:全拼remove,其功能是删除一个或多个文件或目录。 rmdir:全拼remove empty directories,功能是删除空目录。 touch:创建新的空文件,改变已有文件的时间戳属性。 tree:功能是以树形结构显示目录下的内容。 basename:显示文件名或目录名。 dirname:显示文件或目录路径。 chattr

收集一些非常实用的Linux命令

家住魔仙堡 提交于 2021-01-02 03:14:42
linux命令是对Linux系统进行管理的命令。对于Linux系统来说,无论是中央处理器、内存、磁盘驱动器、键盘、鼠标,还是用户等都是文件,Linux系统管理的命令是它正常运行的核心。 线上查询及帮助命令(2个) man:查看命令帮助,命令的词典,更复杂的还有info,但不常用。 help:查看Linux内置命令的帮助,比如cd命令。 文件和目录操作命令(18个) ls:全拼list,功能是列出目录的内容及其内容属性信息。 cd:全拼change directory,功能是从当前工作目录切换到指定的工作目录。 cp:全拼copy,其功能为复制文件或目录。 find:查找的意思,用于查找目录及目录下的文件。 mkdir:全拼make directories,其功能是创建目录。 mv:全拼move,其功能是移动或重命名文件。 pwd:全拼print working directory,其功能是显示当前工作目录的绝对路径。 rename:用于重命名文件。 rm:全拼remove,其功能是删除一个或多个文件或目录。 rmdir:全拼remove empty directories,功能是删除空目录。 touch:创建新的空文件,改变已有文件的时间戳属性。 tree:功能是以树形结构显示目录下的内容。 basename:显示文件名或目录名。 dirname:显示文件或目录路径。 chattr