Dork's port

[Network Hacking] Cookie를 이용한 인증 세션 가로채기(Cookie를 이용해 로그인 하기, 네이버 해킹, 다음 해킹) - 1 본문

Network

[Network Hacking] Cookie를 이용한 인증 세션 가로채기(Cookie를 이용해 로그인 하기, 네이버 해킹, 다음 해킹) - 1

Dork94 2018. 1. 8. 04:44


Cookie Parser




안녕하세요. 


오늘은 네트워크 해킹에 대해 포스팅 하려고 합니다.


이전에 포스팅한 주제로는 아래의 포스팅이 있으니 다른 네트워크 해킹에 대해 관심 있는 분이시라면 참조하시길 바랍니다.


2017/10/15 - [Network] - 네트워크 취약점을 이용한 무료 와이파이(에그, 포켓파이, 포켓와이파이) 만들기(SKT, KT , LGU 무관 )


2017/10/13 - [Network] - 네트워크 취약점을 통한 통신사 데이터 차감 방지(데이터 무제한 사용,데이터 공짜 사용,핸드폰 해킹, 데이터 무료 사용,데이터 없이 인터넷 사용, 데이터 없이 동영상 보기)



시작하기에 앞서 당부해드리고 싶은 말씀은 절대 해당 취약점을 악용하지 않을 것을 당부드리며 취약점 패치 및 개선을 위해 본인 계정으로 테스트 용도로만 사용하세요. 

또한, 프로그램의 소스코드는 배포하지 않는 것을 원칙으로 합니다.


그럼 시작하겠습니다.



  #Cookie란 무엇인가?


해킹에 이용되는 Cookie가 무엇이고 왜 사용되는지에 대한 개념 이해가 가장 우선 인 것 같습니다.


Cookie의 목적에 알기 위해서는 HTTP방식의 특성을 알아야 하는데요. 중요한 개념은 다음과 같습니다.


HTTP Protocol은 Stateless한 Protocol이며 Session이 끊어지면 현재 연결된 Login 정보 등을 상실한다.


그래서 쿠키가 하는 일은 다음과 같습니다


Cookie는 HTTP 통신에서 로그인 정보 등을 저장하기 위해 사용되는 것으로, 인터넷 통신 시 Cookie 값이 전송되어 특정한 사용자로 인증되는 역할을 한다.



  #Web Site의 쿠키 인증 방식



자 그러면 Cookie가 어떤 필요로 의해 나왔는지 알게 되었으니 Web Site에서는 그걸 어떻게 이용하는지에 대해 알아봐야겠죠?


아래의 사진을 봐 주시길 바랍니다.


[Daum의 HTTP GET 요청]


[Naver의 HTTP GET 요청]



사진에서 보시는 바와 같이 Naver 및 Daum(그리고 기타 Web Site)는 HTTP요청시에 Cookie: 라는 이름으로 쿠키가 존재하는 것을 나타내며 그 뒤에는 형식에 맞게 데이터가 전송되는 것을 볼 수 있습니다.


또한, 값들을 보니 Base64로 인코딩 되어 전송된다는 것을 추론할 수 있습니다.



※사진에서 인증에 사용되는 Cookie의 Value는 모자이크 처리 하였습니다.


제 경험에 추론한 바로는 아래와 같이 쿠키 형식이 지정 됩니다.


FieldName=Value; FieldName2=Value2;



  #Web Site의 취약점


그렇다면 Cookie가 저렇게 전달되는 것은 알았는데 어떻게 저 값을 얻을 수 있을까요?


답은 Web Site의 취약점에서 찾을 수 있습니다.


Cracker가 일반 User가 Naver 또는, Daum에 접근할 때에 Packet의 내용만 Sniffing 하면 될까요?


정답을 말씀드리자면 아닙니다.


설명 드리기전에 익숙한 사진 보고 가겠습니다.








네이버 및 다음의 웹 사이트 접속 사진 입니다. 


주소를 보시면 https://*.test.com 과 같이 https://로 시작하는 것을 볼 수 있습니다.


HTTPS는 간단히 말해 HTTP의 보안 Protocol로 인증서를 이용해 인증 및 암호화를 하는 프로토콜이다.


그래서 일반 User가 일반적으로 네이버나 다음등 웹사이트에 접속할 때에는 Cookie의 값이 암호화 되어 전송 될 것입니다.


[HTTPS연결 수립시 패킷 캡쳐]




[HTTPS연결 수립시 패킷 캡쳐]


위와 같이 평문으로 연결을 수립하는 것이 아닌 알지 못하는 언어(암호화된 Text)로 패킷을 주고 받는 것을 볼 수 있습니다.

자! 그럼 본격적으로 Web Site의 취약점에 대해 알아볼까요? 




[네이버 웹툰에 접속한 모습]



주소창에 어떤 주소가 보이시나요?


혹시 http://가 보이시진 않으신가요? 맞습니다.


바로 Naver(및 Daum 기타등등)의 취약점은 바로 Naver에서 서비스하는 모든 웹서버가 HTTPS(SSL)통신을 하지 않는 데에 취약점이 있습니다.


Webtoon 뿐만 아니라 개인정보가 활용 되지 않는 서비스(뉴스, 사전, 증권 등)은 HTTPS를 이용하지 않는 것을 확인하실 수 있습니다.


그렇다면 저희는 추론해 볼 수 있습니다.


로그인 된 상태에서 보안 통신을 하지 않는 서비스를 이용하려고 요청을 보내게 되면(HTTP GET 요청을 보내면)?


Cookie가 암호화 되지 않고 그대로 전송 될 수 있겠군요!


이러한 상황을 하나의 사진으로 정리하고 싶네요.





글이 길어지는 관계로 글을 나누어 포스팅 하도록 하겠습니다.



2018/01/08 - [Network] - [Network Hacking] Cookie를 이용한 인증 세션 가로채기(Cookie를 이용해 로그인 하기, 네이버 해킹, 다음 해킹) - 2



Comments