SASL 인증에서 특정 클라이언트와 서버 간의 메시지는 연결할 때마다 동일합니까?

SASL 인증에서 특정 클라이언트와 서버 간의 메시지는 연결할 때마다 동일합니까?

저는 Cyrus SASL 라이브러리를 사용하여 테스트 클라이언트와 서버를 작성했으며 수동으로 GSSAPI를 메커니즘으로 선택하도록 했습니다. 디버깅하는 동안 두 메시지 사이에 전달되는 각 메시지의 md5sum을 인쇄했습니다. 접속할 때마다 순서가 똑같은 것 같다는 걸 깨달았습니다. 즉, 첫 번째 협상의 메시지 시퀀스가 ​​성공적인 인증을 위한 clientMessage1, serverResponse1, clientMessage2 등인 경우 클라이언트를 다시 시작하면 동일한 clientMessage1, serverResponse2, clientMessage2 등... 시퀀스가 ​​반복됩니다.

보안상의 문제가 될 것 같습니다. 이것이 올바른 동작입니까? 그렇다면 이러한 통신을 TLS 등으로 래핑해야 합니까?

답변1

GSSAPI는 기본 프로토콜을 원하는 만큼 사용할 수 있습니다. 그러나 당신 말이 맞습니다. 동일한 메시지를 반복하면 재생 공격이 발생할 수 있습니다.

GSSAPI를 통해 어떤 저수준 프로토콜이 사용되었는지 알고 계십니까?

관련 정보