CyD Software Labs > Блог

CyD Software Labs Блог

Поиск поддоменов

Сегодня возникла необходимость определить все домены третьего уровня (subdomain или поддомены), которые есть у домена. Поиск поддоменов оказался достаточно интересной задачей и хорошей готовой программы не удалось найти. Готовые решения оказались не универсальны или стоили слишком дорого. Поиск поддоменов решается с помощью DNS запросов. Далеко не все DNS сервера позволяют получить эту информацию, поэтому задача оказалась достаточно интересной.

В данный момент я работаю над новым модулем для программы Network Utilities Сеть и безопасность, который будет использовать различные методы определения поддоменов. Модуль сразу создается универсальным и в финальной версии с его помощью пользователи программы смогут получить подробную информацию по доменами и поддоменам.

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

Для большей универсальности, программа сможет опрашивать не только установленный вами по умолчанию DNS сервер в настройках сетевых интерфейсах, но и любой другой сервер, который вы пожелаете. Помимо этого, программа самостоятельно будет искать в интернете DNS сервер, который сможет дать по интересующему домену максимально полезную и максимально полную информацию. Эта функция наиболее эффективна при поиске именно поддоменов.

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

[Прямая ссылка на этот пост: Поиск поддоменов]


Стоимость мониторинга сети

Мониторинг сети – важнейшая задача каждого сетевого администратора. Администраторы должны отвечать на каждую ошибку и сбой в сети как можно быстрее. Если у вас есть сервер с высокой загрузкой и очень важный для вашего бизнеса, то каждая минута простоя может стоить тысяч и даже миллионов долларов. Потери идут не только в финансовом выражении, но и в имидже. Пользователи не очень любят видеть ошибки доступа и проблемы соединения. Ваши продажи могут упасть без явных причин на это.

Стоимость мониторинга сети очень низкая, а потери от не своевренногого реагирования могут оказаться слишком высокими. Программа Careful Observer - Монитор сети позволяет вам отслеживать состояние сети и доступность хостов в ней. Сетевой администратор будет своевременно оповещен о том, что какой-то сервер или сервис недоступен.

Стоимость программы всего 450 рублей. Это достаточно низкая цена за возможности программы. За каждую минуту простоя по причине отсутствия информации о состоянии сети вы можете потерять во много раз больше. Подумайте, сколько может стоить простой?

[Прямая ссылка на этот пост: Стоимость мониторинга сети]


Монитор ресурсов сети CyD Careful Observer 2010

Вчера вечером залил новую версию программы мониторинга CyD Careful Observer. Версия, которую я залил, готова уже более недели и я просто долго не мог решить, как ее нумеровать. Дело в том, что я стал именовать программы по годам выпуска, а после выпуска основной версии выпускаю обновления, которые получают название Service Pack. Так в этом году вышли CyD Careful Observer SP1 и Network Utilities Сеть и безопасность.

Но новая версия программы, которую мы выложили вчера – это не просто обновление, это серьезное изменение. Я практически переписал движок мониторинга с нуля. То, что я переписал движок не видно пользователю, но код стал более гибким и более масштабируемым. Благодаря этому пользователь увидит нововведения, которые будут ему полезны, а это:

  • Новые объекты для мониторинга.
    • Программа может отслеживать состояние соединения с базой данных. Эта функция будет полезна тем администраторам, в сети которых находятся базы данных. Тут нужно не просто проверять доступность хоста или порта, но и желательно иметь возможность проверить доступность соединения. Для теста доступности сервера БД программа использует ADO.NET и его строку подключения. Это делает настройку теста очень простой.
    • Отслеживание доступности WEB страницы. Этот тест будет полезен уже не только администраторам, но и просто владельцам WEB сайтов. Программа мониторинга сможет отслеживать доступность сервиса и информировать вас в случае недоступности определенного URL
  • Вы можете назначать одному хосту сразу несколько тестеров. Раньше в свойствах хоста был только один тестер, но ведь на одном сервере может работать несколько сервисов и ради их тестирования нет смысла создавать несколько хостов на карте в программе. Теперь эта проблема решена. Вы можете создать один объект хоста и в нем создать несколько тестеров, которые будут мониторить разные порты, соединение с базой данных и пинговать хост.
  • Любые изменения в состоянии объектов сохраняются в локальной базе данных. В программу встроен пока простой модуль работы с данными, но он будет расширяться. Я планирую добавить в программу широкие возможности по поиску и широкие возможности по созданию отчетности. Для того, чтобы работать с локальной базой данных журнала мониторинга, в главном окне программы перейдите на закладку Log.
Работа с локальным журналом мониторинга

Возможность создавать сразу несколько тестеров для одного хоста – очень важная особенность. Например, создавая тестер портов можно тут же создавать тестер эхо запросов Ping. В случае сбоя администратор сразу будет видеть – если недоступны оба теста, то виновато соединение с сервером, ведь даже эхо запрос не проходит. Если тест с эхо запросом прошел, а порт недоступен, то виноват сервис.

Такое большое количество серьезных изменений поставило меня в тупик – как нумеровать новую версию программы? Еще только 2009-й год, но писать SP2 или SP3 неправильно, ведь это не просто обновление программы, это серьезное улучшение и полноценно новая версия. Ставить номер 2010 вроде тоже рано. Можно подождать осени, когда будет корректно ставить версию 2010, а в это время продолжать улучшать продукт, но нынешние изменения настолько важны, что не терпится поделиться ими с нашими клиентами, то есть с вами - пользователями.

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

То, что изменилась версия, не значит, что старые регистрации сгорели и нужно покупать продукт заново. Срок регистрации наших продуктов составляет два года, а значит, все кто купил программу позднее мая 2007-го года, получат программу мониторинга версии 2010 абсолютно бесплатно. Те, кто приобретет программу сейчас, будут получать бесплатные обновления в течение последующих двух лет.

[Прямая ссылка на этот пост: Монитор ресурсов сети CyD Careful Observer 2010]


Автоматизация поиска уязвимостей на WEB сайте

Автоматизация поиска уязвимостей достаточно сложная задача, особенно, если пытаться создать универсальный метод поиска уязвимостей, потому что необходимо научить компьютер хакерству, и написать программу так, чтобы она программно взламывала сайт. Компьютер - не человек и ему очень сложно анализировать не структурированные данные, а WEB страницы можно считать не структурированными. Да, есть стандарты, которым должны подчиняться разработчики при создании WEB страниц, но как много программистов придерживаются этим стандартам? Существует множество технологий создания сайтов и WEB мастера и программисты могут использовать любые инструменты. Чтобы анализировать результат для поиска уязвимостей в WEB сценариях нужны широкие знания и опыт.

Что предлагают в интернете чаще всего для поиска уязвимостей? Большинство алгоритмов сводиться к простому поиску сигнатур на WEB странице. В данном случае, сигнатурами являются сообщения о некорректных параметрах и ошибки обращения к базе данных. А что если программист отключил отображение ошибок? Хороший программист обязан это делать и если сайт создавал профессионал, то я вас уверяю, он отключил все сообщения об ошибках и поиск уязвимостей на таком WEB сайте по сигнатурам становиться пустой тратой трафика. Алгоритм и программа не найдет ни единой уязвимости.

А что если на сайте просто есть текст «ошибка доступа», а статья на странице просто описывает работу с базой данных? Автоматический анализатор поиска по сигнатурам выдаст предупреждение там, где уязвимости нет!!! Слишком большое количество различных сообщений об ошибках, которые могут стать сигнатурами приведет к большому количеству ложных срабатываний, а отсутствие возможности найти сигнатуру при выключеных сообщениях об ошибках, сделают алгоритм почти бесполезным. Поиск уязвимостей WEB сайтов - это не антивирусная программа и тут нельзя использовать те же методы.

Что же тогда делать? Как создать автоматический поиск уязвимостей WEB сайта, который будет находить даже скрытые ошибки? Алгоритмы поиска таких ошибок есть и они достаточно просты и эффективны, но для их написания уже не достаточно банального поиска по сигнатурам. Тут уже приходиться создавать программный комплекс, обладающий задатками искусственного интеллекта. Этот метод более сложный в реализации, но дает более точные результаты и находит ошибки там, где сообщения об ошибках отключены программистом.

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

Да, и тут тоже возможны ложные срабатывания, особенно там, где WEB страницы подвержены сильной мутацией. Да, и тут тоже не всегда возможно найти ошибку, даже если она есть, и опять же главным врагом выступает мутация страницы. Но мы верим и наши тесты доказали, что такой наш новый алгоритм, который пытается программно взломать сайт выгоднее и точнее поиска по сигнатурам.CyD Network Utilities 2008 искала уязвимости по сигнатурам и не смотря на то, что результат был хорошим, он пропускал много ошибок незамеченными. Новая версия CyD Network Utilities 2008 (Сетевые утилиты) использует аналитический анализатор. Он тратит больше трафика и работает дольше, но позволяет найти скрытые уязвимости. А одна пропущенная уязвимость может стоить WEB сайту своим существованием. Если хакер найдет уязвимость и она окажется серьезной, то сайт может быть уничтожен.

Программный взлом сайта сложнее в реализации и требует больше времени на анализ уязвимостей и больше трафика, но зато дает более точный результат.

[Прямая ссылка на этот пост: Автоматизация поиска уязвимостей на WEB сайте]


CyD Network Utilities 2009 Сетевые утилиты

Сейчас мы работаем над новой версией утилит для администраторов CyD Network Utilities – Сетевые утилиты 2009. Программа полностью переписывается на платформу .NET и новые минимальные требования для программы: Microsoft .NET 2.0. Некоторые модули предыдущей версии программы будут удалены. Среди удаляемых модулей окажутся редактор реестра и менеджер пользователей.

Наиболее интересное и значимое изменение мы связываем с автоматическим анализатором WEB серверов на распространенные ошибки уязвимости WEB сайтов. Новый модуль поиска уязвимостей полностью переписан и в нем используется новый алгоритм тестирования, который позволяет находить даже скрытые ошибки SQL injection. Новый модуль генерирует больше WEB трафика, чтобы сделать тест безопасности более точным, особенно поиск ошибок SQL инъекции (SQL injection). Программа пока еще может отображать ошибочные срабатывания, но зато она находит больше ошибок и находит даже такие ошибки, которые не могла найти предыдущая версия сетевых утилит и теста безопасности WEB сайтов. Алгоритм работы модуля прост, но достаточно эффективен, он пытается взломать WEB сайт самостоятельно и анализирует результат. Если программа видит признаки возможного взлома, то она отображает сообщение, предупреждающее о возможной уязвимости.

Сетевые утилиты для системных администраторов

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

[Прямая ссылка на этот пост: CyD Network Utilities 2009 Сетевые утилиты]


Фокусируемся на CyD Careful Observer и CyD Network Utilities

Сегодня мы приняли решение закрыть некоторые продукты, которые не пользовались популярностью среди наших пользователей. Пользователи больше не нуждаются в программах создания меню для WEB сайтов на основе JavaScript, потому что есть CSS. Пользователям не нужны программы работы с GIF анимацией. Для создания графики для WEB они используют PNG или JPEG формат, а для создания анимации используют Flesh или Silverlight.

Мы закрыли продукты, чтобы сфокусироваться на более важный разработках для наших пользователей: CyD Careful Observer и CyD Network Utilities. Высвободившееся время мы сможем потратить на улучшение этих продуктов и предоставление более качественного сервиса. Возможно, мы предложим нашим пользователям новые и современные продукты, которые будут нужны им уже сейчас, но на данный момент я еще не принял решение, что это будет и когда.

[Прямая ссылка на этот пост: Фокусируемся на CyD Careful Observer и CyD Network Utilities]


История рождения программы мониторинга сети

Как и почему рождаются идеи программ? Почему компании или отдельные программисты решают создать тот или иной продукт? Если основной причиной является прибыль, то на мой взгляд, такой проект не всегда может стать популярным и востребованным пользователем. Но если разработчик увидел реальную надобность в программе и сам увидел и почувствовал необходимость в ней, то такой проект может найти своих сторонников и поклонников намного быстрее.

Впервые я задумался о программе мониторинга сети и удаленных компьютеров / серверов в 2003-м году, когда работал программистом в производственной компании. Я писал программы снятия параметров с производственного оборудования и устанавливал их на сервера, которые стояли на производстве. Обслуживанием серверов приходилось заниматься мне, а так как производство распределено по нескольким корпусам, то для наблюдения за состоянием компьютеров нужна была какая-то простая и легкая программа.

Первая версия CyD Careful Observer (монитор сети) родилась примерно в 2004-м году, когда я уже сменил работу и работал системным администратором в небольшой торговой организации. В этой компании мне нужно было отслеживать состояние серверов и их доступность пользователям. Именно тогда я написал монитор сети.

Первая реализация была написана на Delphi и появилась на сайте, как отдельный продукт. Впоследствии программа была добавлена в набор сетевых утилит CyD Network Utilities для того, чтобы пакет предоставлял администраторам более полный набор инструментов, мониторинга сети.

Летом 2008-го года, я принял решение перенести программу мониторинга Careful Observer на платформу .NET, поэтому он снова стал самостоятельным продуктом. С этого момента, у Careful Observer появился новый, более красивый и удобный визуальный интерфейс и началась новая история в жизни программы. Надеюсь, что эта история будет долга и счастливая.

CyD Careful Observer (Сетевой монитор) позволяет вам отслеживать состояние хостов (компьютеров и/или серверов) в вашей сети или в сети Интернет.

В разработке использовались собственные уникальные библиотеки и код, а так же Heapar Essential Library .NET

[Прямая ссылка на этот пост: История рождения программы мониторинга сети]