일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 윈도우 8
- 고전게임
- 안드로이드
- 셀프인테리어
- HTML5
- D330
- retropie
- 우분투
- 문자열
- Lenovo D330-10igm
- 인테리어
- network
- 고전게임기 만들기
- D330-10igm
- c#
- 네트워크
- 이보드
- 웹
- ubuntu
- 피들러
- 자바스크립트
- 한컴오피스
- ASP.NET
- Web Programming
- 인증 및 세션관리
- WEB
- 단열
- fiddler
- 보안
- 진단항목
- Today
- Total
Kinesis´s Open Document
브라우저 정보를 확인 하는 원리 본문
웹사이트에 접속시 클라이언트에 해당하는 브라우저에서는 특정 유저정보(클라이언트 정보)를 서버측에 전달하고, 클라이언트 역시 서버측의 정보와 페이지에 해당하는 데이터를 다운로드 받아 브라우저를 통해 화면상에 뿌려지게 된다.
이렇게 서로간에 전달되는 정보에는 해당 문서의 인코딩은 어떠한 것인지, 서버는 어떠한 환경인지, 클라이언트는 어떠한 환경인지 등의 정보가 포함되어 있는데, 이러한 정보를 캐치하여 확인함으로서 브라우저의 정보, 클라이언트의 정보, 브라우저가 돌아가고 있는 환경에 대한 분석을 해 볼 수 있다.
클라이언트 및 서버 상호간의 응답 헤더 스크린샷
결과적으로 클라이언트와 서버간에 주고 받은 응답 헤더 속에 들어 있는 정보들을 수집하여, 기기별, 브라우저별의 특정한 데이터를 수집, 선별해 낼 수 있다면 해당 데이터를 파싱하거나 문자열처리 과정등을 통해 클라이언트 정보나 서버의 정보를 얻어낼 수 있다.
단! 주의할 점은 이러한 응답 헤더를 무조건 신뢰해서는 안된다는 것이다. 특히 클라이언트 헤더 같은 경우는 브라우저가 자신이 보내고자 하는 정보만을 응답을 위한 헤더로 보내는 방식을 가지고 있어, 인위적으로 조작되거나 변경된 값이 전송이 될 수 있으므로, 중요 정보를 많이 가지고 있는 서버 측에서 클라이언트의 응답 헤더만을 가지고 판단할 경우에는 보안상의 문제가 발생할 수 있으니 주의를 요해야 한다.
하지만 경우에 따라서(특정 브라우저를 지원하지 않는다고 알려주기 위함 등)는 이러한 클라이언트 헤더 정보를 얻어와 참조하는 경우가 필요할 수 있다.
참고 게시물.
ASP.NET for C# 에서 클라이언트 정보(UserAgent) 얻어오는 방법
'MEMO/기술 자료 > Common Base' 카테고리의 다른 글
Windows NT 버젼별 정보 (0) | 2012.02.24 |
---|