Объект 'L3PacketSocket' не имеет атрибута 'ins' при использовании команды send - PullRequest
1 голос
/ 27 апреля 2019

Я пытаюсь отправить пакет по протоколу UDP. Я использую Python 3 в Ubuntu и использую scapy. Тем не менее, я получаю следующее сообщение об ошибке: «AttributeError: объект« L2Socket »не имеет атрибута« ins »». Полное сообщение об ошибке можно увидеть ниже.

Я прочитал здесь https://github.com/secdev/scapy/issues/1868, что это может быть проблемой из-за невозможности запуска от имени пользователя root, поскольку Ubuntu запускается через виртуальную машину. Любая помощь приветствуется!

Это строки кода, о которых идет речь:

from scapy.all import *
packet = IP(dst="127.0.0.1")/UDP(dport=123)/Raw(load="123")
send(packet)

Вот сообщение об ошибке

1 Ответ

0 голосов
/ 27 апреля 2019

Вам нужно запустить Scapy от имени root (sudo).

Внимательно посмотрите на ошибку: сначала написано «Операция не разрешена».Цитируемая вами ошибка является следствием первой ошибки.

Уже несколько раз сообщалось об этом, и вторая ошибка была исправлена ​​на главном сервере: https://github.com/secdev/scapy/issues/1942

Scapy не будетвозможность запустить открытый сокет Raw без рута.Это ограничение Linux.

...