웹 보안 학습 경로: HTTP·세션·SQLi·XSS 실습
YOUR LEARNING PATH
요청과 응답이 어떻게 오가는지 이해하고, 로그인 상태와 입력 처리가 어떤 경계에서 동작하는지 살펴봅니다. 취약점 이름만 외우기보다 원인, 관찰한 결과, 방어 방법을 함께 정리하는 경로입니다.
누구를 위한 경로인가요?
웹의 기초와 네트워크를 익힌 뒤 웹 보안을 학습하려는 분, 워게임을 시작하기 전에 HTTP와 세션을 정리하려는 분
시작 전 준비
HTML·JavaScript·HTTP와 기본 프로그래밍을 먼저 확인하세요. 보안 실습은 자신의 로컬 랩이나 각 수업에서 허용한 학습 플랫폼에서 진행합니다.
이 경로에서 익힐 것
- HTTP 요청·응답과 쿠키·세션의 역할을 설명합니다.
- 실습 환경에서 입력 처리와 인증·접근 제어의 차이를 관찰합니다.
- SQLi·XSS 등 학습 결과를 원인·증거·방어 관점으로 정리합니다.
STEP BY STEP
추천 학습 순서
웹의 구조와 요청 이해하기
- 071 HTML/CSS 기초 — 웹페이지의 뼈대와 옷빈 파일에서 시작해 제목·문단·링크·이미지·목록·입력창이 있는 웹페이지를 손으로 만든다
- 072 JavaScript 기초 — 웹페이지를 살아 있게 하는 언어파이썬과 비교해 JS 기초 문법(let/const, function, console.log)을 쓴다
- 073 HTTP 완전 이해 — 웹의 대화 규칙python -m http.server로 내 컴퓨터에 실습용 웹서버를 띄운다
- 074 requests 라이브러리 — 파이썬으로 웹과 대화하기POST와 쿠키를 이해하는 연습용 서버(lab.py)를 파이썬으로 직접 만든다
- 075 BeautifulSoup 크롤링 — HTML에서 원하는 것만 뽑기BeautifulSoup(문자열, "html.parser")로 HTML 문자열을 탐색 가능한 구조로 바꾼다
- 076 크롤러와 자동화 — 매일 혼자 일하는 수집기루프백에서 실습 사이트를 실행합니다.
요청을 관찰하고 상태 관리 익히기
- 131 웹 서버 직접 만들기 — 로그인과 세션sqlite3 DB에 계정을 만들고 로그인 검증을 구현할 수 있다
- 132 Burp Suite 1: 프록시 가로채기 — 브라우저와 서버 사이에 끼어들기프록시가 브라우저와 서버 사이에서 무엇을 하는지 설명할 수 있다
- 133 Burp Suite 2: Repeater와 Intruder — 반복 실험대와 자동 기관총잡은 요청을 Repeater로 보내 반복 실험할 수 있다
- 134 쿠키와 세션 공격 — 서버가 믿는 신분증을 흔들다쿠키와 세션이 로그인 상태를 유지하는 구조를 요청·응답 헤더 수준에서 설명한다
취약점 실습과 접근 제어로 확장하기
- 135 DVWA 세팅과 SQLi 기초 — Low와 Medium을 넘다DVWA를 Docker로 띄우고 보안 난이도를 조절할 수 있다
- 136 SQLi 심화 — UNION으로 데이터베이스 통째로 빼내기UNION SELECT가 두 결과를 합치는 규칙(컬럼 수 일치)을 설명한다
- 137 Blind SQLi와 sqlmap — 보이지 않아도 빼낸다Boolean-based Blind SQLi의 오라클(참/거짓 답변 장치) 원리를 설명한다
- 138 XSS 기초 — Reflected와 Stored, 브라우저 안의 배신자XSS가 SQL 인젝션과 다른 점(공격 대상이 브라우저)을 설명한다
- 140 CSRF: 요청 위조 — 피해자의 브라우저가 대신 클릭한다브라우저의 쿠키 자동 전송 특성이 CSRF를 가능하게 하는 원리를 설명한다
- 143 명령어 인젝션 — 검색창이 서버의 터미널이 되는 순간명령어 인젝션의 성립 조건(입력 결합 + 셸 실행)을 코드에서 찾아낸다
- 148 OWASP Juice Shop 1: 현대적 웹앱 입문 — 공격 무대가 바뀌었다SPA(싱글 페이지 앱)와 전통 웹앱의 구조 차이를 설명한다
- 149 Juice Shop 2 — 접근 제어와 IDORIDOR이 생기는 조건("인증은 하되 인가를 안 한다")을 설명한다
- 150 Juice Shop 3 — JWT와 비즈니스 로직JWT의 세 덩어리(헤더.페이로드.서명)를 분해하고 내용을 읽는다
- 151 드림핵 웹 입문 — 첫 실전 문제드림핵 워게임의 문제 구성 요소(제목·설명·URL·플래그 제출)를 안다
다음 단계로 가기 전에
실습 하나를 마칠 때 요청 조건, 관찰한 응답, 취약한 처리와 방어 방법을 함께 기록하세요. 플랫폼의 허용 범위와 수업의 준비 조건을 확인한 다음 다음 실습으로 넘어갑니다.
수업별 준비물과 완료 기준을 먼저 확인하고, 익숙한 내용은 필요한 수업부터 읽어도 좋습니다.