Supersoup_0
Member
- 16.05.2021
- 12
- 0
B правой части каждого сообщения есть стрелки ⇧ и ⇩. Не стесняйтесь оценивать ответы. Чтобы автору вопроса закрыть свой тикет, надо выбрать лучший ответ. Просто нажмите значок ✔ в правой части сообщения.
Познакомьтесь с пентестом веб-приложений на практике в нашем новом бесплатном курсе
from threading import *
from concurrent.futures import ThreadPoolExecutor
from subprocess import check_call
Мне б по конкретней, с многопоточностью всё понятно, я пытаюсь использовать библиотеку socket но по классическому гайду, даже фильтрующиеся порты(этот термин я очень долго пытался изучить пользуясь страницей nmap), программа выводит как открытые, когда я пытался воспользоваться python-nmap меня не устроила скорость, ведь обычное сканирование делает чуть больше чем мне нужно, из-за чего сильно падает по скорости.Scapy я не очень понимаю как приспособить под это, мне казалось он больше для анализа пакетовПитон не может пожаловаться на недостаток модулей для исследования состояния портов.
Вот названия только трёх модулей:
- Scapy
- Socket
- nmap-python
На различных сайтах, где тусуются прАгрАмЫсты (stackoverflow.com, pastebin.com, github.com) ты сможешь найти огромное количество примеров кода и информации о том, как пользоваться этими модулями.
Кроме знания и умения применять эти модули тебе потребуется знание других модулей, например для многопоточного сканироания потрубуются:
from threading import *
from concurrent.futures import ThreadPoolExecutor
Но это - не всё.
Одним из привлекательных решений является применение модуля subprocess:
from subprocess import check_call
При помощи этого модуля ты попросту сможешь подключить в свой скрипт установленную в систему программу nmap (не зависящую от модулей питона ) и пользоваться результами сканирования nmap, экспортировав в свой python-скрипт.
Да на сайте есть определение фильтрованного порта. И я даже по запросу "port scanner scapy" нашёл очень полную статью об этом, правда строчки кода из неё как-то плохо работаютНужно понимать, что такое фильтрованные порты. Это те, что не отвечают на ICMP-запросы, по разным причинам. Можно попробовать отправлять такие эхо-запросы на конкретный хост по разным портам(например, командой ping). Из Python это легко реализуется. Если ответа не приходит, значит порт фильтрованный.
Обучение наступательной кибербезопасности в игровой форме. Начать игру!