SSL 피닝은 서버에서 신뢰받는 검증 데이터에 인증하는 것을 의미하는데, 클라이언트를 검사하는 것을 포함한다.
SSL 피닝 은 중간자(MITM)공격이나 다른 해킹으로부터 사용자를 보호하는 '공개키 게시(pinning)' 기능이다.
MITM공격은 해커가 사용자 기기와 웹서버 사이에 오가는 민감한 데이터를 가로채거나 조작하는 수법을 가리킨다.
보통 민감한 사용자 데이터는 통신 과정에 시큐어소켓레이어(SSL) 또는 전송계층보안(TLS)같은 프로토콜로 암호화되지만,
해커가 서버의 보안취약점을 파고들면 SSL/TLS용 인증서를 위조해 서버 행세를 할 수도 있다.
이 경우 사용자는 여전히 데이터를 가로채이거나 조작당할 수 있게 된다.
SSL을 적용한 암호화의 경우 SSL Strip으로 이를 무력화시킬 수 있는 기법이 과거 블랙햇에서 소개된 바 있으며,
자바스크립트를 이용해 암호화하는 과정을 무력화시킬 수 있는 기법도 공개되었다.
웹의 경우 HSTS(HTTP Strict Transport Security) 기법을 도입해 SSL Strip을 막을 수 있도록 하고,
자바스크립트 암호화는 한계가 있기 때문에 이를 사용 시 다른 방식과 같이 병합해서 사용해야 한다
웹브라우저가 아닌 어플리케이션의 경우 SSL certificate pinning을 적용하면 MiTM 공격을 막을 수 있다.
참고 : http://www.zdnet.co.kr/news/news_view.asp?artice_id=20140904095900&type=det
http://isaa.sch.ac.kr/bbs/board.php?bo_table=news&wr_id=799
http://www.itworld.co.kr/news/86269
http://www.itworld.co.kr/print/86269
'호기심_메모' 카테고리의 다른 글
세션(1) (0) | 2014.11.30 |
---|---|
TLS를 SSL로 다운그레이드 (0) | 2014.11.21 |
암호 : TLS (0) | 2014.11.20 |
Oracle : DBlink 취약점 (1) (0) | 2014.11.19 |
.so 파일 (1) (0) | 2014.11.18 |