О применении данного документа в отношении федерального государственного контроля в области связи см. Распоряжение Правительства РФ от 15.12.2020 N 3340-р.

Приложение N 2

к Правилам применения

оборудования систем коммутации,

включая программное обеспечение,

обеспечивающего выполнение

установленных действий при проведении

оперативно-розыскных мероприятий.

Часть III. Правила применения

оборудования коммутации

и маршрутизации пакетов

информации сетей передачи данных,

включая программное обеспечение,

обеспечивающего выполнение

установленных действий при проведении

оперативно-розыскных мероприятий

ПРОТОКОЛ ВЗАИМОДЕЙСТВИЯ ТС ОРМ С ПУ

Список изменяющих документов

(в ред. Приказа Минкомсвязи России от 15.04.2019 N 139)

(см. текст в предыдущей редакции)

1. Протокол взаимодействия (обмена информацией) ТС ОРМ с ПУ обеспечивает управление ТС ОРМ со стороны ПУ, передачу отобранных данных от ТС ОРМ к ПУ и состоит из двух протоколов:

протокола управления;

протокола передачи данных.

На логическом уровне соединение ПУ и ТС ОРМ реализуется в виде TCP-сессии, при этом в качестве транспортного и сетевого протоколов используются протоколы TCP и IP. Внутри сетевого соединения должна предусматриваться возможность создания виртуальной сети VPN (Virtual Private Network) по протоколу туннелирования второго уровня L2TP (IPSec VPN) для туннелирования всего рабочего TCP/IP трафика между техническими средствами ОРМ.

Для управления ТС ОРМ и передачи информации на ПУ используются отдельные TCP-соединения, которые называются каналом управления и каналом передачи данных. В качестве номеров портов должны применяться номера, находящиеся вне диапазона номеров портов стандартных служб.

Подключение нескольких ПУ на один порт технического средства ОРМ не допускается.

Номер порта, используемого ПУ, задается при конфигурировании ТС ОРМ. Конфигурирование и настройка ТС ОРМ осуществляется с головного ПУ, подключенного по каналу N 0 (канал, определяемый портами 16117 и 16118).

2. Протокол управления.

2.1. Структура сообщений протокола управления.

2.1.1. Общая структура сообщений.

Сообщения протокола управления включают в себя:

команды, передаваемые с ПУ на технические средства ОРМ;

ответы, передаваемые с ТС ОРМ на ПУ и содержащие результаты выполнения команд ПУ;

извещения, передаваемые с ТС ОРМ на ПУ и содержащие данные о произошедших в ТС ОРМ событиях (обнаружение нарушений в функционировании ТС ОРМ, попытки несанкционированного доступа к техническим средствам ОРМ, данные об открытии (закрытии) сеанса связи пользователем, а также данные о параметрах отбора и данные о параметрах серверов аутентификации);

подтверждения о получении извещения от ТС ОРМ, передаваемые с ПУ на технические средства ОРМ.

Структура сообщений протокола управления приведена на рисунке 1.

Cod

Ident

Length

Data

Iteml

...

ItemM

Рисунок 1

Поля Cod, Ident, Length являются служебными.

Cod - поле кода сообщения. Целочисленная переменная. Размер поля равен 1 байту. Определяет формат и назначение сообщения.

Ident - поле идентификатора сообщения. Целочисленная переменная. Размер поля равен 2 байтам. Содержит числовое значение, используемое для установления соответствия "команда - ответ", "извещение - подтверждение". Начальное значение идентификатора в последовательности команд (извещений) устанавливается равным 1 и с каждой новой командой (извещением) увеличивается на 1. Следующему за максимальным значением идентификатору присваивается значение, равное 0.

Length - поле длины сообщения. Целочисленная переменная. Размер поля равен 4 байтам. Содержит длину всех полей сообщения (Cod, Ident, Length, Data) в байтах. Если длина сообщения превышает максимальную длину, то это сообщение воспринимается как содержащее ошибку и обрабатывается в соответствии с подпунктом 4.6 настоящего приложения.

Data - поле, содержащее значения параметров сообщения. Размер поля в байтах равен значению поля Length минус 7. Наличие и формат поля определяется значением поля Cod.

2.1.2. Структура поля данных (Data) и элементов данных (Item) сообщений.

Поле Data состоит из одного или нескольких элементов данных Item. Структура поля приведена на рисунке 2.

Iteml

...

ItemM

Рисунок 2

Элементы данных Iteml, ..., ItemM содержат значения параметров команд, ответов, извещений и подтверждений.

Элементы данных могут иметь структуру одного из следующих видов:

1) Структура элементов данных Iteml, ..., ItemM с полем Value фиксированной длины приведена на рисунке 3.

CodItem

Value

1 байт

Рисунок 3

2) Структура элементов данных Iteml, ..., ItemM с полем Value переменной длины приведена на рисунке 4.

CodItem

LengthItem

Value

1 байт

4 байта

Рисунок 4

Элементы данных Iteml, ..., ItemM с полем Value переменной длины имеют следующий формат и содержание.

CodItem - поле, содержащее код элемента данных. Целочисленная переменная. Размер поля равен 1 байту.

LengthItem - поле, содержащее длину всех полей элемента данных, включая длину полей CodItem и LengthItem. Целочисленная переменная. Размер поля равен 4 байтам. Наличие поля LengthItem определяется значением поля CodItem.

Value - поле, содержащее значение параметров сообщения. Содержимое поля определяется значением поля CodItem. Размер поля Value для структуры с фиксированной длиной определяется значением поля CodItem.

2.2. Команды протокола управления.

2.2.1. Команда идентификации.

Команда идентификации передается с ПУ на технические средства ОРМ первой. Структура команды приведена на рисунке 5.

CodCom

IdentCom

LengthCom

Data

ItemLogPU

PVersionItem

Рисунок 5

CodCom - поле кода команды. Содержимое поля равно 1. Размер поля равен 1 байту.

IdentCom - поле идентификатора команды. Начальное значение идентификатора в последовательности команд устанавливается равным 1 и с каждой новой командой увеличивается на 1. Размер поля равен 2 байтам.

LengthCom - поле длины команды. Размер поля равен 4 байтам.

Структура элемента данных ItemLogPU, идентифицирующего ПУ, приведена на рисунке 6.

CodItem

LengthItem

Value

Рисунок 6

CodItem - поле кода элемента данных. Содержит сведения о текущей версии программного обеспечения ПУ или ИС БД ОРМ. Размер поля равен 1 байту.

LengthItem - поле длины элемента данных. Размер поля равен 4 байтам.

Value - поле значения элемента данных. Содержит идентификатор ПУ или ИС БД ОРМ, подключаемого к техническим средствам ОРМ, в виде текстовой строки в ASCII кодах. Размер поля переменный.

PVersionItem - опциональный элемент данных. Размер поля равен 3 байтам. Содержит число, определяющее версию протокола обмена данными, поддерживаемого ПУ или ИС БД ОРМ.

Структура элемента PVersionItem приведена на рисунке 7.

CodItem

Value

Рисунок 7

CodItem - поле кода элемента данных. Значение равно 2. Размер поля равен 1 байту.

Value - целочисленная переменная. Размер поля равен 2 байтам. Содержит число, определяющее версию протокола обмена данными, поддерживаемого ПУ или ИС БД ОРМ. Версия текущего протокола определяется как "0".

2.2.2. Команда постановки на контроль и изменения вида контроля.

Команда постановки на контроль и изменения вида контроля предназначена для постановки на контроль по параметру отбора и для изменения вида контроля. Постановка на контроль выполняется сразу после получения этой команды. Постановка на контроль одной командой более одного объекта контроля не допускается. Для изменения вида контроля отправляется команда с существующими UCI и Ncontrol объекта. Допускается изменение значения следующих полей: CodItem, IdCon, Filter, Find.

В команде может присутствовать несколько элементов данных, соответствующих одному объекту контроля (имеющих одинаковые значения полей UCI и Ncontrol). В этом случае элементы описания данных формируют составной параметр отбора, при этом правила отбора, определенные в элементах данных, объединяются по принципу логического "И".

Структура команды постановки на контроль и изменения вида контроля приведена на рисунке 8.

CodCom

IdentCom

LengthCom

Data

Iteml

...

ItemM

Рисунок 8

CodCom - поле кода команды. Содержимое поля равно 2. Размер поля равен 1 байту.

IdentCom - поле идентификатора команды. Содержимое поля равно значению идентификатора предыдущей команды, увеличенному на 1. Размер поля равен 2 байтам.

LengthCom - поле длины команды. Размер поля равен 4 байтам.

Data - поле, содержащее элементы данных команды, состоит из подполей Iteml, ..., ItemM.

Iteml, ..., ItemM - элементы данных команды постановки на контроль и изменения вида контроля.

Для постановки пользователя на контроль используется несколько элементов данных. Первым в команде постановки на контроль и изменения вида контроля должен быть элемент данных со значением кода элемента данных CodItem, равным 0, устанавливающий идентификационный номер контролируемого абонента (пользователя) и вид контроля. Остальные элементы, относящиеся к объекту контроля, следуют за ним.

Структура элементов данных Iteml, ..., ItemM команды постановки на контроль и изменения вида контроля приведена на рисунке 9.

Codltem

LengthItem

Value

UCI

Ncontrol

IdCon

Filter

Find

Рисунок 9

CodItem - поле кода элемента данных команды постановки на контроль и изменения вида контроля (код параметра отбора). Размер поля равен 1 байту.

Содержимое поля CodItem:

0 - установка идентификационного номера контролируемого абонента (пользователя) и вида его контроля;

1 - контроль по имени учетной записи пользователя - login (идентификатор объекта);

2 - контроль по телефонному номеру;

3 - контроль по адресу объекта в соответствии с IPv4 (четырехбайтовый адрес, записывается и передается по каналу в порядке, определенном спецификацией RFC791);

4 - контроль по адресу электронной почты (e-mail, в том числе Web-mail);

6 - международный идентификатор абонента сети подвижной связи (IMSI);

7 - контроль IP v4-подсети (адрес, маска (битовая маска, определяющая, какая часть IP v4 адреса узла сети относится к адресу подсети, а какая к адресу самого узла в этой подсети);

8 - контроль по уникальному идентификационному номеру службы мгновенных сообщений информационно-телекоммуникационной сети Интернет (UINICQ);

9 - контроль по адресу объекта в соответствии с IPv6 (16-ти байтовый адрес, записывается и передается по каналу в порядке, определенном спецификацией RFC1884);

10 - контроль IPv6-подсети (адрес, маска (битовая маска, определяющая, какая часть IPv6 адреса узла сети относится к адресу подсети, а какая к адресу самого узла в этой подсети);

11 - контроль по уникальному идентификатору, присваиваемому каждой единице оборудования информационно-телекоммуникационной сети "Интернет" (MAC-адресу) объекта контроля;

15 - международный идентификатор мобильного оборудования (IMEI);

18 - мобильный идентификационный номер мобильной абонентской радиостанции (MIN);

19 - контроль по унифицированному идентификатору ресурса (URI);

20 - контроль по номеру виртуальной сети VLAN (стандарт IEEE 802.1Q);

23 - контроль по диапазону номеров портов;

25 - контроль по идентификатору абонентской телефонной линии, используемому для идентификации пользователя услуг связи при доступе к сети передачи данных и телематическим услугам связи;

26 - контроль по идентификатору вызываемого и вызывающего пользователя услугами связи по передаче данных для целей передачи голосовой информации;

27 - контроль по коду прикладного протокола;

28 - контроль по полю прикладного протокола;

29 - контроль по доменному имени сервера;

30 - контроль по типу прикладного протокола;

31 - контроль по типу содержимого прикладного протокола;

32 - контроль с использованием фильтра в формате правил отбора и фильтрации трафика.

LengthItem - поле длины элемента данных. Содержит длину всех полей элемента данных. Размер поля равен 4 байтам.

Value - поле значения элемента данных. Состоит из следующих подполей:

подполя идентификационного номера контролируемого пользователя (UCI);

подполя номера условия контроля (Ncontrol);

подполя условия контроля (IdCon);

подполя строки фильтра (Filter);

подполя строки поиска (Find).

Размер поля Value в байтах равен значению поля LengthItem минус 5.

UCI - подполе, содержащее идентификационный номер контролируемого пользователя (абонента). Идентификационный номер отличен от нуля. Целочисленная переменная. Размер подполя равен 2 байтам.

Ncontrol - подполе, содержащее номер условия контроля. При постановке абонента на контроль или при изменении параметров его контроля, каждому условию контроля должен присваиваться уникальный номер в рамках UCI. Целочисленная переменная. Размер подполя равен 2 байтам.

IdCon - подполе условия контроля. Для подполя переменного размера перед этим подполем указывается длина подполя, равная 4 байтам. Содержимое подполя условия контроля:

а) для значения поля CodItem, равного 0:

подполе IdCon определяет вид контроля. Размер подполя равен 2 байтам. Содержимое подполя IdCon:

0-й байт подполя IdCon:

если значение 7-го бита равно 1, то отобранные данные должны передаваться на ПУ в виде потока IP-пакетов в хронологическом порядке прохождения через точку/точки съема без предварительной обработки; при этом, если 6-ой бит 0-ого байта подполя IdCon установлен в 1, то отобранные данные должны передаваться на ПУ со всеми заголовками протоколов канального уровня, присутствующими в точке/точках съема; в противном случае отобранные данные должны передаваться на ПУ в виде IP-пакетов;

если значение 7-го бита равно 0, то для всех протоколов, использующих TCP (кроме почтовых протоколов и данных VoIP), данные должны передаваться в соответствии с форматом, определенным подпунктом 3.3.6.1 настоящего приложения; для почтовых протоколов (POP3, SMTP, IMAP) данные должны передаваться в соответствии с форматом, определенным подпунктом 3.3.7.1 настоящего приложения; для VoIP данные должны передаваться в соответствии с форматом, определенным подпунктом 3.3.6.2 настоящего приложения; все остальные данные должны передаваться в виде IP-пакетов в соответствии с подпунктом 3.3.5 настоящего приложения;

с 5 по 0-й биты - резерв, не используются и заполняются значением 0;

1-й байт подполя IdCon:

с 7 по 3-й биты - резерв, не используются и заполняются значением 0;

2-й бит - значение равно 0, если производится контроль поступающего трафика; значение равно 1, если контроль поступающего трафика не производится;

1-й бит - резерв, не используется и равен 0;

0-й бит - резерв, не используется и равен 0;

подполе NControl - значение равно 0;

пример заполнения поля IdCon с CodItem, равного 0, приведен на рисунке 10;

0 байт

1 байт

7 бит

6 бит

5 бит

4 бит

3 бит

2 бит

1 бит

0 бит

7 бит

6 бит

5 бит

4 бит

3 бит

2 бит

1 бит

0 бит

1

1

0

0

0

0

0

0

0

0

0

0

0

0

0

0

Рисунок 10

данные из ТС ОРМ передаются на ПУ в виде пакетов с заголовками канального уровня, производится контроль поступающего на ТС ОРМ трафика;

б) для значения поля CodItem, равного 1:

содержимое подполя IdCon - имя учетной записи пользователя; строка в ASCII кодах, содержащая идентификатор объекта - login; в имени учетной записи пользователя могут использоваться следующие служебные символы:

"*" - обозначает произвольную последовательность символов;

"?" - обозначает один произвольный символ;

размер подполя условия контроля переменный;

в) для значения поля CodItem, равного 2:

содержимое подполя IdCon - телефонный номер, каждый символ которого кодируется в ASCII коде, дополненный в конце 5-ю байтами, содержащими 0 (резерв под дальнейшие расширения); телефонный номер может содержать следующие служебные символы:

"*" обозначает произвольную последовательность символов;

"?" - обозначает один произвольный символ;

размер подполя IdCon переменный;

г) для значения поля CodItem, равного 3:

содержимое подполя IdCon - 4 байта IPv4 адреса, порядок передачи байт адреса осуществляется в соответствии с RFC791 (IPv4), порядок передачи байт адреса осуществляется в соответствии со спецификацией RFC1884(IPv6);

д) для значения поля CodItem, равного 4:

содержимое подполя IdCon - строка в ASCII кодах, содержащая контролируемый адрес электронной почты (e-mail адрес) для отбора писем, передаваемых по протоколам SMTP, POP3, IMAP4, HTTP (Web-mail); в адресе электронной почты могут использоваться следующие служебные символы:

"*" - обозначает произвольную последовательность символов;

"?" - обозначает один произвольный символ;

размер подполя условия контроля переменный;

е) для значения поля CodItem, равного 6:

содержимое подполя IdCon - строка в ASCII кодах, содержащая международный идентификатор абонента сети подвижной связи (IMSI); в IMSI могут использоваться следующие служебные символы:

"*" - обозначает произвольную последовательность символов;

"?" - обозначает один произвольный символ;

размер подполя IdCon переменный;

ж) для значения поля CodItem, равного 7:

подполе IdCon состоит из двух подполей:

подполя IP-адреса сети, содержащее IP-адрес (4 байта для IPv4, порядок передачи байт адреса осуществляется в соответствии со спецификацией RFC791 (IPv4);

подполя маска подсети, содержащее префикс подсети - количество двоичных единиц в битовой маске подсети; размер подполя равен 1 байту;

з) для значения поля CodItem, равного 8:

содержимое подполя IdCon - уникальный идентификационный номер службы мгновенных сообщений информационно-телекоммуникационной сети "Интернет" (UIN ICQ). Каждый символ номера кодируется в ASCII коде. Номер UIN ICQ содержит следующие служебные символы:

"*" - обозначает произвольную последовательность символов;

"?" - обозначает один произвольный символ;

размер подполя IdCon переменный;

и) для значения поля CodItem, равного 11:

содержимое подполя IdCon - MAC-адрес. Размер подполя равен 6 байтам;

к) для значения поля CodItem, равного 15:

содержимое подполя IdCon - строка в ASCII кодах, содержащая международный идентификатор оборудования мобильной абонентской радиостанции (IMEI). Размер подполя переменный;

л) для значения поля CodItem, равного 9:

содержимое подполя IdCon - 16 байт IPv6 адреса, порядок передачи байт адреса осуществляется в соответствии со спецификацией RFC1884(IPv6);

м) для значения поля CodItem, равного 10:

подполе IdCon состоит из двух подполей:

подполя IPv6 адреса сети, содержащие IPv6 адрес (порядок передачи байт адреса осуществляется в соответствии со спецификацией RFC1884 (IPv6)). Размер подполя равен 8 байтам;

подполя маска подсети, содержащие префикс подсети - количество двоичных единиц в битовой маске подсети. Размер подполя равен 1 байту;

н) для значения поля CodItem, равного 18:

содержимое подполя IdCon - строка в ASCII кодах, содержащая мобильный идентификационный номер мобильной абонентской радиостанции (MIN). Размер подполя переменный;

о) для значения поля CodItem, равного 19:

содержимое подполя IdCon - строка, определяющая унифицированный идентификатор ресурса URI, каждый символ которого кодируется в ASCII коде. URI может содержать следующие служебные символы:

"*" обозначает произвольную последовательность символов;

"?" обозначает один произвольный символ;

примеры:

foobar.com/index*;

baz.com/joe.php*;

размер подполя переменный;

п) для значения поля CodItem, равного 20:

строка в ASCII кодах, содержащая номер виртуальной сети. Размер поля переменный;

р) для значения поля CodItem, равного 23:

содержимое подполя IdCon - диапазон контролируемых портов;

поле состоит из 3 подполей в соответствии с рисунком 11.

Type

Min

Max

Рисунок 11

Type - код транспортного протокола согласно RFC1700, размер подполя равен 4 байтам;

Min - минимальный номер порта диапазона, размер подполя равен 2 байтам;

Max - максимальный номер порта диапазона, размер подполя равен 2 байтам;

размер поля равен 8 байтам,

с) для значения поля CodItem, равного 25:

строка в ASCII кодах, содержащая идентификатор абонентской телефонной линии, используемый для идентификации пользователя услугами связи при доступе к сети передачи данных и телематическим услугам связи; размер поля переменный;

т) для значения поля CodItem, равного 26:

строка в формате UTF-8, содержащая идентификатор вызываемого или вызывающего пользователя услугами связи по передаче данных для целей передачи голосовой информации. Могут использоваться следующие служебные символы:

* - обозначает произвольную последовательность символов;

? - обозначает один произвольный символ;

размер поля переменный;

у) для значения поля CodItem, равного 27:

содержимое подполя IdCon - код протокола прикладного уровня (равен общепринятому номеру порта, указанному в RFC1700). Целочисленная переменная, размер подполя равен 4 байтам;

ф) для значения поля CodItem, равного 28:

содержимое подполя IdCon - строка, определяющая поле прикладного протокола, название переменной и его значение, в формате "протокол.поле: значение". Допустимые значения приведены в таблице N 1.