버프 스위트를 보면 http 요청과 응답을 확인할 수 있는데 http가 무엇인지 보도록 하겠습니다.
HTTP란?
http는 데이터 교환을 요청과 응답 형식으로 정의한 프로토콜입니다.
즉, 클라이언트의 요청에 대해 서버가 응답하는 형식으로 작동합니다.
형식을 정의한 프로토콜로 해당형식을 맞춰서 요청과 응답을 하여야합니다.
버프 스위트를 보면 실제 요청과 응답의 형태를 확인할 수 있습니다.
http요청은 http헤드와 http 바디로 나눌 수 있습니다. (공백 한 줄로 구분)
그렇기 때문에 위의 요청을 보면 공백 한줄 아래 아무것도 없기 때문에 바디가 없는 것을 확인할 수 있습니다.
그리고 헤드는 첫 줄인 시작줄과 나머지인 헤더로 한번더 구분할 수 있습니다.
시작줄
시작줄에는 메소드, 경로, http버전을 적을 수 있습니다.
메소드(GET): 서버가 수행하길 바라는 동작을 나타내며, 요청과 같이 보낼 데이터는 http 바디에 포함됩니다.
경로(/): 메소드의 대상. 즉, 서버가 수행하길 바라는 대상을 의미합니다. (파일 경로)
HTTP 버전(HTTP/2): 클라이언트가 사용하는 HTTP 프로토콜 버전을 의미합니다.
실제 위의 요청에 대한 응답을 확인한 것입니다.
http응답도 헤더와 마찬가지로 http 헤드와 http 바디를 공백 한 줄로 구분할 수 있습니다.
받은 바디에 실제로 우리에게 보여주는 google.com 페이지 html을 확인할 수 있습니다.
응답 헤더도 시작줄과 헤더로 나눠 지는데 응답의 시작줄은 조금 다릅니다.
시작줄
http 버전과 상태코드가 적혀 있습니다.
HTTP 버전(HTTP/2): 서버가 사용하는 HTTP 프로토콜 버전을 의미합니다.
상태코드(200 OK): 요청에 대한 처리결과를 세자리 수로 표현한 것입니다.
상태코드에는 아래와 같이 여러가지가 있습니다.
- 1xx: 요청을 제대로 받았고 처리 진행중
- 2xx: 요청이 제대로 처리됨
- 200(OK): 성공
- 3xx: 요청을 처리하려면 클라이언트의 추가 동작이 필요
- 302(Found): 다른 URL로 갈 것 // redirect로 다른 페이지를 요청한 것으로 헤더에 location이 들어있습니다.
- 4xx: 클라이언트의 잘못된 요청으로 처리 실패
- 400(Bad Request): 요청이 문법에 맞지 않음
- 401(Unauthorized): 클라이언트가 요청한 리소스에 대한 인증이 실패함
- 403(Forbidden): 클라이언트가 리소스에 요청할 권한이 없음
- 404(Not Found): 리소스가 없음 // 페이지 경로를 잘 못 적는 경우 등 없는 파일을 요청할 경우 발생합니다.
- 5xx: 클라이언트의 요청은 유효하지만 서버의 에러로 처리 실패
- 500(Internal Server Error): 서버가 요청을 처리하다가 에러가 발생함
- 503(Service Unavailable): 서버가 과부하로 인해 요청을 처리할 수 없음
이렇게 이번 주차에 버프스위트에 대한 것과 버프스위트로 확인할 수 있는 http까지 확인해 보았습니다.
다음부터는 실제 해킹 기법들을 배운다고 하는데 상당히 기대가되네요...!!!
과제를 하며 이번 주차 정리는 마치도록하겠습니다.
과제
1. 자바스크립트 문법 공부와 자바스크립트로 쿠키 탈취나 키로거 만들어보기
2. 게시판 구현하기
- 게시판 글 작성
- 게시판 리스트 보기
- 게시판 내용 읽기
- 게시판 글 수정하기
- 게시판 글 삭제
일단 위에부터 하고나서
+ 게시판 페이징
+ 게시판 검색
+ 게시판 정렬
'웹 개발' 카테고리의 다른 글
웹 개발 공부 일기장 4 - 과제 (쿠키탈취 및 키로거) (0) | 2023.11.19 |
---|---|
웹 개발 공부하기 4 - 과제 (자바스크립트) (0) | 2023.11.18 |
웹 개발 공부 일기장 4 - 2 (Burp Suite) (0) | 2023.11.17 |
웹 개발 공부 일기장 4 - 1 (Web Proxy) (0) | 2023.11.16 |
웹 개발 공부 일기장 3 - 과제 (jwt 로그인 페이지) (0) | 2023.11.13 |