본문 바로가기
[ Computer Security ]/Web Security

[웹보안] 인터넷 해킹과 보안 연습문제 6장

by dev charlotte 2024. 4. 29.
인터넷 해킹과 보안 4판
김경곤 
한빛아카데미

1. 웹 애플리케이션 취약점 진단 방법 중에서 개발된 소스코드를 직접 보고 취약점을 찾는 방식은 Black Box Testing

 

2. 웹 애플리케이션에서 가장 빈번하게 발생하는 취약점은 입력 데이터 검증 미흡

 

3. 행정안전부의 소프트웨어 개발 보안 가이드와 OWASP top 10의 버전 간 항목 매핑

- 입력 데이터 검증 및 표현 - A3 인젝션, A10 서버 사이트 요청 변조 SSRF, A4 안전하지 않은 설계

- 보안 기능 - A1 잘못된 접근 통제, A5 보안 설정 오류, A7 식별 및 인증 실패, A8 소프트웨어와 데이터 무결성 실패, A9 보안 로그 및 모니터링 실패

- 캡슐화 - A2 암호화 오류

- API 오용 - A6 취약하거나 오래된 컴포넌트

 

4. 입력값 검증 취약점과 관련된 항목

- SQL 인젝션 취약점 코드

- 위험한 형식의 파일 업로드 취약점

- XSS 크로스 사이트 스크립팅 취약점 코드

- 디렉토리 경로 조작 : 파일명을 받아서 처리하는 부분에 파일명에 대해 file 변수나 getRawParameter 변수를 통한 필터링이 없으면 공격자는 디렉토리 경로를 조작하여 상위 디렉터리에 있는 임의의 파일에 접근할 수 있음

 

5. 웹 애플리케이션의 보안 취약점을 찾는 두 가지 방법과 각각의 특징 및 장단점

- ‘Black Box Testing’ 방식 - 소스코드를 보지 않고 웹 애플리케이션의 외부 인터페이스나 구조를 분석하여 취약점 발견하기 때문에 빠르고 다양한 취약점 찾는 시도 가능

- ‘White Box Testing’ 방식 - 개발된 소스코드를 살펴봄으로써 코딩의 취약점을 찾는 것으로 내부 코드를 볼 수 있어서 취약점 존재 유무를 확실히 볼 수 있지만 오래 걸림

- ‘Gray Box Testing’ 방식 - Black Box Testing과 White Box Testing의 장점을 혼합하여 외부에서 보이는 취약점을 웹 애플리케이션 보안 진단을 통해 확인하고 소스코드에서 접근 통제, 입력값 검증, 세션 처리 문제 등을 함께 살펴보며 조사

 

6. SQL 인젝션 공격 취약점을 SQL 쿼리문과 소스코드를 바탕으로 설명