인코딩
0과 1로 우리의 문자를 표현자 하는 것에 대한 약속
아스키와 유니코드가 있다.
통신 프로토콜
규격화된 상호작용에 적용되는 약속이다.
예를 들어 누군가에게 전화를 걸때 "여보세요" 라고 하는 것 과 같은 약속이다.
이것을 컴퓨터와 통신하는 것으로 적용한다면 좀 더엄격해지는 것이다.
통신프로토콜에는 HTTP, TCP/IP등등이 있다.
HTTP
서버와 클라이언트가 데이터의 교환을 요청과 응답 형식으로 정의한 프로토콜
HTTP의 기본 매커니즘은 클라이언트가 서버에게 요청을 하면 서버가 응답을 하는것이다.
네트워크 포트
네트워크에서 서버와 클라이언트가 정보를 교환하는 장소
포트를 항구라는 의미를 가지고 있다.
서비스 포트
네트워크 포트중에 특정 서비스가 점유하고 있는 포트
포트로 데이터를 교환할 때는 전공 계층 프로토콜을 따른다.
TCP가 데이터를 전송하려는 서비스에 UDP가 접근하면 교환이 되지 않는다.
그래서 전송 계층 프로토콜을 따라 표기한다.
포트의 개수는 운영체제에서 정의를 하는데 0번부터 65535번까지 사용한다.
포트 0번부터 1023번까지는 잘 알려진 포트라고 해서 유명한 서비스가 등록되어 있다.
HTTP 메세지
- HTTP 헤드
- 필드와 값으로 구성되어 있고 HTTP 메세지 또는 바디의 속성을 보여준다.
- 첫줄은 시작 줄, 나머지 줄은 헤더라고 부른다.
- 또한 헤드는 줄바꿈으로 구별된다.
- HTTP 바디
- 헤드 다음에 오는 모든 줄을 말하고 클라이언트나 서버에게 전송하려는 데이터가 있다.
- HTTP 요청
- HTTP 요청의 시작 줄은 메소드, 요청 URL, HTTP 버전으로 구성된다.
- 메소드: URI가 가리키는 리소스를 서버가 수행하길 바라는 동작
EX) GET메소드: 리소스를 가져와라
POST메소드: 리소스로 데이터를 보내라
- 요청 URL: 메소드의 대상,
- HTTP 버전: 클라이언트가 사용하는 HTTP 프토콜의 버전
을 나타낸다.
HTTP 응답
- HTTP 요청에 대한 결과를 반환하는 메세지
- HTTP 응답의 시작 줄은 HTTP버전, 상태 코드, 처리사유로 구성된다.
- HTTP 버전: 서버에서 사용하는 HTTP 프로토콜의 버전
- 상태 코드: 결과를 세 자릿수로 표현한 것
- 처리 사유: 상태 코드가 발생한 이유를 짧게 기술
웹
Web Server
정보를 제공하는 주체
ex) 식당에서 음식을 서빙하는 사람
Web Client
정보를 받는 이용자
ex) 음식을 주문하는 고객
Front-end: 이용자의 요청을 받는 부분
이용자에게 직접 보여지는 부분을 Web Resource라고 한다.
글, 색깔, 모양 등등으로 시각되어지는 것을 보여준다,
프론트엔드는 Web Resource로 구성되어진다.
Back-end: 요청을 처리하는 부분
웹 리소스
웹에 갖춰진 정보 자산을 의미한다.
웹의 프론트엔드를 구성하는 것은 HTML, CSS, JS 가 있다.
HTML
웹 문서의 뼈와 살을 담당한다.
CSS
웹 문서의 생김새를 지정한다.
JS
웹 문서의 동작을 정의한다.
'보안 > Dreamhack' 카테고리의 다른 글
Web Hacking STAGE 5 Cross Site Request Forgery(CSRF) (0) | 2022.07.05 |
---|---|
Web Hacking STAGE 4 Cross-Site-Scripting (XSS) (0) | 2022.07.03 |
Web Hacking STAGE 3 Cookie & Session (0) | 2022.06.23 |