HTTPMethod PUT,DELETE보안 위험성?

L·2022년 6월 17일
1

TIL

목록 보기
3/5

작년에 들어갔던 프로젝트 요구사항중의 하나가 솔루션의 기초 데이터를 제공하는 공통API개발 있어 2주정도 개발했었다. 당연히 REST 규칙에 맞게 HTTP METHOD를 맞춰서 개발을 하였으나, PUT,DELETE METHOD는 보안에 취약하다는 지적이 있었다. 처음에는 왜 이게 취약한건지는 몰랐지만
이 곳에서 비슷한 고민을 했던 질문이 있었고 어느정도 해결이 되었으나, 메소드를 제대로 사용해보자는 생각으로 정리하게 되었다.

🗑 DELETE & 💱 PUT

  • DELETE는 단어 그대로 서버에 지정된 리소스 삭제를 요청하기위한 메서드이다
  • PUT은 새로운 리소스 등록 또는 변경을 요청하는 메서드이다. 수정 요청의 용도로 더 많이 쓰인다.

MDN문서에 따르면 DELETEPUT 는 안전함은 No라고 한다.

MDN에서말하는 안전함의 의미는 서버의 상태를 바꾸지않으면 안전하다고한다.

즉, 2개의 메소드는 삭제와 수정 요청은 서버의 상태를 변경하기때문에 안전하지 않다라고 명시를 하는거 같다.그래서 GET은 주로 서버의 읽기요청을 하기때문에, 안전하다고 한다.

출처

DELETE METHOD(Mozilla MDN)
PUT METHOD(Mozilla MDN)
멱등성(Idempotent)

0개의 댓글