Overview of Web Application Security
두비니
·2023. 4. 12. 19:32
1. 월드 와이드 웹
월드 와이드 웹(World Wide Web) : 1991년 팀 버너스리에서 개발
- 인터넷에 연결된 컴퓨터들이 하이퍼텍스트(hypertext)형식으로 연결되고 표현됨
3계층 웹 아키텍쳐와 수직 계층⭐?
- Presentation Tier - Front-end
- Client에게 보이는 부분. 웹 브라우저를 통해 접속하며 웹 기반의 UI생성/흐름 관리 계층
- HTTP 요청 전송시 인터넷을 통해 서버 영역으로 전달
- Application Tier (Logic Tier) - Back-end
- 웹 서버(IIS, Apache, NGINX)와 웹 프레임워크(ASP, Ruby, Django) 포함
- 클라이언트를 통해서 전달된 HTTP요청을 처리하고 응답하는 역할
- Database Tier - Back-end
- Back-end database/legacy system과 연동하는 역할
- Logic Tier에서 들어오는 SQL 쿼리문에 따라 데이터 처리 및 응답
2. 인터넷 프로토콜
- 인터넷 프로토콜: 서버와 클라이언트가 인터넷상에서 데이터를 주고받기 위한 규약
- HTTP vs. HTTPS
- HTTPS가 보안적 기능이 추가됨
- HTTP 기본 접속포트: 80, HTTPS 기본 접속포트: 443
- OSI 7 Layer 주요 프로토콜 설명⭐⭐
- 응용계층(Application Layer): HTTP, SMTP, FTP, Telnet
- 표현 계층(Presentation Layer): SSL, ASCII
- 세션 계층(Session Layer): NetBIOs, RPC(Remote Procedure Call), WinSock(Windows Socket)
- 전송 계층(Transport Layer): TCP, UDP
- 네트워크 계층(Network Layer): IP, ICMP, IGMP
- 데이터 링크 계층(Data Link Layer): Ethernet, HDLC, PPP
- 물리 계층(Physical Layer): RS-232, X.25/X.21
3. HTTP의 기본 개념
- HTTP의 통신과정
- HTTP request Protocol의 구조
- Request Link: 요청 타입(GET, POST, PUT, DELETE), URI, HTTP 버전
- Header
- Body
4. 웹 서비스의 이해
- 클라이언트와 서버들은 개별적인 메시지 교환에 의해 통신
- 클라이언트 측 기능: HTML, HyperLink, CSS, Script(JavaScript, VBScript, JScript)
- 서버 측 기능: 스크립트 언어, 웹 애플리케이션 플랫폼, 웹 서버, 데이터베이스, 백엔드 컴포넌트
Proxy Server
정의: 클라이언트가 자신을 통해서 다른 네트워크 서비스에 간접적으로 접속할 수 있게 하는 컴퓨터 시스템이나 응용 프로그램을 의미
- 클라이언트와 서버 사이의 중계기로써, 대리로 통신을 수행하는 것을 프록시라고 함
- 중계 기능을 하는 것을 프록시 서버(웹 프록시)라고 함
Proxy Server를 사용하는 이유
- 웹 캐싱(Web Caching)을 하기 위해 Proxy Server를 주로 사용
- 웹 캐싱이란? 클라이언트가 서버에게 무언가를 요청할 때, 프록시 서버가 이를 이미 가지고 있다면 전달해줌
- 웹 캐싱을 통해 웹의 속도를 향상(데이터 전송시간), 대역폭 (외부 트래픽 감소)을 줄일 수 있음
- 프록시 서버 중 일부는 프록시 서버에 요청된 내용을 캐시를 이용하여 저장
- 전송 시간을 절약&불필요하게 외부와의 연결을 하지 않아도 됨
보안 관점에서의 Proxy Server
Proxy Server의 사용목적
- 보안 정책 상 허용되지 않는 URL에 접속하지 못하게 함
- 해킹 위험이 있는 URL을 필터링
Cookie & Session
HTTP의 특징은 Stateless하고 Stateless하다는 점이다. 따라서 편의를 위해 cookie와 session을 사용한다.
https://dokhakdubini.tistory.com/344
둘 사이의 차이점
5. 인터넷 거버넌스
- 인터넷의 유일한 식별자인 도메인 이름, 시스템(DNS)과 IP 주소, 프로토콜 번호와 매개변수 배정 등을 관리
- IANA(인터넷할당번호관리기관)
- ISOC(인터넷소사이어티)
- IETF, IESG, IAB
- World Wide Web Consortsium(월드와이드웹컨소시엄)
- Internatioinal Telecommunication Union(국제전기통신연합)
'WEB' 카테고리의 다른 글
XSS(Cross Site Scripting) (0) | 2023.04.13 |
---|---|
Web Security Fundamentals (Same-Origin Policy, CORS) (0) | 2023.04.13 |
draft (0) | 2022.08.20 |
SSTI Bypass (0) | 2021.11.07 |
[WEB] SSRF(Server Side Request Forgery)에 대해서 (0) | 2021.08.09 |