• tcpdump参数及使用介绍(转)


    原文地址:http://dogdogcom.blog.51cto.com/2402458/490398

    tcpdump

       -a    将网络地址和广播地址转变成名字;
       -d    将匹配信息包的代码以人们可以理解的汇编格式给出;
       -dd     将匹配信息包的代码以c语言程序段的格式给出;
       -ddd   将匹配信息包的代码以十进制的形式给出;
       -e    在输出行打印出数据链路层的头部信息;
       -f     将外部的Internet地址以数字的形式打印出来。
       -l     使标准输出变为缓冲行形式;
       -n    不把网络地址转换成名字;
       -t     在输出的每一行不打印时间戳;
       -v    输出一个略微具体的信息。比如在ip包中能够包含ttl和服务类型的信息;
       -vv     输出具体的报文信息;
       -c    在收到指定的包的数目后。tcpdump就会停止;
       -F      从指定的文件里读取表达式,忽略其他的表达式;
       -i     指定监听的网络接口。
       -r    从指定的文件里读取包(这些包一般通过-w选项产生);
       -w     直接将包写入文件里,并不分析和打印出来;
       -T     将监听到的包直接解释为指定的类型的报文,常见的类型有rpc(远程过程调用)和snmp(简单网络管理协议)
              -p           指定协议tcp,udp,icmp,arp
              -s           指定捕获数包字的大小,单位byte,默认96最大65536


    可使用keyword:
    协议,-p tcp,udp,icmp,arp等
    数据包:dst,src,port,dst port,src port,host
    运算符:or and not(!)
    多条件:dst (172.16.1.1 or 172.16.1.13 ) 用括号及转义
    在进行嗅探的时候,必须置于混杂模式才干嗅探,系统会有日志记录
    grep "promiscuous" /var/log/messages //混杂模式
    用TCPDUMP捕获的TCP包的一般输出信息是:
      src.port > dst.port: flags data-Seq ack win urgent options
      src.port > dst.port: 源地址.源端口 到 目的地址.目的端口
           flags:                 TCP包中的标志信息,S 是SYN标志, F (FIN), P (PUSH)
                               R (RST) "." (没有标记)
        
          data-Seq:      是数据包中Sequence number(顺序号码)
          ack:              Acknowledge number(确认号码) 
          window是接收缓存的窗体大小, 
          urgent表明数据包中是否有紧急指针.
    注tcp标志位:
    SYN(synchronous建立联机) ACK(acknowledgement 确认) 

    PSH(push传送) FIN(finish结束) RST(reset重置) URG(urgent紧急)


    查看icmp包:
    1,tcpdump -i eth0 -p icmp    (and src 192.168.1.xxx)

    查看广播包:


    2,tcpdump -i eth0 -p broadcast

    查看arp包


    3,tcpdump -i eth0 -p arp


    4,tcpdump -X -i eth0 -p tcp port 21 //嗅探21端口数据并解包
    获取ftppassword实例:
    tcpdump -X -i eth0 -p tcp port 21 > 21.log &
    cat 21.log | grep "USER."
    cat 21.log | grep "PASS."
    更精确的嗅探:
    嗅探从172.16.1.1到172.16.1.2port为21的数据包:

    tcpdump -i eth0 -X -tnn -p tcp and src 172.16.1.1 and dst 172.16.1.2 and port 21


    5.tcpdump -X -n -p tcp dst port 80 //嗅探80端口数据,并解包 (加-t就不显示时间)


    6.tcpdump -i eth0 host 202.96.128.68 //指定主机


    7,//嗅探从172.16.1.2到172.16.1.1 或者172.16.1.13的数据包

    tcpdump -i eth0 -tnn src 172.16.1.2 and dst (172.16.1.1 or 172.16.1.13 )


    8,利用tcpdump统计各类数据包:
    //统计1000个数据包中的ip连接量,并按从多到少的顺序排序,列出前3名
    tcpdump -i ethp -tnn -c 1000 | awk -F "." "{print $1"."$2"."$3"."$4}' | sort | uniq -c |sort -nr | head -n 3//按从大到小的顺
    序排序并列出并三名
    tcpdump -i ethp -tnn -c 1000 | awk -F "." "{print $1"."$2"."$3"."$4}' | sort | uniq -c | awk '$1 > 100'//显示大于100数据包
    sort:排序 -nr 从大到小 -rn 从小到大
    uniq -c:过滤反复并在前面打印反复的行数
    awk '$1 > 100':假设$1參数(数字)大于100

    head -n 3:显示头3行


    9,tcpdump -i eth0 -tnn host 192.168.1.100 and -p tcp or udp or icmp    //嗅探全部 tcp,udp,icmp消息所不转换网络名称(加高速度)


    10,嗅探dhcpserver的ip(捕获非法DHCP Server):
    tcpdump -i eth0 -tnn port 67
    然后dhclient eth0进行dhcp请求,抓住dhcp server的ip地址
    或者看看直接登录它cat /var/messages | grep "DHCPACK from"
  • 相关阅读:
    Python--安装 pip 和 scapy
    windows设置代理
    麦子的《我奋斗了18年才和你坐在一起喝咖啡》
    Tar命令
    test
    markdown语法
    js apply call
    windows文件大小和占用空间为何不一样
    prolog笔记
    html文字超出显示省略号
  • 原文地址:https://www.cnblogs.com/bhlsheji/p/5032912.html
Copyright © 2020-2023  润新知