id: put-method-enabled info: name: PUT Method Enabled author: xElkomy severity: high description: The HTTP PUT method is normally used to upload data that is saved on the server at a user-supplied URL. If enabled, an attacker may be able to place arbitrary, and potentially malicious, content into the application. Depending on the server's configuration, this may lead to compromise of other users (by uploading client-executable scripts), compromise of the server (by uploading server-executable code), or other attacks. reference: - https://portswigger.net/kb/issues/00100900_http-put-method-is-enabled metadata: max-request: 2 tags: injection,misconfig,intrusive http: - raw: - | PUT /testing-put.txt HTTP/1.1 Host: {{Hostname}} Content-Type: text/plain {{randstr}} - | GET /testing-put.txt HTTP/1.1 Host: {{Hostname}} Content-Type: text/plain matchers: - type: dsl dsl: - 'contains(body_2, "{{randstr}}")' # digest: 4a0a0047304502201225cd1ff5d00fe33b532ce76cb75892ff7404812e8b2200698aee8c588941f3022100cc2d7d188e1aeca53f859da902da03c54cfb846a1b8f4e0c6f4b1c49fd6b7a30:922c64590222798bb761d5b6d8e72950