Сетевое обнаружение | Трассировка | Сканер портов TCP и UDP
Эта программа перечисляет все доступные интерфейсы, присутствующие на локальном компьютере, и использует Scapy для идентификации всех онлайн-машин в локальной сети локального компьютера, которые доступны через каждый из невиртуальных интерфейсов локального компьютера. Для этого эта программа создает кадр Ethernet, инкапсулирующий пакет ARP. В качестве адреса назначения для кадра Ethernet установлен широковещательный адрес, а в пакете ARP указан адрес подсети локального хоста вместе с обозначением CIDR. Наконец, Scapy создает список пакетов ARP, которые транслируются на каждый IP-адрес в подсети, и печатает MAC-адреса и IP-адреса онлайн-машин, которые отправляют ответ обратно на локальный хост.
Эта программа трассировки принимает либо IP-адрес назначения, либо имя хоста от пользователя и определяет IP-адреса или возможные имена хостов всех промежуточных компьютеров между источником и местом назначения. Во-первых, этот инструмент определяет, ввел ли пользователь IP-адрес или имя хоста, и соответственно находит соответствующее имя хоста или IP-адрес. Затем он создает IP-дейтаграмму, инкапсулирующую пакет UDP со случайными портами назначения в диапазоне 33434–33464, а также случайными портами источника с большим количеством портов. IP-адрес назначения либо предоставляется пользователем напрямую, либо получается с использованием имени хоста, предоставленного пользователем через Scapy. Максимальное количество переходов установлено равным 20, а TTL увеличивается в соответствии с текущим числом переходов, чтобы можно было обнаружить все промежуточные машины на пути с расстоянием, меньшим или равным 20 переходам. Наконец, он отправляет и получает пакеты от одного перехода к другому и сообщает имя хоста и IP-адрес, присутствующие в ответном пакете. Если пакет не подтвержден в течение ожидаемого тайм-аута в 3 секунды, пакет отправляется еще раз. В противном случае печатается '*'. Программа останавливается, как только она получает сообщение ICMP Port Unreachable (тип 3) от цели, которое означает, что пакет достиг места назначения и порт назначения больше не открыт.
usage: ./networkdiscovery.py [-h] [--version]
Network Discovery
optional arguments:
-h, --help show this help message and exit
--version Show Program's Version Number and Exit
usage: ./traceroute.py [-h] [--version] [--target TARGET]
Traceroute
optional arguments:
-h, --help show this help message and exit
--version Show Program's Version Number and Exit
--target TARGET Hostname or IP
usage: ./portscanner.py [-h] [--version] [--target TARGET] [--port PORT] [--tcp | --udp] [--verbose]
Port Scanner
optional arguments:
-h, --help show this help message and exit
--version Show Program's Version Number and Exit
--target TARGET Hostname or IP to scan
--port PORT Port [X] or Port Range [X-Y] to scan
--tcp TCP port scan (mutually exclusive with --udp)
--udp UDP port scan (mutually exclusive with --tcp)
--verbose Verbose output (Print all ports, not just open ports)
Распространяется по лицензии MIT.