[보안 해킹] 홈페이지 개발 보안 - 파일 다운로드
■ 취약점 설명
- 외부 입력 값에 대해 경로 조작에 사용될 수 있는 문자를 필터링 하지 않으면, 예상 밖의 접근 제한 영역에 대한 경로 문자열 구성이 가능해져 시스템 정보 등 중요정보가 누출이 되는 취약점
■ 보안대책
⑴ 파일경로와 이름을 생성할 때 외부 입력 값을 사용하는 경우, 정해진 경로 이외의 디렉토리와 파일에 접근할 수 없도록 처리
⑵ 외부 입력 값에 대해 replaceAll()등의 Method를 사용하여 예상 밖의 경로로의 접근을 허용하는 위험 문자열( *, /, \, ..)을 제거하는 필터링 적용
■ 코드예제
- 외부의 입력(name)이 삭제할 파일의 경로설정에 사용되고 있는 코드로, 공격자에 의해 name의 값으로 ../../..rootFile.txt와 같은 값을 전달하면 의도하지 않았던 파일이 삭제될 수 있는 코드
- 입력되는 값에 대하여 Null여부를 체크하고, 외부에서 입력되는 파일 이름(name)에서 상대경로(/, \\, &, .. 등 특수문자)를 설정할 수 없도록 replaceAll을 이용하여 특수문자가 제거 될 수 있도록 코딩
※ 문의 사항은 메일 : jyuhm@sntkor.com 이나 070-8611-4853
'Security > Hacking & Security' 카테고리의 다른 글
[보안 해킹] 홈페이지 개발 보안 - LDAP 인젝션 (0) | 2016.10.25 |
---|---|
[보안 해킹] 홈페이지 개발 보안 - 버퍼 오버플로우 (0) | 2016.10.25 |
[보안 해킹] 홈페이지 개발 보안 - 파일 업로드 (0) | 2016.10.24 |
[보안 해킹] 홈페이지 개발 보안 - 크로스 사이트 스크립트 (0) | 2016.10.21 |
[보안 해킹] 홈페이지 개발 보안 방안 - XPath 인젝션 (0) | 2016.10.20 |