Я написал тестовый клиент и сервер с использованием библиотеки Cyrus SASL и вручную заставляю его выбрать GSSAPI в качестве механизма. Во время отладки я распечатал md5-сумму каждого сообщения, которое было передано между ними. Я заметил, что при каждом подключении последовательность кажется одинаковой. То есть, если последовательность сообщений при первом согласовании была clientMessage1, serverResponse1, clientMessage2 и т. Д. Для успешной аутентификации, если я затем перезапущу свой клиент, то же самое clientMessage1, serverResponse2, clientMessage2 и т. Д. Последовательность повторяется.
Мне кажется, это будет проблема безопасности. Это правильное поведение, и если да, следует ли мне оборачивать эти сообщения в TLS или что-то в этом роде?
GSSAPI может использовать любое количество базовых протоколов. Однако вы правы, повторная атака может произойти, если будут повторяться одни и те же сообщения.
Вы знаете, какой протокол низкого уровня использовался поверх GSSAPI?