introduction of Webhacking
1. 웹이란 무엇인가?
: HTTP 를 이용하여 정보를 공유하는 통신 서비스를 말한다.
: 서비스를 요청하고 받는 사용자는 웹 클라이언트(Web Client)
: 웹 서비스를 제공하는 대상을 웹 서버(Web Server) 라고 한다.
2. 웹 기초 지식
: 웹 브라우저는 사용자가 웹과 HTTP 의 원리를 알지 못해도 서비스를 사용할 수 있도록 도와주는 소프트웨어다.
: 모든 취약점은 사용자의 입력 값에서부터 발생한다. -> 사용자의 입력 값은 웹 브라우저를 통해서 전송되므로 웹 해킹을 공부하기 위해서는 브라우저가 하는 행위를 필수적으로 이해해야 한다!
: 웹 리소스란 웹에서 사용하는 콘텐츠를 의미하는데 이때 웹 리소스를 가리키는 주소는 URL(Uniform Resource Locator) 라고 한다.
+ ) 최근 들어 추상화된 경로를 사용함.
- URI 와 URL 의 차이?
URI (Uniform Resource Identifier) : 리소스를 식별하기 위한 식별자
URL (Uniform Resource Locator) : 리소스의 위치를 식별하기 위한 URI 의 하위 개념
-> 요즘은 혼용해서 사용하는데 드림핵에서는 상위 개념인 URI 로 설명한다.
(URI 의 구성요소)
1. Scheme : 웹 서버에 접속할 때 어떤 프로토콜을 이용할지에 대한 정보를 담고 있다.
2. Host : Authority 의 일부로 접속할 웹 서버의 호스트(서버 주소)에 대한 정보를 가지고 있다. -> example.com
3. Port : Authority 의 일부로 접속할 웹 서버의 포트 번호에 대한 정보를 가지고 있다. -> 8042
4. Path : 접속할 웹 서버의 경로에 대한 정보를 가지고 있으며 / 문자로 구분된다. -> ex) /var/www/html/index.html
5. Query : 웹 서버에 전달하는 파라미터이며 URI 에서 ? 문자 뒤에 붙는다. -> ex) board.php?idx=32
6. Fragment : 메인 리소스 내에 존재하는 서브 리소스에 접근할 때 이를 식별하기 위한 정보를 담고 있고 # 문자 뒤에 붙는다.
- 인코딩과 디코딩이란?
인코딩(Encoding) : 문자 또는 기호 등의 정보와 형태를 표준화, 보안 등의 목적으로 다른 형태와 형식으로 변환하는 처리 또는 처리 방식을 말한다.
디코딩(Decoding) : 위와 같이 인코딩으로 변환 된 형태를 원래의 형태로 변환한다.
인코딩(Encoding)과 인크립션(Encryption)의 차이는?
인코딩 : 알고리즘이 모두 공개되어 있으며 키와 같은 요소가 포함되어 있지 않아 모두가 원래 정보로 복원이 가능하다.
인크립션 : 양방향 암호 알고리즘이며 일치한 알고리즘과 유효한 키를 가지고 있다면 원래의 정보로 복원 가능하다.
- 인코딩은 어쩔 때 사용할까?
: URI 구조내에서 이미 용도가 정해져 있는 예약어(구분자)로 사용되는 문자들을 전송할 때 사용한다.
: 예약어같은 경우, URI 구조내에서 문법적으로 중요한 의미를 가지고 있으므로 문법적인 사용이 아니면 반드시 인코딩하고 사용해야한다.
http://example.com/?a=%3Fb&c=%26d 같은 형태이다.
이후, HTTP/HTTPS 와 쿠키&세션에 대한 내용이 나오는데 이는 중요한 내용이므로 따로 분류해서 정리할 예정이다.
'TeamH4C' 카테고리의 다른 글
[빡공팟 5기] W4 : Web Hacking 로드맵 - STAGE 1 - 4 (0) | 2022.10.13 |
---|---|
[빡공팟 5기] W4 : Web Hacking 로드맵 - STAGE 1 - 3 (0) | 2022.10.13 |
[빡공팟 5기] W4 : Web Hacking 로드맵 - STAGE 1 - 1 (0) | 2022.10.12 |
[빡공팟 5기] W4 : Mac OS 에서 Burp Suite 설치 및 기본 기능 이해 (0) | 2022.10.12 |
[빡공팟 5기] W1 ~ W3 : 파이썬 기초 100제 중 5문제 블로깅 과제 (1) | 2022.10.10 |