본문 바로가기
Computer/Computer Security

웹 보안 및 모바일 보안

by curious week 2025. 4. 1.

01. 웹 보안의 개요

웹 서비스 구조

웹 클라이언트 (브라우저)
     ↓ HTTP
웹 서버 ↔ 웹 애플리케이션 ↔ DB

보안 필요성

  • 모든 구성 요소에서 공격 가능성 존재
  • 특히 웹 애플리케이션 ↔ DB 사이에 취약점 많음
  • 네트워크 구간은 SSL/TLS로 보호 가능하지만, 애플리케이션과 DB 보안은 별도 대책 필요

02. 웹 보안 위협 요소

1. SQL Injection (SQL 삽입 공격)

  • 쿼리에 악성 SQL문을 삽입해서 인증 우회나 데이터 탈취
  • 예시:
SELECT * FROM users WHERE id = '$id' AND pw = '$pw';

입력값에 ' OR '1'='1 넣으면 무조건 참이 돼서 인증 우회 가능

방어법

  • Prepared Statement (매개변수 바인딩)
  • 입력값 검증
  • 최소 권한 DB 계정 사용

2. XSS (Cross Site Scripting)

  • 악성 스크립트를 웹페이지에 삽입해, 피해자 브라우저에서 실행되도록 함
  • 사용자의 쿠키 탈취, 세션 탈취 등 가능

공격 유형

저장형 게시판 글에 <script> 삽입
반사형 URL에 스크립트 포함 → 클릭 시 실행됨

방어법

  • 입력값 정제 (<script> 제거, < → &lt;)
  • 출력 시 이스케이프 처리
  • CSP(Content Security Policy) 설정

3. 접근제어 실패

  • 숨겨진 URL(예: /admin)을 추측해서 접근하거나, URL에 사용자 ID를 직접 입력해 남의 정보 조회 가능

방어법

  • URL 접근 제한
  • 로그인/역할 기반 접근 통제
  • 서버단에서 사용자 권한 체크 필수

4. 웹 서버 공격

  • 테스트 파일이나 디렉토리 인덱스 등이 외부에 노출되어 공격 가능
  • 보안 패치 미적용 → 취약점 노출

방어법

  • 디렉토리 리스팅 비활성화
  • 불필요한 포트/서비스 차단
  • 정기 보안 패치 적용

03. 모바일 보안의 개요

환경

  • 스마트폰, 패드, 노트북 등
  • Wi-Fi, 5G 등 무선 네트워크 사용 → 도청 위험 높음

주요 보안 요구사항

  • 인증 / 접근제어
  • 데이터 보호 (암호화)
  • 통신 보호 (무결성/기밀성)

04. 모바일 보안 기법 (무선 LAN 중심)

1. WEP (Wired Equivalent Privacy)

  • 초기 Wi-Fi 보안 방식
  • RC4 기반 스트림 암호 사용
  • 키 분배 없음 → 암호키 고정 → 쉽게 깨짐
  • 현재는 사용 금지 수준

2. RSN (Robust Security Network) — IEEE 802.11i

핵심 구성요소

기밀성/무결성 데이터 보호 TKIP, CCMP
인증/키 교환 네트워크 접근 인증 802.1X + EAP

3. TKIP (Temporal Key Integrity Protocol)

  • WEP 호환 장비에서 사용할 수 있게 만든 과도기 보안 프로토콜
  • 매 데이터 프레임마다 키 변경하여 보안 강화
  • 하지만 구조상 완전한 대체는 불가

4. CCMP (Counter with CBC-MAC Protocol) ⭐️

  • 802.11i의 표준 보안 방식
  • AES 기반 CTR 모드기밀성
  • CBC-MAC으로 무결성
  • 현재 대부분의 Wi-Fi 보안의 표준

5. 802.1X

  • 포트 기반 네트워크 접근제어
  • 인증 서버(RADIUS 등)와 통신하여 접속 인증 후 네트워크 사용 허용
  • 회사, 학교, 기관 Wi-Fi에서 주로 사용

6. EAP (Extensible Authentication Protocol)

  • 802.1X에서 사용되는 인증 프레임워크
  • 다양한 인증 방식 지원 (비밀번호, 인증서, OTP 등)
  • 인증 후 공통 키(PMK) 공유 → 통신 보호

7. WPA / WPA2 / WPA3

WPA (2003) TKIP 기반, 임시 대안
WPA2 (2004~) CCMP + AES 기반, 가장 널리 사용
WPA3 (2018~) 복잡한 설정 단순화, 개인 네트워크 보안 강화, 192-bit 모드 추가

전체 구조

[웹 보안]
  ├─ SQL Injection → 입력 검증 + PreparedStatement
  ├─ XSS → 입력/출력 이스케이프
  ├─ 접근제어 → 권한 확인, 서버단 체크
  └─ 서버 보안 → 패치, 디렉토리 비노출

[모바일 보안]
  ├─ WEP → 폐기
  ├─ WPA2 (CCMP + AES) → 현재 표준
  ├─ 802.1X + EAP → 네트워크 접근 인증
  └─ WPA3 → 단순화 + 보안 강화

보충 예시: XSS 방어 코드 (Spring Boot)

String safeInput = StringEscapeUtils.escapeHtml4(userInput);
// <script>alert(1)</script> → &lt;script&gt;alert(1)&lt;/script&gt;

'Computer > Computer Security' 카테고리의 다른 글

디지털 포렌식  (0) 2025.05.13
React Native 보안 체크리스트  (1) 2025.04.01
이메일 보안  (0) 2025.04.01
DB(데이터베이스) 환경 보안 체크리스트  (0) 2025.04.01
보안 시스템 II  (1) 2025.04.01