ХакерДом: SergeyBorisov/fingerprinting ...

Null Page | Каталог | Изменения | НовыеКомментарии | Пользователи | Регистрация | Вход:  Пароль:  

Fingerprinting – распознавание компьютерных систем и приложений

=======================
Определения


Распознавание системы – задача идентификации объекта или определения каких-либо его свойств по его взаимодействию с другими системами.


Образ, класс – классификационная группировка в системе классификации, объединяющая (выделяющая) определенную группу объектов по некоторому признаку.


Суть задачи распознавания – установить, обладают ли изучаемые объекты фиксированным конечным набором признаков, позволяющим отнести их к определенному классу.


Методика отнесения элемента к какому-либо образу называется решающим правилом. Еще одно важное понятие – метрика, способ определения расстояния между элементами универсального множества. Чем меньше это расстояние, тем более похожими являются объекты (ОС, сервисы, приложения) – то, что мы распознаем.


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


Целесообразно выделить следующие типы задач распознавания.
1. Задача распознавания – отнесение предъявленного объекта по его описанию к одному из заданных классов.
2. Задача автоматической классификации – разбиение множества объектов по их описаниям на систему непересекающихся классов.
3. Задача выбора информативного набора признаков (снижение размерности множества признаков) при распознавании.
4. Задача приведения исходных данных (полученных при взаимодействии с системой) к виду, удобному для распознавания.


Методы (алгоитмы) распознавания образов делятся на четыре основные категории:
• методы, основанные на теории решений;
• методы, основанные на ортогональные преобразования;
• структурные методы;
• методы, основанные на теории нейронных сетей


В данный момент, не так важно, какими методами будет решаться задача распознавания. Пока стоит вопрос – возможно ли распознавание вобще. И на первый план выходит решение 3 и 4-ой задачи.


Введем типы компьютерных систем, поддающиеся распознаванию:
1. Техническое средство
2. Операционная система, её конфигурация (количество видов ограничено, множество совпадений)
3. Сервисы операционной системы, их конфигурация (количество видов ограничено, большое количество совпадений)
4. Прикладные системы (реализуют некоторые бизнес-процессы), использующие набор сервисов.
5. Распределенная система приложений на нескольких ТС (количество видов не ограничено, малое количество совпадений)
6. Пользователи (интерфейс/процесс/приложение и его характеристики).


На данный момент решаются задачи 1–4 для следующих систем:


1.
1.1. Однозначная идентификация передатчика wi-fi. Известна гипотеза о возможности удаленного распознавания. Публичной информации о математической модели нет. Информации о реализации нет.
1.2. Однозначная идентификация системного таймера. Построена математическая модель. Проведены испытания c опубликованными результатами. ПО реализующее алгоритм публично не доступно.
1.3. Идентификация сетевой карты. Есть очевидная возможность распознавания по MAC-адресу. Есть гепотизы о возможности распознавания по другим характеристикам.
2. Идентификация семейства ОС, точной версии, сетевых настроек, установленных обновлений. Возможность распознавания точной версии ОС подтверждена. ПО реализующие алгоримты публично доступно. Стоит вопрос о перечне распознаваемой части конфигурации ОС.
3. Идентификация сервисов, протоколов взаимодействия, конфигурации сервисов. Возможность распознавания точной версии известных сервисов подтверждена. ПО реализующие алгоримты публично доступно. Стоит вопрос о перечне распознаваемой части конфигурации сервиса.
4. Идентификация приложений, их конфигурации, определение решаемых бизнес-задач. Определение составных элементов. Есть гипотеза о возможности разпознования. Публичной информации о математической модели нет. Информации о реализации нет.
6. Однозначная удаленная идентификация пользователя, по конфигурации web-браузера.


Тезисы по распознаванию:
1. Анализируя проходящие сетевые потоки можно распознать системы любой категории участвующие в сетевом взаимодействии.
2. Используя активное взаимодействие с системой можно распознать системы любой категории участвующие в сетевом взаимодействии.
3. Характеристики/конфигурация системы, которые влияют на внешнее взаимодействие, могут быть идентифицированы/определены.


Следствия:
1) Если уникальная характеристика системы влияет на внешнее взаимодействие, то система может быть однозначно идентифицирована удаленно.


Связанная ссылка:


http://www.hackerdom.ru/team/hall/ezine/wafprinting

=======================


Выкладываю в приложении свою древнюю статью нигде не опубликованную в полном обьеме и древнюю статью из журнала «Системый администратор». Просто ничего круче в инете ещё не видел – пусть будет.


Может быть в скором времении выложу свежие тезисы и статью.


 
Много файлов (2). [Показать файлы/форму]
Комментариев нет. [Показать комментарии/форму]