프로그래밍/WEB
[Java Secure Coding] TOCTOU 해결 보안 코딩 방법
하나의 자원에 동시다발적으로 여러 프로세스가 접근해서 컨트롤을 하게 되는 경우가 생긴다. 이러한 점들로 인해 프로그램이 교착상태, 경쟁조건 및 기타 등등의 오류가 발생할 수 있다. 처음에 코딩을 할 때 아무 생각없이 바로 File Delete 를 실행했었는데, 생각해보면 동시에 해당 파일에 접근할 수 있다는 생각을 하지 않고 코딩을 했다. 나중에 들어온 사용자가 먼저 들어온 사용자보다 먼저 작업을 해버리면 파일이 꼬여버리게 된다. 이러한 상태를 방지하기 위한 코딩방법이다. 1. 동기화 구문을 통해 한번에 하나의 스레드만 공유자원(예:파일)에 접근 가능하도록 해야한다. 2. 필요 없는 부분은 구문으로 감싸지 않아 성능에 최대한 영향이 적도록 한다. 일반적으로 File file = new File(URL);..
2019. 6. 13. 13:37
최근댓글