여니의 성장 diary
728x90
반응형

웹 보안

  • 지속적으로 진화하고 발전하는 분야
  • 다양한 보안 취약점에 대한 방어 수단을 적용하는 것이 중요
  • 개발자는 보안 최적화를 위한 지속적인 교육 및 업데이트를 수행하여 웹 애플리케이션의 안정성 확보

 

HTTPS (Hypertext Transfer Protocol Secure)

  • HTTP의 보안 버전
  • 데이터를 암호화하여 안전한 통신을 제공
  • SSL (혹은 TLS) 프로토콜을 사용하여 데이터 암호화
  • 사이트의 신뢰성 검증을 위해 SSL/TLS 인증서 사용

 

쿠키 (Cookies)

  • 클라이언트에 저장되는 작은 데이터 조각
  • 웹 브라우저를 통해 서버에 상태 정보 전송
  • 세션 유지, 사용자 추적, 로그인 정보 등에 활용
  • 보안을 강화하기 위해 HttpOnly 및 Secure 속성 사용 권장

 

세션 (Session)

  • 클라이언트와 서버간의 상태 정보를 유지하기 위한 메커니즘
  • 서버 측에서 유지, 클라이언트는 세션 ID를 통해 식별
  • 주로 로그인 상태, 장바구니 등에 사용
  • 세션 하이재킹 방어를 위해 세션 ID의 안전한 전송과 저장이 필요

 

보안 취약점

SQL 인젝션 (SQL Injection)

  • 악의적인 SQL 쿼리를 입력하여 데이터베이스를 조작하는 공격
  • 매개변수화된 쿼리 사용, ORM 프레임워크 사용 권장

크로스 사이트 스크립팅 (Cross-Site Scripting, XSS)

  • 악성 스크립트를 삽입하여 사용자의 브라우저에서 실행하게 되는 공격
  • 사용자의 입력 데이터를 적절히 이스케이핑하고, Content Security Policy(CSP) 사용 권장

크로스 사이트 요청 위조 (Cross-Site Request Fergery, CSRF)

  • 사용자가 의도하지 않은 요청을 악의적으로 전송하는 공격
  • CSRF 토큰을 사용하여 요청의 유효성 검증

클릭재킹 (Clickjacking)

  • 사용자가 의도하지 않은 클릭을 유도하여 악의적인 동작을 수행하는 공격
  • X-Frame-Options 헤더를 사용하여 요청의 유효성 검증

세션 피싱 (Session Hijacking)

  • 세션 ID를 탈취하여 세션을 임의로 조작하는 공격
  • HTTPS 사용, 안전한 세션 관리 등으로 방어

보안 헤더 사용

  • 서버에서는 보안 헤더를 사용하여 다양한 공격을 방어
  • 예시 : Strict-Transport-Security, X-Content-Type-Options, X-Frame-Options, Content-Security-Policy 등

 

728x90
반응형
profile

여니의 성장 diary

@pponyo

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!