7.5. Атаки с изменением пакетов
Хотя методы EAP могут поддерживать идентификацию источника данных, защиту целостности и предотвращение повторного использования на уровне пакетов, такая поддержка не обеспечивается на уровне EAP.
Поскольку поле Identifier имеет размер 1 октет, значение этого поля легко угадать, что дает атакующему возможность инжектировать или повторно использовать пакеты EAP. Атакующий может также изменять заголовки EAP (поля Code, Identifier, Length, Type) в пакетах, где нет защиты заголовков. Это может вести к отбрасыванию пакетов или некорректной их интерпретации.
Для защиты пакетов EAP от изменения, подмены или повторного использования рекомендуется использовать методы, поддерживающие защищенное согласование криптографического набора, взаимную идентификацию, защищенное создание ключей, а также защиту целостности и предотвращение повторного использования пакетов. Определения этих параметров защиты приведены в параграфе 7.2.1.
Для обеспечения защиты могут использоваться специфические для метода проверки целостности сообщения (MIC). Если метод EAP поддерживает MIC на уровне пакетов, идентицирующие узлы в проходном режиме, серверы идентификации и идентифицируемые узлы должны проверять корректность MIC. Информацию о некорректных MIC следует протоколировать. Трактовка некорректных MIC (критическая или некритическая ошибка) определяется спецификацией метода EAP.
Для методов, обеспечивающих защиту целостности пакетов EAP рекомендуется включать в расчет контрольной суммы все поля заголовка EAP (Code, Identifier, Length, Type, Type-Data).
Поскольку сообщения EAP типов Identity, Notification и Nak не включают своего MIC, может оказаться желательным покрытие MIC метода EAP содержащейся в сообщении информации, а также заголовка каждого сообщения EAP.
Для обеспечения защиты EAP можно также инкапсулировать в защищенный канал, созданный протоколами типа ISAKMP [RFC2408], как делается в [IKEv2], или в TLS [RFC2246]. Однако, как было отмечено в параграфе 7.4, туннелирование EAP может приводить к уязвимости для MITM-атак.
Существующие методы EAP определяют проверки целостности сообщений (MIC), покрывающие более одного пакета EAP. Например, EAP-TLS [RFC2716] определяет MIC через запись TLS, которая может быть разделена на множество фрагментов; в сообщении FINISHED контрольная сумма MIC покрывает предыдущие сообщения. В случаях покрытия MIC для множества пакетов EAP негативный результат проверки MIC обычно трактуется, как критическая ошибка.
В EAP-TLS [RFC2716] негативный результат проверки MIC считается критической ошибкой в соответствии со спецификацией TLS [RFC2246]. Однако возможна разработка методов EAP, которые будут поддерживать MIC на уровне пакетов и реагировать на негативный результат проверки целостности простым отбрасыванием пакетов.
В этом документе при описании обработки сообщений EAP предполагается, что проверка MIC на уровне пакетов (если она используется) эффективно выполняется до передачи каких-либо откликов и смены состояния хоста, принявшего пакет.