연락처 정보

코스 개요

I. 보안 코딩 및 웹 애플리케이션 보안 개요

1. 현대 웹 애플리케이션 위협 환경

  • 일반적인 웹 애플리케이션 공격 벡터
  • 현대 ASP.NET 애플리케이션의 보안 리스크
  • 소프트웨어 개발에서 보안 코딩의 역할
  • OWASP 재단 및 그 자원 소개

2. 보안 소프트웨어 개발 원칙

  • 설계 단계의 보안 (Security by design)
  • 중첩 방어 (Defense in depth)
  • 최소 권한 (Least privilege)
  • 안전한 실패 처리 (Fail securely)
  • 보안 기본값 (Secure defaults)
  • 위협 모델링 기초

II. 보안 개발 라이프사이클 (SDL)

1. 보안 소프트웨어 개발 라이프사이클

  • 개발 라이프사이클 전반의 보안
  • 보안 요구사항
  • 보안 아키텍처 및 설계
  • 보안 코딩 관행
  • 보안 테스트 및 검증
  • 보안 배포 및 유지보수

2. 리스크 평가 및 위협 모델링

  • 자산 및 위협 식별
  • 공격 표면 분석
  • STRIDE 개요
  • 보안 리스크 우선순위 설정

III. ASP.NET 애플리케이션을 위한 OWASP Top 10

1. OWASP Top 10 이해하기

  • 파손된 액세스 제어
  • 암호화 실패
  • 인젝션
  • 비보안 설계
  • 보안 설정 오류
  • 취약하거나 오래된 컴포넌트
  • 식별 및 인증 실패
  • 소프트웨어 및 데이터 무결성 실패
  • 보안 로깅 및 모니터링 실패
  • 서버 사이드 요청 위조 (SSRF)

2. OWASP 권장 사항 적용

  • 보안 코딩 기술
  • 예방적 제어
  • 보안 설정 관행
  • 실제 사례 및 데모

IV. 인증 및 인가 보안

1. 인증 기초

  • ASP.NET의 인증 메커니즘
  • 비밀번호 보안
  • 다중 인증 (Multi-factor authentication)
  • 세션 관리
  • 신원 관리

2. 인가 및 액세스 제어

  • 역할 기반 인가
  • 클레임 기반 인가
  • 정책 기반 인가
  • 권한 상승 방지
  • 민감한 리소스 보호

V. 인젝션 공격 방지

1. 인젝션 취약점

  • SQL 인젝션
  • 명령 인젝션
  • LDAP 인젝션
  • XML 인젝션
  • NoSQL 인젝션 개요

2. 보안 코딩 기술

  • 파라미터화 쿼리
  • 입력 검증
  • 출력 인코딩
  • ORM 보안 고려 사항
  • 안전한 데이터베이스 접근 관행

VI. 크로스 사이트 스크립팅 (XSS) 방지

1. XSS 이해하기

  • 저장형 XSS
  • 반사형 XSS
  • DOM 기반 XSS
  • 공격 시나리오

2. XSS 방지

  • 출력 인코딩
  • 입력 검증
  • 콘텐츠 보안 정책 (CSP)
  • HTML 및 JavaScript의 안전한 처리
  • XSS 방지를 위한 ASP.NET 보안 기능

VII. 크로스 사이트 요청 위조 (CSRF) 방지

1. CSRF 이해하기

  • CSRF 공격의 작동 방식
  • 일반적인 공격 시나리오
  • 비즈니스 영향

2. CSRF 보호

  • 위조 방지 토큰
  • SameSite 쿠키
  • 보안 세션 관리
  • ASP.NET 위조 방지 메커니즘

VIII. ASP.NET 애플리케이션의 보안 설정

1. ASP.NET 보안 기능

  • 설정 보안
  • 보안 HTTP 헤더
  • HTTPS 및 TLS 설정
  • 시크릿 관리
  • 보안 에러 처리

2. 민감한 데이터 보호

  • 데이터 보호 API
  • 자격 증명 안전 저장
  • 암호화 기초
  • 키 관리

IX. 입력 검증 및 안전한 데이터 처리

1. 사용자 입력 검증

  • 화이트리스트 vs 블랙리스트
  • 서버 사이드 검증
  • 클라이언트 사이드 검증 고려 사항
  • 파일 업로드 보안

2. 안전한 데이터 처리

  • 직렬화 보안
  • 역직렬화 리스크
  • 데이터 무결성
  • 안전한 로깅 관행

X. 침투 테스트 및 보안 검증

1. 침투 테스트 메서드론

  • 보안 평가 계획 수립
  • 취약점 식별
  • 활용 개념
  • 발견 결과 보고

2. 보안 테스트 기법

  • 정적 애플리케이션 보안 테스트 (SAST)
  • 동적 애플리케이션 보안 테스트 (DAST)
  • 인터랙티브 애플리케이션 보안 테스트 (IAST)
  • 의존성 및 컴포넌트 분석
  • 수동 코드 리뷰

XI. ASP.NET 애플리케이션 보안화

1. 보안 코딩 관행 적용

  • 보안 인증 구현
  • 보안 인가 구현
  • 세션 보안
  • 예외 처리
  • 로깅 및 모니터링
  • 보안 배포 고려 사항

2. 보안 모범 사례

  • 보안 코딩 표준
  • 의존성 관리
  • 패치 관리
  • 지속적인 보안 개선

XII. 실습 보안 워크숍

1. 일반 취약점 식별 및 활용

  • 비보안 ASP.NET 코드 분석
  • OWASP Top 10 취약점 식별
  • 공격 기법 이해
  • 애플리케이션 보안 평가

2. 보안 문제 완화

  • 보안 코딩 수정 적용
  • 완화 조치 검증
  • 수정된 애플리케이션 테스트
  • 보안 코딩 리뷰 연습

XIII. 요약 및 과정 복습

1. 핵심 개념 복습

  • 보안 설계 원칙
  • OWASP Top 10 완화 전략
  • ASP.NET 보안 기능
  • 보안 개발 라이프사이클

2. 최종 토론

  • 보안 코딩 모범 사례
  • 개발 팀 내에 보안 구축하기
  • 추가 OWASP 자원 및 도구
  • Q&A 및 다음 단계

요건

ASP.net 경험
웹 애플리케이션 생성 경험

 21 시간

참가자 수


참가자별 가격

회원 평가 (5)

예정된 코스

관련 카테고리