Path2 path 모듈로 상대 경로 제거를 이용한 보안 방법 생활 코딩 Nodejs 강의 중 url 의 쿼리 데이터를 통해 경로를 입력하여 서버의 컴퓨터의 데이터를 접근 할 수 있어 보안에 취약할 수 있다는 점을 배웠다 그 예시로 다음과 같은 페이지를 만들기 위해 아래와 같은 경로를 가진 서버의 경우 각각의 뷰 페이지 데이터는 루트 폴더 기준 data 폴더 내에 저장하고 있고 fs 모듈의 readdir 로 data 폴더내 파일들을 찾아 readfile 로 파일의 내용을 읽어오는 방식으로 설계하였는데 개인정보를 저장하기 위한 password.js 는 data 폴더의 상위 디렉토리에 위치시켰다 같은 data 폴더 내가 아니므로 password.js 파일은 읽히지 않겠지? 라는 생각은 위험하다 const queryData = new URL("http://localhos.. 2022. 9. 2. 경로에 ' / ' 슬래시를 생략하면 예상치 못한 에러가 난다 생활코딩으로 공부하던 중 리팩토링 과정에서 리스트 내의 li 태그를 아래와 같이 만들게 되었다 function templateList(filelist) { var list = ""; for (let i = 0; i < filelist.length; i++) { list += `${filelist[i]}`; } list += ""; return list; } a 태그의 href 주소로 쿼리로 된 경로를 만들어 주는 코드인데 쿼리 앞에 / 슬래시를 못보고 못쳤더니 create를 누르고 목록을 누르면 새 페이지의 pathname 인 / 가 아닌 이전 페이지의 pathname 인 /create 를 가진채로 쿼리가 붙게 되고 create 폼이 사라지지 않게 되었다 URL 을 부분별로 해석하면 아래와 같다 sche.. 2022. 8. 25. 이전 1 다음