среда, 8 апреля 2009 г.

IceScan 0.0.7rc1

Выпустил (и двух лет не прошло :) ) очередную версию моего сетевого сканера портов IceScan 0.0.7rc1. Версия 0.1 все ближе и ближе. IceScan, это наверное попытка повторить функциональность nmap'а с некоторыми фишками, которых в nmap'е возможно никогда не будет.

Основные "фичи" IceScan'а:

  • Активные методы сканирования и обнаружения хостов: TCP SYN/ACK/connect()/FIN и др., UDP, IP, ARP, ICMP.
  • Пассивное сканирование и OS fingerprinting.
  • Параллельный DNS-резольвер, который, в отличие от nmap'а может резолвить не только обратные, но и прямые адреса.
  • Несколько форматов вывода результатов, в т.ч. и в виде tcpdump-файлов.
  • Множество опций для настройки сканирования, например, таких как установка TTL, опций TCP и UDP и др.
  • Возможность сканировать через удаленный HTTP-прокси сервер.
  • Работает под Windows, Linux и OpenBSD.

Конечно же ранняя альфа, она и есть альфа и сейчас IceScan помимо наверняка присутствующих в нем багов обладает существенным недостатком -- он в три-четыре раза медленнее чем nmap. Но я работаю над исправлением этой особенности ;). Любая помощь проекта весьма приветствуется, так как с контрибуторами пока проблемы ;)

Скачать можно отсюда: http://sf.net/projects/icescan

P.S.: Ресечер с ComputerDefence обнаружил любопытную особенность в Apache : иструкция AddType в конфиге включает тип файлов не только для файлов с указанным расширением, но и для всех файлов содержащих эту строку. (например, не только phpinfo.php, но и phpinfo.php.bak будут определяться как application/x-httpd-php при указании AddType application/x-httpd-php .php). В статье говорится, что 2.2.x не обладают этой "фичей", а 1.3.x -- обладают. Просмотрев свои сервера, обнаружил, что версии 2.0.x и 1.3.x действительно обладают этой особенностью (кроме Apache/1.3.29(OpenBSD)), а версии 2.2.x ей не подвержены. Посмотрим, что будет дальше. 

четверг, 2 апреля 2009 г.

Tiny Core Linux

Наткнулся я тут на занимательный LiveCD/дистрибутив Tiny Core Linux. Чем он так замечателен? Во-первых образ LiveCD занимает всего 10Mb. По сути, все содержимое диска состоит из ядра, syslinux'а и initrd. В initrd и содержится вся система. По умолчанию, там есть Tiny X, jwm в качестве менеджера окон, Wbar, SSH-сервер и клиент, несколько сетевых утилит и программ для работы с диском. Во-вторых он очень нетребователен -- 32 мегабайт и 100MHz процессора будет вполне достаточно для работы. В-третьих, набор программ -- это еще не все. С сайта дистрибутива можно загрузить пакеты с дополнительными программами, которые доступны в виде TCE и TCZ расширений, которые могут быть "присоединены" к работающей системе "на лету" с различных носителей или по сети. TCE-пакеты распаковываются в память, а TCZ-пакеты при подключении монтируются в виде loop-устройств. В четвертых, расширения и содержимое каталога пользователя могут быть сохранены в виде локального файла и на разделе (в т.ч. и шифрованном файле/разделе). Ну и в пятых, TCL может быть установлена на локальный диск. :)

Для TCL уже доступно множество программ в виде TCE или TCZ расширений. Полный список можно увидеть тут(TCE) и тут(TCZ). Там довольно много приложений, даже OpenOffice есть. Кроме того, там есть замечательный пакет compiletc, который позволяет собирать собственные пакеты для TCL. На wiki дистрибутива есть подробная статья об том, как правильно собрать расширение.

К сожалению, в пакетах почему-то не оказалось nmap'а и некоторых других security-утилит. Впрочем, потратив порядка трех часов я исправил это упущение, собрав несколько пакетов: AirCrack-NG, ChNTPw, HPing2, httptunnel, iodine, nmap, socat, stress, tcptunnel, udptunnel. Скачать TCE и TCZ расширения для них можно отсюда: http://tinycorelinux.timeold.ru/.

Кроме того, TCL может быть установлен на флэшку, в том числе, если использовать syslinux, и на флэшку с FAT'ом. Если у вас в /mnt/cdrom смонтирован образ диска или сам диск, а в /mnt/usb (устройство /dev/sdb1) -- флэшка, то делается это так  (пакет syslinux должен быть заранее установлен):

cp -r /mnt/cdrom/boot /mnt/usb/
mv /mnt/usb/boot/isolinux /mnt/usb/boot/syslinux
mv /mnt/usb/boot/syslinux/isolinux.cfg /mnt/usb/boot/syslinux/syslinux.cfg
syslinux /dev/sdb1

P.S.: Поскольку  диск с BackTrack'ом или Knoppix'ом, я все время забываю носить с собой (особенно тогда, когда они вдруг становятся очень нужны), нашел для себя решение в виде немного модифицированного мною LiveCD Tiny Core Linux. Теперь он занимает 22Mb, а не 10, но обладает всеми теми же свойствами, кроме того, содержит все пакеты, которые мне бывают позарез необходимы, а именно:  915resolution, advcomp, cfdisk, chimera2, cpio, dosfstools-3, extlinux, hwinfo, jfsutils, lsof, menu-tool, mkisofs-tools, nfs-utils, partimage, pci-utils, rdesktop, resize2fs, vsftpd, wget, wpa-supplicant + пресловутые AirCrack-NG, ChNTPw, HPing2, httptunnel, iodine, nmap, socat, stress, tcptunnel, udptunnel. Скачать ISOшник можно отсюда(MD5). Для нормальной работы рекомендуется не менее 64Mb RAM.

P.S.S.: А еще, TCL это именно тот дистрибутив, который можно легко загрузить в каком-нибудь IP-KVM'е для восстановления рухнувшего сервера. ;)