HTTP 사이클은 클라이언트가 요청할 때나 서버가 응답하는 자세한 내용을 헤더에 실어 보냅니다. 이러한 헤더는 여러 가지가 있습니다.
1. 웹서버가 설정해서 클라이언트 브라우저에 보내는 주요 헤더 정보
Set-Cookie: 이 값은 사용자의 세션이 유지되도록 보장하기 위하여 가장 흔하게 클라이언트에 제공하는 세션 식별자(쿠키)입니다. 해커가 사용자의 세션을 훔칠 수 있다면 공격자는 그 애플리케이션 내에서 해당 피해자인 척 가장할 수 있습니다.
Content-Length: 이 값은 응답문의 바이트 단위 길이입니다. 이 값은 해커가 응용프로그램의 응답을 해독할 때 바이트 단위의 데이터를 예상할 수 있으므로 도움이 됩니다. 특별히 (반복적으로 추측하는) 무작위 대입법에 활용할 만합니다.
Location: 이 값은 응용프로그램이 사용자를 다른 페이지로 보낼 때 사용됩니다. 이 정보는 해커에게 도움이 되는데, 예를 들어 애플리케이션에 성공적으로 인증한 후에만 접근 가능한 페이지를 가리키도록 이용할 수 있기 때문입니다.
2. 클라이언트 브라우저가 웹서버에 보내는 주요 헤더 정보
Cookie: 하나(또는 여러 개)의 쿠키는 사용자의 세션을 유지하기 위해 헤더에 담겨 서버로 되돌려 보내집니다. 이 쿠키의 헤더 값은 서버가 set-cookie로 발행한 헤더 값과 언제나 일치해야 합니다. 이 값은 응용프로그램의 유효한 세션 값을 제공하므로 다른 응용프로그램 사용자를 공격할 때 사용할 수 있습니다. 다른 쿠키들 중엔 그리 흥미로운 것이 없는데, 예를 들어 원하는 언어를 영어로 설정하는 그런 내용들이 포함 되어 있기도 합니다.
Referrer: 이 헤더 값은 다른 웹 페이지를 요청할 때 이전에 열었던 페이지를 목록으로 만듭니다. 이 헤더 값은 곧 "마지막으로 방문한 페이지"를 뜻하며, 이 값은 쉽게 바꿀 수 있기 때문에 해커에게 도움이 됩니다. 따라서 만일 응용 프로그램이 보안에 관한 어떤 것을 이 페이지에 의존한다면, 값을 변조하여 쉽사리 우회시킬 수 있습니다.
'서버운영 (TA, ADMIN) > 정보보안' 카테고리의 다른 글
[정보보안] 웹해킹의 기초 (0) | 2017.05.11 |
---|---|
[정보보안] OWASP란? (0) | 2017.05.11 |
[정보보안] SSL(Secure Socket Layer) 이란 (2) | 2017.05.05 |
[정보보안] OAuth 정리 (0) | 2017.04.05 |
[정보보안] 정보 보안 개론과 실습 (0) | 2017.01.02 |