본문 바로가기
SK shieldus Rookies 16기

[SK shieldus Rookies 16기] 클라우드 기반 스마트 융합 보안 과정 교육 정리(34일차)

by Challenge programmers 2023. 12. 11.

 

 

오늘 학습 주제

1. 취약점 진단

2. 취약점 진단 실습 - XSS

3. 클라우드 진단

 

 

 

 

취약점 진단


- 취약점 진단 -

 

취약점 진단
정의 시스템이나 소프트웨어의 보안 상태를 평가하고 가능한 취약점을 식별하는 프로세스
특징
  • 모의해킹은 제로베이스이며 기간이 오래 걸림

  • 취약점 진단은 사전에 정보를 받고 진단

 

 

- 동적 진단 vs 정적(소스 코드) 진단 -

 

 

 

- 취약점 진단 과정 -

 

취약점 진단 과정
정의 시스템이나 소프트웨어의 보안 상태를 평가하고 가능한 취약점을 식별하는 프로세스
특징
  1. 대상 서비스 정보 수집 / 획득

  2. 환경 분석(서비스 분석)
    • 아키텍쳐의 관점에서 환경을 확인하고 그에 맞는 취약점 분석
    • 서비스에 대한 이해를 위해 수행
    • 제한된 시간에서 효율적으로 취약점 진단을 하기 위한 과정
  3. 취약점 진단 수행

  4. 보고서 작성 및 취약점 리뷰

  5. 취약점 조치 및 이행점검 수행

 

 

 

 

- 보고서 작성법 -

보고서 작성법
정의 진단한 취약점을 
특징
  • 해결방안은 최선을 방식을 제안하며 상황에 따라 차선과 차차선 방안을 제안하여 가이드 작성

  • 문제점 작성법

 

 

 

 

취약점 진단 실습 - XSS


- XSS/CSRF 공격 -

XSS / CSRF 공격
정의 특정 페이지나 기능에 악의적인 스크립트를 삽입하여 공격자가 의도한대로 행동하도록 하는 취약점
특징
  • 사용자의 정보 유출을 탈취하는 피싱 공격
  • Reflected X
    • 사용자(웹 브라우저) > 서버 > 사용자(웹 브라우저)
    • 피싱 메일 / 스미싱 링크
  • Stored XSS
    • 사용자(웹 브라우저) > 서버 > DB > 서버 > 사용자(웹 브라우저) 
    • DB에 저장이 되기 때문에 가장 위험
    • 단독으로 공격이 가능
  • DOM-Based XSS
    • 사용자(웹 브라우저)
    • 서버를 거치지 않는 XSS
    • 클라이언트 언어에서 개발적 결함(보안상 안전하지 않은 함수)로 인해 발생
보안
대책
  • [애플리케이션] 외부로부터 입력되는 모든 문자열에 대해 특수문자 필터링 적용

  • [애플리케이션] 외부로부터 입력되는 모든 문자열에 대해 키워드 필터링 적용

  • [애플리케이션] 오픈소스 XSS 필터링 라이브러리 적용 (Lucy-Filter, Anti-Samy)

  • [네트워크] 보안 장비 내 XSS 필터링 정책 활용 (WAF)

  • [브라우저] Http Only 설정 / CSP (Contents Security Policy)

 

 

innerHTML <script> 해석 x

<script>구문을 사용하지 않는 명령어 사용

 

 

CSRF 공격 PoC

1. XSS 공격이 존재하는지

2. 정보 수집(이메일 주소 자동 업데이트)

3. CSRF 공격 구문을 작성

 

 

 

 

 

- SQL Injection 공격 -

XSS / CSRF 공격
정의 특정 페이지나 기능 사용 시 입력 값에 대한 DB 쿼리 유효성 검증을 하지 않아
DB 쿼리가 조작되어 공격자가 의도한 대로 행동하도록 하는 취약점
특징
  • ㅁㅁ
  • Boolean Based SQL Injection
    • 쿼리 요청 시 응답 값의 참/거짓 반응을 통해 DB 결과 조회
  • Error Based SQL Injection
    • 쿼리 실행 시 오류나 예기치 않은 예외 상황이 발생될 때 클라이언트 측에서 DB 정보가 노출
  • Time Based SQL Injection
    • Db 시간 관련 함수를 활용해 참과 거짓을 반응을 통해 DB 결과 조회
보안
대책
  • SQL함수의 인자로 전달되지 않도록 인자화된 질의문을 사용