Web(WWW; World Wide Web)
- www의 줄인말로, 인터넷에 연결된 컴퓨터를 통해 전 세계 사람들이 정보를 공유할 수 있는 공간
- 웹 브라우저가 웹서버에 데이터를 요청하여 데이터를 응답 받는 공간
Web Browser : 웹에서 정보를 탐색하고, HTML 문서, 이미지 등 보여주는 응용 프로그램
ex) Chrome, Edge, Whale, Safari...
Web Server : 데이터를 저장하고, 클라이언트에게 요청(Request) 받은 데이터를 응답(Response)해주는 프로그램/장비
- Web Server는 Web Server + WAS(Web Application Server) + DB(Data Base)로 구성되어있다
※ Web Server : 정적인 페이지를 전달 / WAS : 동적인 페이지 전달 / DB : 데이터가 저장되는 장소
ex) Apache, IIS, NGINX..
정적 페이지 vs 동적 페이지(간단하게)
- 정적 페이지는 언제 누가 와도 똑같은 데이터를 보여준다(ex : html, javascript로만 작성된 페이지)
<html>
<body>
<h1>Hello Page</h1>
</body>
</html>
- 동적 페이지는 그때 그때 바뀌는 데이터를 보여준다 (ex : php, jsp.. 으로 이뤄진 페이지, 네이버 로그인, 로그인 후)
<html>
<body>
<h1> Hello <?php echo $_GET['name'] ?></h1>
</body>
</html>
Web 흐름
Client <-> [(HTML,JS..)Web Server <-> (PHP,JSP..)WAS <-> (SQL)DB ]
Web URL 형식
- http(s):// IP Address or Domain/(파일 경로)
============================================================================================
HTTP (Hyper Text Transfer Protocol)
- 하이퍼텍스트(HTML) 전송 프로토콜
- 네트워크 장치간에 정보를 전송하도록 설계된 응용 계층(7 Layer) 프로토콜
HTTP 메소드(GET, POST, DELETE, CONNECT, ..)
- 웹 서버에게 데이터를 전달할 때 사용하는 메서드
- GET : URL에 데이터를 포함하여 전송한다(보안쪽에 취약한 것 같다)
- ex) http://127.0.0.1/index.php?name=jisu ==> 결과 name = 'jisu'
POST : URL에 데이터를 포함하지 않고 메시지 본문에 데이터를 포함하여 전송한다
ex) http://127.0.0.1/index.php ==> 결과 name = 'jisu'
HTTP Status Code (코드를 봤을 때 어떤 상태인지는 알아두기!)
- 200 : GOOD(성공)
- 300 : Redirect(리다이렉션)
- 400 : 클라이언트 측 오류(정신차려!) -> 400 Bad Request, 404 NOT FOUND
- 500 : 서버 측 오류 -> 500 Internal Server Error
====================================================================
서버측 코드 VS 클라이언트측 코드 : 실행되는 위치에 따라 구분
- 서버측 코드 : 웹서버 쪽에서 실행! (개발쪽에서는 백엔드 - php, jsp, python...)
- 클라이언트측 코드 : 웹 브라우저 쪽에서 실행! (개발쪽에서는 프론트엔드 - html, javascript... )
=======================================================================
Burp Suite
- 웹 프록시 툴, 리피터 기능도 있다
- 웹 브라우저와 웹 서버 사이에서 데이터를 주고받음 (MITM 공격과 흐름이 비슷한것 같다?)
클라이언트 <-> 웹 브라우저 <->[BurpSuite] <-> 웹서버
[아이콘 저작권]
디지털 아이콘 제작자: Muhammad_Usman - Flaticon
Ui 아이콘 제작자: Ilham Fitrotul Hayat - Flaticon
'모의해킹 공부 > 모의해킹 스터디' 카테고리의 다른 글
[0504 Day06] XSS(Cross Site Scripting)-01 (0) | 2023.05.05 |
---|---|
[0427 Day05] SQL Injection-03 (1) | 2023.04.28 |
[0420 Day04] SQL Injection-02 (0) | 2023.04.21 |
[0413 Day03] SQL Injection -01 (0) | 2023.04.14 |
[0406 Day02] HTTP 로그인& Cookie & Session (0) | 2023.04.07 |