Web Hacking Study/수업 정리

[16주차] 모의해킹 리뷰, File Upload/Download 취약점 점검 팁

silver surfer 2022. 7. 22.

** 리뷰

> 되도록이면 취약점 분석 평가 방법에 있는 취약점으로 보고서 작성

> 오류 페이지 → 커스텀 에러 페이지 하나 만들어서 리다이렉트

> 대응방안, 어떻게 고쳐야할지 알아야한다

> 게시글 작성 시 넘겨주는 정보 대응방안 : 서버 측 검증 (로그인 시 발급된 Session ID 사용)

> 자동화 공격은 거의 모든 사이트

> 취약점 설명할 때 단계별로 설명하기

> 세션 만료가 안 될 때 위험하다고 생각되면 → 적절한 대응방안 설명하기 (회사 세션 타임아웃 정책에 따라 or 10분), 고치는 건 선택

> ~ 것 같습니다 고치기, 직설적 X, 말 부드럽게 하기

 

+ 보고서 목차 업데이트 하기

 

** File Upload / Download

> What (무엇인지)

① 업로드 공격 : 서버 측에서 실행할 수 있는 파일을 업로드 하는 공격

② 다운로드 공격 : 서버 내에 있는 임의의 파일을 다운로드 할 수 있는 공격

 

> Where (어디에서)

사용자가 파일을 올리거나, 서버에 있는 파일을 로드하는 곳 (ex. 증빙자료 제출, 프로필 사진 업로드)

 

> Why (왜 일어나는지)

① 업로드 공격 : 사용자가 업로드 하는 파일을 서버에서 검증하지 않기 때문에 일어난다

② 다운로드 공격 : 디렉토리 트레버져(../../../../) → . , / , ../ 로 필터링 (그런데 블랙 리스트 기반이므로 언제든지 우회가 가능하다는 점)

 

>  Scenario (뭘 할 수 있는지)

① 업로드 공격 :  웹 쉘을 통한 웹 서버 장악

② 다운로드 공격 : 서버 웹 소스 코드 다운로드로 DB 계정 탈취 및 2차 공격

 

> Defense (방어 방법)

① DB에 파일 저장 (CLOB/BLOB)

→ 큰 사이트일 경우 수정할 곳이 많으므로 File Server를 따로 구축 + 화이트 리스트 기반 필터링

② 화이트 리스트 기반 필터링

 

+ 모의해킹 시 주의할 점

① 웹 쉘 업로드 X

<?php echo "Hello"; ?> or <?php system('ls'); ?>

로 대체해서 확인

② 테스트용 파일 모의해킹 프로젝트 후 삭제

 

 

** 다음 과제

 자기소개서 (다다음주)

 모의해킹 프로젝트 진행 : 금취분평 기준

+ 금취분평 기준 정독, 모의해킹 프로젝트 진행

+ 모의해킹 프로젝트 결과보고서는 피드백대로 업데이트하기

댓글