1. 웹서버 구조(3 Tier Architecture)
1.WEB server
- 정적 페이지 제공
2. WAS(Web App Server)
- 동적 페이지 제공
3. DB(Data Base)
- 데이터의 관리
사용자가 php를 WAS에 요청 --> WAS에서 DB로 데이터를 요청 --> WAS에 Data 전달 --> WAS에서 페이지를 만들어서 WEB server에 전달 --> WEb server가 사용자에게 html을 보여줌
2. APM (Apache, Php, MySQL)셋팅
Virtual Box , Putty사용
Normaltic님께서 제공해주신 가상머신을 활용하여 진행하였다.
- WEB_DEV 디렉토리로 이동
- sudo chown 으로 webApp디렉토리에 대한 권한을 변경
- WEB_DEV 디렉토리에 있는 dockerCMD파일을 백그라운드로 실행
- MySQL은
https://ip주소:포트/phpmyadmin
3. Web Proxy Tool
웹 - Proxy - WAS
웹과 WAS에서 어떠한 요청을 하고 어떤 데이터를 전달했는지, 즉 파라미터를 볼 수 있어야 함.
따라서 Web Proxy Tool을 사용한다.
Burp Suite 사용
Burp Suite를 사용해서 어떤 파라미터가 오고 갔는지 살펴보자
Proxy탭에서 intercept한 Request를 Repeator로 보내 Request를 Send하면 위의 화면과 같이 Response가 출력된다.
먼저, Request를 살펴보자.
맨 윗 부분에 GET /test.php HTTP/1.1을 보면 [Method / Path / HTTP Version]으로 구성되어 있다.
[Method]에는 GET방식과 POST 방식이 있다.
GET 방식은 파일을 요청할 때 사용한다.
POST 방식은 파일을 요청함과 동시에 데이터도 요청할 때 사용한다.
ex)로그인 할 때 ID와 PW를 WAS에 전달할 때 POST 방식으로 요청한다.
[Path]는 요청한 파일이 있는 경로
[HTTP Version]
보통의 경우는 HTTP2.0을 사용하지만, Burp Suit은 HTTP1.1을 사용한다.
밑에 부분은 [헤더]로 클라이언트 정보를 포함한다. (host, 언어, browser 정보 등등...)
다음, Response를 살펴보자.
마찬가지로 HTTP/1.1 200 OK를 보면 [HTTP Version / Status code]로 구성되어 있다.
[Status code]
200 → OK
3xx → Redirect (다른 경로로 이동시킬 때)
4xx → 클라이언트 문제
→ 404 Not Found
5xx → Server 에러
'Normaltic 웹해킹 취업반' 카테고리의 다른 글
2주차 수업 (2) (0) | 2022.10.23 |
---|---|
2주차 수업 (1) (0) | 2022.10.22 |