Неразрешенные ссылки IP () и TCP () при использовании Scapy - PullRequest
0 голосов
/ 30 августа 2018

Я скопировал коды из примера, чтобы узнать scapy. Но понял, что IDE показала ошибку с нерешенной ссылкой для IP () и TCP (). Кто-нибудь знает, как это исправить?

Вот коды:

#! /usr/bin/env python

from scapy.all import *
import logging

logging.getLogger("scapy.runtime").setLevel(logging.ERROR)

dst_ip = "10.0.0.1"
src_port = RandShort()
dst_port=80

tcp_connect_scan_resp = sr1(IP(dst=dst_ip)/TCP(sport=src_port,dport=dst_port,flags="S"), timeout=10)
if(str(type(tcp_connect_scan_resp))==""):
    print("Closed")
elif(tcp_connect_scan_resp.haslayer(TCP)):
    if(tcp_connect_scan_resp.getlayer(TCP).flags == 0x12):
        send_rst =sr(IP(dst=dst_ip)/TCP(sport=src_port,dport=dst_port,flags="AR"),timeout=10)
        print("Open")
elif (tcp_connect_scan_resp.getlayer(TCP).flags ==0x14):
    print("Closed")

Я использую Pycharm IDE. Python2.7 и Scapy 2.4.0. Я искал на stackoverflow и нашел, что кто-то задавал тот же вопрос раньше, но без ответа ..... Вот ошибка после того, как я попытался запустить коды:

/Users/chenneyhuang/PycharmProjects/Scanner/venv/bin/python /Users/chenneyhuang/PycharmProjects/Scanner/TCP.py
Traceback (most recent call last):
  File "/Users/chenneyhuang/PycharmProjects/Scanner/TCP.py", line 12, in <module>
    tcp_connect_scan_resp = sr1(IP(dst=dst_ip)/TCP(sport=src_port,dport=dst_port,flags="S"), timeout=10)
  File "/Users/chenneyhuang/PycharmProjects/Scanner/venv/lib/python2.7/site-packages/scapy/sendrecv.py", line 393, in sr1
    s=conf.L3socket(promisc=promisc, filter=filter, nofilter=nofilter, iface=iface)
  File "/Users/chenneyhuang/PycharmProjects/Scanner/venv/lib/python2.7/site-packages/scapy/arch/bpf/supersocket.py", line 58, in __init__
    (self.ins, self.dev_bpf) = get_dev_bpf()
  File "/Users/chenneyhuang/PycharmProjects/Scanner/venv/lib/python2.7/site-packages/scapy/arch/bpf/core.py", line 98, in get_dev_bpf
    raise Scapy_Exception("No /dev/bpf handle is available !")
scapy.error.Scapy_Exception: No /dev/bpf handle is available !

Process finished with exit code 1

1 Ответ

0 голосов
/ 01 сентября 2018

Я ответил на тот же вопрос Unsolved Reference на прошлой неделе здесь: Ошибка импорта vscode: из scapy.all IP импорта

Короче, не беспокойтесь об этой ошибке, это ограничение Pylint (или аналогичного). Я предлагаю обходной путь в другом вопросе, если вы хотите удалить ошибку / предупреждение.

При ошибке No /dev/bpf handle is available вы пробовали запустить скрипт от имени пользователя root? Я вижу, что предложено в качестве решения по этому вопросу GitHub: https://github.com/secdev/scapy/issues/1343

...