|
Приветствую читателей. Сразу предупреждаю, что если вы будете применять информацию, полученную из этой статьи в целях,
противоречащих законам вашей страны, то всю ответственность несете вы. Простите, но я должен был это сказать :).
Итак, сейчас мы напишем на нашем любимом Перле сканер, который будет отображать, какие порты открыты на удаленном
компьютере. Давайте договоримся, что ip-адреса сканируемых компьютеров, тип протокола, начальный и конечный порты
для сканирования будут храниться в любом файле в виде:
ip-адрес :: протокол(0 для udp, 1 для tcp) :: начальный_порт :: конечный_порт,
например:
127.0.0.1::0::0::1024
Скрипт просканирует все компьютеры указанные в файле (информация об 1-м компьютере на 1 строчку). Еще нам потребуется
файл для отображения результатов сканирования (если он не существует, будет создан новый (пользователи Unix, не забудьте
позаботиться о правах)), в него будут занесены только удачные попытки. Также наш скрипт будет отображать, какой компьютер
он сканирует, все порты и информацию, открыт порт, или нет (если для вас это нежелательно, уберите участки кода, которые
за это отвечают). Скрипт будет запускаться из командной строки таким образом:
"название_скрипта файл_с_информацией_о_сканируемых_компьютерах файл_для_результатов".
Как же будет работать наш скрипт? Он будет устанавливать соединение с каждым компьютером из списка, на каждом порту,
если соединение будет установлено, то попытка будет считаться удачной. Но, как говорил один из компьютерных пионеров
(вроде бы Брайан Керриган, но не помню точно), что лучший способ изучить язык программирования - писать на нем программы,
чем мы собственно сейчас и займемся. Итак, поехали.
Все, мы написали сканер. Разумеется, он не идеален, это лишь скелет полноценного сканера, на основе которого вы можете
написать свои шедевры. Например, встроить возможность определения сервиса, висящего на порту. Именно определения, а не
вывода информации о том, что висит на этом порту по дефолту, так как хитрые администраторы часто ставят сервис на
нестандартный порт. Да много чего можно сделать. Ладно, пока. Твори, удачи тебе.
.:: Special for Open Team E-zine ::.
Источник:
Автор: 5p4x2knet a.k.a. Apocalyptic
|
|