시큐어코딩] 경로 조작 및 자원 삽입 방지
- 작성자 :
- 시***딩
- 작성일 :
- 2021-07-30 13:49:32
- 조회수 :
- 3,831
- 구분 :
- 공통컴포넌트 /
- 진행상태 :
- 완료
Q
예제
public class TestFile extends File {
public TestFile(String path){
super(path);
}
}
에서
super(path); 가 위반 소스로 검출이 되었습니다.
올바르게 수정을 하기 위해서 어떻게 수정을 해야할지 감이 오지 않는 상황인데
public class TestFile extends File {
public TestFile(String path){
path.replaceAll("₩₩.", "").replaceAll("/", "").replaceAll("₩₩₩₩", "");
super(path);
}
}
가이드를 참고해서 이렇게 수정해도 괜찮은건가요?
public class TestFile extends File {
public TestFile(String path){
super(path);
}
}
에서
super(path); 가 위반 소스로 검출이 되었습니다.
올바르게 수정을 하기 위해서 어떻게 수정을 해야할지 감이 오지 않는 상황인데
public class TestFile extends File {
public TestFile(String path){
path.replaceAll("₩₩.", "").replaceAll("/", "").replaceAll("₩₩₩₩", "");
super(path);
}
}
가이드를 참고해서 이렇게 수정해도 괜찮은건가요?
환경정보
-
- OS 정보 :
- 표준프레임워크 버전 :
- JDK(JRE) 정보 :
- WAS 정보 :
- DB 정보 :
- 기타 환경 정보 :
A
안녕하세요.
표준프레임워크센터 입니다.
기본적으로는
..기호(상위디렉토리이동)이 가능하므로
이에 대해 제거하는 로직이 추가 되어야 합니다.
/.. 등과 같이 /와 조합하지 말고
.. => 공백으로 처리하는것이 안전합니다.
두번째로
다음과 같이 최상위 경로
부터 지정되지 않도록 제한해야 합니다.
/root/wasserver/webapp/~~~
또한 디렉토리 지정이 아예 안되도록
하는게 안전하고
부득이한 경우 화이트 리스트 처리를 해야 합니다.
이외에도 여러가지 케이스가 있을수 있기 때문에
사용하시는 개발환경과 업무환경을 고려하여
점검을 하셔야 합니다.
감사합니다.
표준프레임워크센터 입니다.
기본적으로는
..기호(상위디렉토리이동)이 가능하므로
이에 대해 제거하는 로직이 추가 되어야 합니다.
/.. 등과 같이 /와 조합하지 말고
.. => 공백으로 처리하는것이 안전합니다.
두번째로
다음과 같이 최상위 경로
부터 지정되지 않도록 제한해야 합니다.
/root/wasserver/webapp/~~~
또한 디렉토리 지정이 아예 안되도록
하는게 안전하고
부득이한 경우 화이트 리스트 처리를 해야 합니다.
이외에도 여러가지 케이스가 있을수 있기 때문에
사용하시는 개발환경과 업무환경을 고려하여
점검을 하셔야 합니다.
감사합니다.