언어/JAVA

시큐어코딩 TOCTOU 해결 방법

zumsim 2022. 2. 26. 14:15
728x90
반응형

최근에 프로젝트 중 시큐어코딩 점검을 해서 걸린 것중에 하나를 까먹지 않기 위해 적어둠

 

File file = new File(url);

if(file.exist()) {        //파일이 존재하면

     file.delete();     //파일을 지워라

}

 

하지만 안전하지가 않다고 검출되어 구글링을 찾아보니

위와 같이 삭제하는 것이 아닌 동기화 함수를 사용하여 삭제하는게 안전하다고 한다

ex)

File file = new File(url);

 

public synchronized void fileDelete(File file) {

     file.delete();

)

 

if(file.exist()) {        //파일이 존재하면

     fileDelete(file);     //파일을 지워라

}

 

728x90
반응형