Python必备技能之分析异常流量

异常流量包链接

pan.baidu.com/s/1hJkfTYBoqYQ6oLnPL7A6dw
提取码:1jw6


这个包是我之前用wireshark进行抓取的,现在使用pycharm软件进行流量分析来获取里面的flag内容

第一步使用pycharm的包管理器pip进行第三方包安装

 

pip stall scapy

 

 

 

由于博主之前安装过了,pycharm提示已经安装

之前安装好的界面是

 

第二步:导出库

 

from scapy.all import *

if __name__ =='__main':
    pcap = rdpcap('') #rdcap就是从地方库导进来的

 

 

 

第三步:打印pcap

 

from scapy.all import *


if __name__ == '__main__':
    pcap = rdpcap('./aim.pcap')
    print(pcap)

 

 

 


 

得到有用信息(包含了包的种类)  

 

<aim.pcap: TCP:1088 UDP:87 ICMP:0 Other:5>

 

 

 

第四步:打印item字符节元素

 

from scapy.all import *


if __name__ == '__main__':
    pcap = rdpcap('./aim.pcap')
    for item in pcap:
        print(item)

 


 

 

第五步:查看类型(博主知道是包为了方便小白们观看特意准备)

from scapy.all import *


if __name__ == '__main__':
    pcap = rdpcap('./aim.pcap')
    for item in pcap:
        print(type(item))

 

 

 

第六步:转化为字符串进行打印

from scapy.all import *


if __name__ == '__main__':
    pcap = rdpcap('./aim.pcap')
    for item in pcap:
        print(repr(item))

 


 

第七步:先打印一个包试一试

from scapy.all import *


if __name__ == '__main__':
    pcap = rdpcap('./aim.pcap')
    for item in pcap:
        print(repr(item.show()))
        break

 

 



第八步:获取TCP的地段

from scapy.all import *

if __name__ == '__main__':
    pcap = rdpcap('./aim.pcap')
    for item in pcap:
        if ('TCP' in item) and (item['TCP'].fields['dport'] ==80):
            print((repr(item)))

 

 



第九步:访问TCP下的’192.168.0.123‘

from scapy.all import *

if __name__ == '__main__':
    pcap = rdpcap('./aim.pcap')
    for item in pcap:
        if ('TCP' in item) and (item['TCP'].fields['dport'] ==80) and(item['IP'].fields['dst'] == '192.168.0.123'):
            print((repr(item)))

 



最后一步:打印响应,收集信息

图为收集到的信息“ - ”




flag-{YKLTGULRGB}



























 

posted @ 2021-02-17 16:40  原来是甘文川同学  阅读(749)  评论(0)    收藏  举报