본문 바로가기
네트워크

HTTP method type (GET, HEAD, POST, PUT, DELETED, CONNECT, TRACE)

by Royal! 2022. 8. 18.
728x90
반응형

기본적으로 OWASP에서는 GET, POST, HEAD method만 Web Application에서 사용하도록 권장합니다.

 

Method ACTION
GET Request-URI에 의해 식별된 모든 정보를 검색합니다.
HTTP 프로토콜에 따라 GET을 사용하는 요청은 "데이터"만
검색해야 합니다..
HEAD GET 요청과 동일한 응답을 요청하지만, 응답 body가 없으면, 메타(meta)요청을 검색합니다.  따라서 HEAD는 전체 내용을 전송할 필요 없이 응답 HEAD에 기록된 메타(meta)정보를 검색하는데 유용합니다.
POST 요청된 자원을 생성합니다.

GET과 HEAD의 차이 : GET에는 요청 데이터(컨텐트)가 포함, HEAD는 데이터가 미 포함

 

GET-Request 와 POST-Request 차이 

 

GET 

- GET requests can be cached

- GET requests remain in the browser history

- GET requests can be bookmakred

- GET requests have length restrictions(max length 2048 characters)

- GET requests should be used only to retrieve data

 

 

POST

- POST requests are never cached

- POST requestsdo not remain in the browser history

- POST requests cannot e bookmarked

- POST requestshave no restrictions on data length

 

결정적 차이 : GET은 데이터를 보낼 때 URL에 해당 데이터를 싣는다.

 

Method Vulnerability
PUT 해당 메서드를 사용하면 클라이언트가 웹 서버에 파일을 업로드할 수 있습니다. Attacker는 악성파일을 업로드하거나 해당 서버를 저장소로 악용할 수 있습니다.
DELETE 해당 메서드를 사용하면 클라이언트가 웹 서버의 파일을 삭제할 수 있습니다. Attacker는 DoS공격을 하는데 해당 메서드를 악용할 수 있습니다.
CONNECT 해당 메서드를 사용하면 클라이언트가 웹 서버를 프록시로 사용할 수 있습니다.
TRACE 해당 메서드는 단순히 서버에 전송된 문자열이 무엇이든 클라이언트에 다시 에코(알려주고) 디버깅 목적으로 사용됩니다.
기존에는 위험하다고 판단하지 않았으나, Cross Site Tracing(XST)시작하는데 사용할 수 있습니다.
HEAD 인증된 사용자들만  GET 요청에 엑세스할 수 있도록 조건이 설정 된 경우, HEAD 버전에 대한 제약 조건이 무시될 수 있습니다.

 

728x90
반응형

최근댓글

최근글

Royal! © 2024