오늘 학습 주제
1. 소스코드 취약점 진단
2. 소스코드 취약점 진단 실습
3. 클라우드 진단
소스코드 취약점 진단
- 동적 진단 vs 정적 진단(소스코드 진단) -
동적진단
- 장점 상대적으로 진단 소요기간이 적다 (1 URL = 2~3 Day or 1 ~ 2 week)
- 단점 상대적으로 누락의 가능성이 높음
정적 진단
- 장점 보다 Depth 있고 상세한 진단이 가능(정답지인 소스코드를 보고 진단하기 때문)
- 단점 진단 소요기간이 오래 걸린다(최소 2주~수개월)
- 진단자 역량에 따라 결과 산출물의 품질이 달라진다(코드가 사용하는 언어의 이해도에 따라 달라진다)
- 그렇기에 소스코드 방법론(data tracing)을 사용
- 소스코드 진단 -
소스코드 진단 | |
정의 | 소스코드를 활용하여 애플리케이션 내 모든 입/출력 값에 대해 DATA Tracing 을 통해 취약점 누락 최소화 및 상세 취약점 점검을 수행하여 보안 수준을 향상하는데 목적 |
특징 |
|
방식 |
|
취약점 포인트
동적진단에서의 환경분석보다
소스코드에서의 환경분석이 더 자세하다
- 소스코드 진단 프로세스 -
개발자마다 변수명를 선언하는 규칙이 다르기 때문에
분석을 하면서 유형을 파악
- 소스코드 진단 환경 분석 -
각각의 회사마다 고유의 정책이 있기 때문에
IP - ELB로 IP가 가려지는 경우가 있으니 사전에 내가 공격하는 IP를 확인하여 실제 대상 서비스인지 확인
OS - 올바른 공격을 하기 위해 OS의 정보를 확실하게 확인
개발언어 - 언어에 특화된 취약점을 찾을 수 있음
open source - 사용하는 라이프러리에 따라 구조를 확인하고 취약점 진단
- 소스코드 진단 RAWDATA 작성 -
소스코드 진단 RAWDATA | |
정의 | 전달받은 모든 소스를 확인하고 분석하는 것은 시간이 오래 걸리기 때문에 입/출력 DATA와 환경 구성을 빠르게 파악하기 위해 고안된 방법 |
키워드 |
|
방식 |
|
여기서 data는
개발자의 코딩 유형(변수 함수의 선언명)
입출력 등에 사용되는 파일들을 집중적으로 확인
- 소스코드 진단 분석 방법 -
소스코드 분석 방법 | |
방법 |
|
소스코드 취약점 진단 실습
- 소스코드 진단 XSS -
최선 특수문자 필터링
최대한 모든것을 어우르는 표현을 적어준다 (모든 입출력에 대한 필터링)
필터링 - 공격구문을 공격구문으로 동작되지 않게 바꾸는 것
차선 하위단계의 보안조치
- 소스코드 진단 SQL Injection -
자바에서는 Statement을 지양(보안과정이 복잡하기 때문에)
prepared를 사용하면 데이터를 바인딩하여 쿼리로서 동작이 불가능해짐
mybatis sql map
# 동적쿼리 불가능
$ 동적 쿼리 가능
- 소스코드 진단 파일 업로드-
자바스크립트 안에서 자바스크립트를 정의할 수 있기 때문에 필터링이 의미가 없다
서버에서 필터링을 해야 한다
- 소스코드 진단 경로 탐색 -
파일명에 대한 경로 검증이 부재
클라우드 진단
- 클라우드 진단 -
현재 클라우드 진단을 명확하게 하고 있는 기업은 X
클라우드 진단의 개념이 다양하다
운영적인 관점, 관리 컨설팅 관점, 취약점 진단/모의해킹 관점
고도화 진행 중
- 클라우드 진단 Process -
담당자의 인터뷰가 필요
정형화되지 않았으며 기준이 필요
- 클라우드 진단 특징 -
- Security Group와 Network ACL -
공통점
IP/Port 기반 접근 제어
SG = 인스턴스 기반 IP/Port ACL
Network ACL = 네트워크 기반 IP/Port ACL
둘 다 사용하는 것이 보안에 좋지만 현실적으로는 ACL을 Control로 사용하지는 않는다
취약점 진단 Wrap up
- XSS -
Stored XSS
Reflected XSS
DOM Based XSS
CSRF
- SQL Injection(RDBMS) -
Blooean Based SQL Injection(Blind SQL Injection)
Error Based SQL Injection(찾는것도 실행시키도 어렵다)
Time Based SQL Injection(DB 시간 함수 활용)
- File Upload -
확장 검증 X
확장 검증 O but 미흡
- Directory Traversal -
파일명 검증 X
파일명 검증 미흡(URL Decoding)
- 인증 -
비인증권한 상승
'SK shieldus Rookies 16기' 카테고리의 다른 글
[SK shieldus Rookies 16기] 클라우드 기반 스마트 융합 보안 과정 교육 정리(38일차) (0) | 2023.12.15 |
---|---|
[SK shieldus Rookies 16기] 클라우드 기반 스마트 융합 보안 과정 교육 정리(37일차) (0) | 2023.12.14 |
[SK shieldus Rookies 16기] 클라우드 기반 스마트 융합 보안 과정 교육 정리(35일차) - 작성 중 (0) | 2023.12.12 |
[SK shieldus Rookies 16기] 클라우드 기반 스마트 융합 보안 과정 교육 정리(34일차) (0) | 2023.12.11 |
[SK shieldus Rookies 16기] 클라우드 기반 스마트 융합 보안 과정 교육 정리(33일차) (1) | 2023.12.08 |