상식닷컴
로그인
가입하기
2026년 상식닷컴 선정 식당 & 카페 리스트
2025년 2026년 신상 호텔 리스트
최근에 오픈한 호텔을 찾는다면 살펴보세요
일주일 식단표 어플
자동 일주일 식단표 어플
안드로이드
아이폰
주식 & 코인 차트의 신
1000만원으로 2000만원 만들기 프로젝트
수정하기 - 해킹 공부: 웹 해킹의 기초 5가지를 배워보세요
닉네임
비밀번호
제목
내용
[이미지 업로드는 권한이 있는 사람만 가능. 하단 카톡으로 연락]
웹 해킹을 공부할 때 가장 먼저 이해해야 할 것은 웹 애플리케이션이 어떻게 동작하는지, 그리고 그 과정에서 어떤 부분이 공격에 취약해질 수 있는지 파악하는 일입니다. 아래 다섯 가지 기초 개념을 차례로 살펴보면서 각 취약점이 어떻게 발생하고, 공격자가 이를 어떻게 이용하며, 방어를 위해 어떤 조치를 취해야 하는지 알아보겠습니다. 1. HTTP 프로토콜과 웹 애플리케이션 구조 이해 웹 해킹의 첫걸음은 클라이언트(브라우저)와 서버 간에 주고받는 HTTP 요청(Request)·응답(Response)의 구조를 이해하는 것입니다. - HTTP <a href='https://sangseek.com/sangseeks/메시지 구조/ko'>메시지 구조</a>: 메서드(GET, POST 등), 헤더(Host, Cookie, User-Agent 등), 본문(Body) - URL 파라미터와 폼 데이터: 쿼리스트링(?key=value), 폼 인코딩(application/x-www-form-urlencoded, multipart/form-data) - 세션 및 쿠키: 서버는 세션ID를 쿠키에 저장해 사용자 상태를 관리 이런 기본을 알아야 요청을 조작(manipulation)하거나 정상적인 흐름을 변형해 취약점을 찾는 것이 가능합니다. 2. SQL 인젝션(SQL Injection) 웹 애플리케이션이 사용자 입력을 그대로 데이터베이스 쿼리에 포함시킬 때 발생하는 취약점입니다. - 발생 원인: 입력값 검증·필터링 부재, 쿼리 문자열을 문자열 결합으로 처리 - 공격 방식: 로그인 폼에 `admin' OR '1'='1` 같은 페이로드를 입력해 인증 우회 또는 데이터를 탈취 - 예시 사용자가 입력한 `id`를 그대로 쿼리에 삽입할 때 ```sql SELECT * FROM users WHERE id = '사용자입력'; ``` → `사용자입력`에 `anything' OR '1'='1`을 넣으면 모든 레코드를 반환 - 방어 방법 * Prepared Statement(파라미터라이즈드 쿼리) 사용 * 입력값 화이트리스트 검증 및 길이 제한 * 최소 권한 원칙(데이터베이스 계정에 불필요한 권한 제한) 3. 크로스사이트 스크립팅(XSS, Cross-Site Scripting) 공격자가 악성 스크립트를 웹 페이지에 주입해 다른 사용자의 브라우저에서 실행하게 만드는 기법입니다. - 분류 * 반사형(Reflected XSS): 요청 파라미터가 즉시 응답에 반영될 때 * 저장형(Stored XSS): DB 등에 악성 스크립트가 저장되어 다수 사용자에게 전파 * DOM 기반(DOM-based XSS): 클라이언트 스크립트가 URL fragment 등을 직접 처리할 때 - 피해 사례: 세션 쿠키 탈취, 피싱·정상 기능 변조, 키로깅 - 방어 방법 * 출력 시 HTML 이스케이프(특수문자 변환) * Content Security Policy(CSP) 적용 * 입력값 검사와 함께 가능하면 사용자 입력을 HTML이 아닌 템플릿 변수로 처리 4. 인증·세션 관리 취약점 제대로 검증되지 않은 인증 로직이나 세션 관리를 통해 공격자가 다른 사용자의 권한을 탈취할 수 있습니다. - 세션 하이재킹(Session Hijacking): 세션ID를 탈취해 유효 세션으로 접근 - 세션 고정(Session Fixation): 공격자가 미리 생성한 세션ID를 피해자에게 사용하도록 유도 - 비밀번호 무차별 대입(Brute Force)·사전 공격(Dictionary Attack): 짧거나 예측 가능한 비밀번호 이용 - 방어 방법 * 로그인 성공 시 세션ID 재생성(세션 고정 방지) * 쿠키에 HttpOnly, Secure, SameSite <a href='https://sangseek.com/sangseeks/속성 설정/ko'>속성 설정</a> * 다단계 인증(MFA) 도입 및 강력한 비밀번호 정책 시행 5. 크로스사이트 요청 위조(CSRF, Cross-Site Request Forgery) 사용자가 신뢰하는 사이트에 로그인된 상태에서, 공격자가 조작한 웹 요청을 사용자의 권한으로 실행하게 만드는 공격입니다. - 공격 시나리오: 공격자는 피해자의 브라우저를 통해 은행 이체, <a href='https://sangseek.com/sangseeks/계정 정보/ko'>계정 정보</a> 변경 등 민감한 동작을 수행 - 방어 방법 * CSRF 토큰(폼 토큰)을 모든 상태 변경 요청에 포함하고, 서버에서 검증 * SameSite 쿠키 속성을 `Strict` 또는 `Lax`로 설정해 외부 요청 시 쿠키 전송 차단 * 중요 요청은 Referer 헤더 체크(정상 도메인이 아닐 경우 차단) ––– 이 다섯 가지 기초 개념을 충분히 숙지하고, 각 취약점을 직접 모의 실습 환경(로컬 혹은 CTF 플랫폼)에서 반복적으로 연습해 보세요. 개념을 이해하는 것만으로는 부족하고, 실제로 공격 페이로드를 만들어 보고, 웹 애플리케이션 방어 메커니즘을 우회해 보는 경험이 웹 해킹 역량을 키우는 지름길입니다.
이용안내
커뮤니티 이용안내
×
- 게시한 게시글로 발생하는 문제는 게시자에게 책임이 있습니다.
- 게시글이 타인/타업체의 저작권을 침해할 경우 모든 책임은 게시자에게 있습니다. 게시자가 모든 손해를 부담해야 합니다.
- 상식닷컴 운영자는 게시자와 상의하지 않고 게시글을 수정 또는 삭제할 수 있습니다.
- 상식닷컴 운영자는 깨끗한 커뮤니티 공간을 만드는 것이 1순위입니다.
수정하기
취소하기