2017년 3월 4일 토요일

반사 공격

반사 공격

컴퓨터 네트워크에 대하고, 반사 공격(또는 리플레이 어택)은, 유효한 데이터 전송이 고의 또는 부정하게 반복해/지연 되는 것에 의한, 공격의 형식이다.IP패킷의 치환에 의한 DNS 위장의 일부와 같이, 발신자나 공격자가 데이터를 감청해 재발송신 하는 것에 의해서 실행된다(스트림 암호 공격과 같은 것이다).

앨리스가 자신의 아이덴티티를 보브에 대해서 증명하는 것을 가정한다.보브는 아이덴티티가 증거로 해 앨리스의 패스워드를 요구해, 앨리스는 충실히 패스워드를 제공한다(어쩌면 해쉬 함수와 같은 약간의 변환을 해).한편으로 이브는 회화를 몰래 엿듣기해 패스워드를 기록한다.두 명의 교환이 끝난 나중에, 이브는 앨리스의 행세를 해 보브에 접속을 실시한다.아이덴티티의 증명이 요구될 때, 이브는 앨리스의 앞의 세션으로부터 읽어낸 패스워드를 보내, 보브는 이것을 받아 들이게 된다.

대책

반사 공격을 막는 하나의 방법은 세션 토큰(영문판)을 사용하는 것이다.보브는 앨리스에게 원 타임・토큰을 보내, 앨리스는 이 토큰으로 패스워드를 변환해, 결과를 보브에 보낸다(예를 들면, 세션 토큰을 패스워드에 부가해 해쉬 함수를 계산한다).보브의 옆에서는 같은 계산을 실시한다.양쪽 모두의 계산 결과가 일치할 경우에 한정해, 로그인은 성공한다.여기서, 마로리가 이 값을 기록하고, 다른 세션으로 이것을 사용하려고 하는 것을 가정한다.보브는 다른 세션 토큰을 보내, 마로리가 이전에 기록한 값으로 응답하는 경우, 보브의 계산 결과와 다르게 된다.

세션 토큰은(의사-) 난수에 의한 프로세스에 의해서 선택하지 않으면 안 된다.아주 없으면, 마로리는 장래 사용되는 토큰의 몇개인가를 추측해, 앨리스에게 추측한 토큰을 변환에 사용시킬 수 있을지도 모른다.마로리는 나중에 앨리스의 응답을 재이용해, 보브는 받아 들이게 된다.

보브는 일회용의 숫자를 보낼 수도 있지만, 메시지 인증 코드(MAC)도 포함해 두어야 하는 것이다.앨리스는 이것을 확인해야 하는 것이다.

타임 스탬프는 반사 공격을 막는 또 하나의 방법이다.동기는 안전한 프로토콜로 실현되지 않으면 안 된다.예를 들면, 보브는 MAC과 동시에 보브의 시각을 정기적으로 송신한다.앨리스가 보브에 메시지를 보내고 싶은 경우, 앨리스는 보브의 시계의 예측치를 메시지에 포함해 메시지 전체를 인증한다.보브는 타임 스탬프가 허용 범위내인 경우만 메시지를 수령한다.이 방식의 장점은, 보브가(의사-) 난수를 생성할 필요가 없는 것이다.

관련 항목

This article is taken from the Japanese Wikipedia 반사 공격

This article is distributed by cc-by-sa or GFDL license in accordance with the provisions of Wikipedia.

Wikipedia and Tranpedia does not guarantee the accuracy of this document. See our disclaimer for more information.

In addition, Tranpedia is simply not responsible for any show is only by translating the writings of foreign licenses that are compatible with CC-BY-SA license information.

0 개의 댓글:

댓글 쓰기