목표
사용자로부터 서버로 어떠한 입력을 받을때에 발생할 수 있는 보안 위험을 방지하는 법을 알아보겠습니다.
> 상황 가정
입력에 의한 보안 위협이 어떤식으로 발생하는지 알아보기 위해 특정 상황을 가정해 설명해보겠습니다.
어떤 웹 애플리케이션 이 있습니다.
사용자로부터 파일 제목을 입력받으면 정해진 디렉토리 안에 있는 파일의 내용을 표시해주는 어떤 웹 애플리케이션.
이런 디렉토리 트리를 가지고 있구요.
security, data 디렉토리를 갖고있고, main.js 로 실행합니다.
이 어떤 웹 애플리케이션 은 사용자로부터 파일 제목을 입력받으면 data/
디렉토리 안에 있는 파일의 내용을 표시해줍니다.
그런데 이 어떤 웹 애플리케이션 은 사용자 정보를 담은 중요한 파일도 갖고 있습니다.security/users.txt
1 | --- 사용자들의 ID/PW 가 담긴 파일 --- |
이렇게 security/
디렉토리에 users.txt
파일의 형태로 사용자들의 ID/PW 가 저장되어 있다고 해봅시다.