Knowledge/웹보안 / / 2016. 7. 17. 03:16

웹보안(Session Token,cookie,Session Hijacking)

반응형




웹보안



Session Token 저장방식


vHTML 페이지에 저장하는 방식
uHidden field
lHidden field를 이용하여 Session TokenHTML 코드 내에 저장
l위험성이 널리 알려져 요즘에는 세션정보를 저장하는 용도로 사용하지 않는다.
uURL Rewriting
lURLSession Token을 덧붙여 사용
l브라우저에서 쿠키를 사용하지 못하도록 설정한 경우에 주로 사용된다

vCookie에 저장하는 방식
uSession TokenCookieExpires에 따라서 메모리 혹은 디스크에 저장됨
lSession Cookie, Persistent Cookie

uSession Cookie에 저장하는 방식이 가장 널리 사용됨




hidden.asp이름으로 만듬

<form action="hiddenfield_ok_asp" method="get">
<input type="text" name="name">
<input type="hidden" name="age" value="19">
<input type="submit" value="ok">
</form>


아무값이나 넘기기 저는 1234 값을 넣었습니다.



값 넘기고 난후 paros로 trap request 체크후 확인하면 위에 파란줄 처럼 넘긴값이 다

보입니다.


그냥 다 필요없고 오른쪽 마우스 클릭 후소스보기만 클릭해도 다보이기 때문에

사용하지 않습니다.


Hidden field

– 절대 쓰면 안 된다.

-와이어샤크 ,paros 쓸 필요도 없이 소스보기로 바로 보인다.

URL Rewriting 도 마찬가지

Persistent cookie ?

로컬컴퓨터에 최근 본 상품을 저장해 놓는 개념입니다.


Cookie

쿠키란? : Web Application Server가 클라이언트식별에 사용되는 정보를 클라이언트에게
저장하기 위해 가장 널리 사용되는 방법입니다.

Cookie의 용도


세션관리용

Web Session 유지를 위한 Session Token 저장용도로 사용한다.

Session이 유지되는 동안에만 사용하면 되므로 이때 Session Token

브라우저의 메모리에 위치해있는 Session Cookie에 저장한다.

이는 브라우저가 종료되면 Session Cookie의 내용도 제거 된다.


사이트개인화

사용자의 IDPassword 또는 개인신상정보 등의 기록에 이용될 수 있다.

또 사용자의 취향 정보를 저장하고 목록화 하여 개인화된 컨텐츠를 제공하는 데 이용할 수 있다.


장바구니정보

전자상거래 사이트에서 주로 사용되는 장바구니 시스템은 사용자가 찜해 놓은 물건을 나중에

구입하는 형태의 서비스를 제공한다. 이 정보는 물론 서버측 DB에 저장할 수도 있지만

중요한 데이터가 아닌 임시적인 데이터이므로 서버의 부하를 줄이기 위해 클라이언트

 측에 저장한다.

나중에 접근했을 때도 이 정보를 유지하기 위해 Persistent Cookie에 저장한다.


웹 사이트 이용방식 추적

사이트 운영자들은 사용자들이  자신의 사이트를 어떻게 이용하는지 어떤 페이지를 자주 방문하고

어떤 페이지 이용이 저조 한지 등에 ㄴ대한 정보를 수집해 사이트 운영에 이용한다.

일각에서는 이를 개인정보의 유출이라고 주장한다.



Javascript를 이용한 Cookie 확인



네이버 사이트 들어가서 javascript 자신에게 발행된 쿠키값을 확인할수 있습니다.

URL 에다가 javascript:document.cookie 이렇게 치시면위에 사진처럼 이렇게 치시면 보실수 있습니다.



session 하이제킹 :다른사람껄 쿠키값 가져오기( 인증을할때 쿠키값만으로 인증을 할때 사용가능)


session cookie: 웹브라우저 캐시


Session Hijacking


서버2000에서 xp(클라이언트) 요청한 쿠키값을 (back track )에서 훔침



xp 환경에서 준비된 웹 서버에 들어가서 로그인을 합니다.

asdfa 라는 아이디로 로그인 된걸 확인할수 있습니다.



back track 와이어 샤크로 패킷이 들어왔나 확인을 합니다. 



클라이언트 에서 서버로 인증하는 패킷을 확인후 오른쪾 마우스 클릭한후 Follow TCP Stream

클릭해서 클라이언트의 로그인한 쿠키값을 확인합니다.





  오른쪾 마우스 클릭한후 Follow TCP Stream 이걸 누르면 이런 화면이 나옵니다.

  파란줄 표시되있는것이 asdfa 아이디를 가진 사용자 쿠키값 입니다.





        back track 에서 paros 를 킨후 서버 웹페이지에 접근후 Trap request 클릭를 합니다.





back track 와이어샤크로 xp에서 훔친 asdfa 사용자 쿠키값을 파란줄 있는부분에 
    붙여넣기 하시면 됩니다.
계속해서 continue 누르면서 쿠키값 복사해주시면 됩니다.



그러면 이렇게 쿠키값을 이용해서 asdfa 사용자로 로그인 한것을 확인할수 있습니다.



paros-> Tools-> filters->Replace HTTP request header using defined pattern->

pattern: Cookie: * -> Cookie: 쿠키값


이렇게 하시면 continue 누르실때마다 자동으로 쿠키값이 변경됩니다.

(잘안되시면 .*이렇게 보세요.)










반응형
  • 네이버 블로그 공유
  • 네이버 밴드 공유
  • 페이스북 공유
  • 카카오스토리 공유