Перейти к содержимому
Калькуляторы

Radius: как 'шифруется' пароль

В RFC 2865 для атрибута 'User-Password' указано:

Quote

On transmission, the password is hidden.  The password is first padded at the end with nulls to a multiple of 16 octets.  A one-way MD5 hash is calculated over a stream of octets consisting of the shared secret followed by the Request Authenticator.  This value is XORed with the first 16 octet segment of the password and placed in the first 16 octets of the String field of the User-Password Attribute.

При этом в Wireshark при указании ключа для данного прокола пароль прекрасно виден. Я не понимаю, как так: хэширование one-way есть, а исходный пароль получается моментально. Как так-то?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Какой протокол пароля используется? Если pap то он не шифруется

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

PAP родимый. Ok, не шифруется, но и не в открытом виде передаётся. Меня интересует - в каком (алгоритм), как происходит обратное преобразование и какая защита от подбора перебором.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

17 минут назад, Safety1st сказал:

PAP родимый.

https://tools.ietf.org/html/rfc1334

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

2 часа назад, Safety1st сказал:

При этом в Wireshark при указании ключа для данного прокола пароль прекрасно виден. Я не понимаю, как так: хэширование one-way есть, а исходный пароль получается моментально. Как так-то?

Вот так: https://github.com/rozhuk-im/liblcb/blob/master/include/proto/radius.h#L764

1. Пароль копируется в результирующий буфер

2. Пароль ксорится с md5 хэшем который получается из:

на первом шаге (и единственном для пароля длиной меньшей или равной размеру хэша мд5) "общий секрет с радиус сервером" и "аутентификатором"

на последующих шагах "общий секрет с радиус сервером" и "предыдущий проксореный блок"

 

Естессно если скормить шаред секрет анализатору то он сможет видеть пароль.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

On 9/11/2019 at 2:59 PM, snvoronkov said:

Насколько я понял, там правила обмена данными без привязки к конкретной реализации.

 

On 9/11/2019 at 4:17 PM, Ivan_83 said:

с md5 хэшем который получается из ... "общий секрет с радиус сервером"

Вот оно! Теперь понятно: MD5-хэширование, как и положено, необратимое, но обе стороны знают хэш. А дальше простой логической операцией получается пароль.

В плане защиты ИМХО норм: длинный ключ + смена паролей каждые 45 дней у нас. Проще выдать себя за коммутатор и получить пароль в чистом виде, чем перебирать :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Использовать PAP и говорить про защиту — это странно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Какие альтернативы? Разве для CHAP и выше не требуется хранить пароли, используя обратимое шифрование?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

50 минут назад, Safety1st сказал:

Какие альтернативы? Разве для CHAP и выше не требуется хранить пароли, используя обратимое шифрование?

Пароли так и так хранятся в общем случае на радиусе в исходном виде. Только в случае с CHAP обмен сервера с NAS уже происходит действительно необратимыми хэшами без наивных XOR'ов.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.