99designs / 99designs/http-signatures-php
Reject messages with insufficient signed headers
- Ngôn ngữ chính
- PHP
- Star
- 46
- Fork
- 35
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Mô tả
The server should be able to require the client to sign certain headers, and reject any messages in which these headers are unsigned.
For example, a server should be able to require a signed `digest` header for POST requests, and reject any message that doesn't have a signed digest header.
This protects against sloppy clients "leaving the door open": if a POST request with an unsigned digest is intercepted, the message body can be manipulated without invalidating the signature, and the forged message would be accepted.
This could be prevented by supplying a list of required headers to the constructors of the Verifier and Verification classes.
It might be useful to supply two sets of headers, one for requests without a body, and another for messages with a body. (Note that DELETE requests may or may not have a body).
For reference: https://datatracker.ietf.org/doc/html/rfc9421#verify-requirements
Hướng dẫn đóng góp
Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này
Hướng nghiên cứu
Look at the Verifier and Verification classes to understand how signatures are currently validated. The RFC 9421 section on verification requirements outlines the logic for mandatory signed headers. Implement a way to pass required header lists into the constructors, handling the distinction between requests with and without a body. Test with POST requests having a digest header to ensure unsigned ones are rejected.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- php
- Lĩnh vực
- backend-api-design, security
- Loại issue
- Tính năng
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức độ hoạt động
- Đình trệ
- Độ rõ ràng
- Khá rõ ràng
- Mức phù hợp với người mới
- 45/100