상식닷컴
로그인
가입하기
2026년 상식닷컴 선정 식당 & 카페 리스트
2025년 2026년 신상 호텔 리스트
최근에 오픈한 호텔을 찾는다면 살펴보세요
일주일 식단표 어플
자동 일주일 식단표 어플
안드로이드
아이폰
주식 & 코인 차트의 신
1000만원으로 2000만원 만들기 프로젝트
궁금한 상식 보기
영어회화에서 직장 생활에 대해 이야기할 때 유용한 질문은?
인공지능과 윤리: 8가지 고민해볼 질문들
근육을 위한 최고의 아침 식사 5가지
근육을 최적화하기 위한 효과적인 루틴 5가지
뇌염을 예방하기 위한 5가지 생활 습관
챗GPT에 대해 알고 있어야 할 7가지 진실
챗GPT, 당신의 콘텐츠 제작을 쉽게 만드는 6가지 이유
챗GPT로 창의적인 마케팅 전략 구상하기 7가지 비법
스트레스를 줄이는 근력운동의 6가지 효과!
근력운동이 생기를 주는 5가지 방법!
근력운동이 정신적 업무 능력을 향상시키는 10가지 팁!
CHATGPT의 피드백 메커니즘은 무엇인가요?
Previous
Next
수정하기 - 해킹 공부: 웹 해킹의 기초 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순위입니다.
수정하기
취소하기