Информационная безопасность



              

Распределенные атаки на распределенные системы - часть 7


Протокол ТСР гарантирует восстановление данных. Если какой-то пакет не получен, то протокол ТСР передает запрос на получение пропущенных данных. Пусть на PROXY-сервере установлено два соединения с абонентами сегмента а1 и а2, которые передают данные А1 и А2 соответственно на PROXY-сервер G(i). Естественно, что те данные, которые восстановлены первыми, будут первыми поставлены в очередь на передачу в глобальную сеть. Пусть агент в LG(i) хочет, чтобы последовательность данных в очереди на отправку была: А1 А2. Если пакеты, передающие А1, заканчиваются быстрее, чем пакеты, передающие А2 (агент наблюдает поток пакетов и может осуществлять их задержку, чтобы убедиться в том, что передача данных закончена), то агент не предпринимает никаких действий. Если пакеты, передающие А2, заканчиваются быстрее, чем пакеты, передающие А1, то агент на LG(i) задерживает или уничтожает один из пакетов (например, последний) из серии пакетов, передаваемых от а2. После этого он выжидает, когда закончится поток пакетов, передающих файл А1, и посылает последний пакет с данными А2. Тогда, если верно его предположение о том, что серия пакетов от а1 одному абоненту в другом сегменте содержала данные одного соединения А1, а аналогичная серия от а2 одному абоненту в другом сегменте содержала данные другого соединения А2, то указанная процедура поменяет естественный порядок данных в очереди на G(i) на требуемый порядок данных. Разумеется, такая же процедура перестановки на узле G(j) возможна и на потоке входящих данных с помощью агента на PC(j). Отметим, что указанная процедура носит вероятностный характер. Ясно, что вероятность правильной перестановки увеличивается для больших серий пакетов, передаваемых при отправке больших файлов.

Несмотря на возможность ошибки, можно построить язык скрытой передачи данных, использующий данный алгоритм перестановки данных в очереди. Пусть агент в LG(0) передает информацию агенту в РС(0) в глобальной сети. Тогда агент в LG(0) знает, какие данные идут на адрес получателя sj, j = 1, ..., m, серверов G(j).


Содержание  Назад  Вперед