我的数据包嗅探器是不是应该捕获任何数据包?

问题描述 投票:1回答:1

此代码不应捕获任何数据包。我在mac os上。

我搜索了堆栈,没有任何代码可以用于Windows,Linux或python 2。

import socket
import time
import datetime
import os
host = "127.0.0.1"
s = socket.socket(socket.AF_INET, socket.SOCK_RAW, socket.IPPROTO_TCP)
s.bind((host, 0))
s.setsockopt(socket.IPPROTO_IP, socket.IP_HDRINCL, 1)
amount = 0
print('------------------------------------------------------------------------')
print('[*]TIME:'+str(datetime.datetime.fromtimestamp(time.time())))
print('------------------------------------------------------------------------')
print('[+]CAPTURING PACKETS')
print('------------------------------------------------------------------------')
print('')
while True:
    amount = amount + 1

    create = open(('PACKET '+str(amount)+'.txt'),'w+')
    create.write('')
    f = open(('PACKET '+str(amount)+'.txt'),'w')
    PACKET = s.recvfrom(65565)
    f.write(PACKET)
    print('--------------------------------------------------------------------')
    print('[*]TIME:'+str(datetime.datetime.fromtimestamp(time.time())))
    print('--------------------------------------------------------------------')
    print('[+]PACKET '+str(amount))
    print('--------------------------------------------------------------------')

    print('')
    f.close()
    create.close() 

我希望它能捕获数据包,但没有任何反应。

python-3.x macos packet-sniffers
1个回答
0
投票

我不熟悉套接字编码,但熟悉捕获数据包。

据我所知,你必须有一个可以打开监控模式的无线网卡。

是一种模式,允许您捕获甚至不捕获您的数据包。

作为一个简单的建议,尝试暂时运行不带文件的程序,

只需打印输出并检查你得到了什么,因为文件关闭,检查最新情况可能是个好主意。

© www.soinside.com 2019 - 2024. All rights reserved.