Hi Jason, On Thu, Feb 27, 2020 at 5:13 AM Jason A. Donenfeld <Jason@xxxxxxxxx> wrote: > Another odd quirk worth considering: vanilla patches aren't tied to a > specific commit base, so there could be a "replay attack" where an > attacker resends an old patch that still applies without issue, but > means a different thing in the present state of the tree. For example, > Alice sends patch P in November 2019. Bob discovers it causes a remotely > exploitable vulnerability in December 2019 and submits a revert patch. > The seasons change a few times, and it's now March 2025, maintainers > have changed a bit, but the code is still mostly the same. Eve resubmits > P which has Alice's name on it. Signature verifies. Doom ensues. Real > git pgp signing involves a signature over the whole object, which > contains the hash of the parent, which avoids this issue. How would the commit base help here? It would indicate this is an old patch, which would be indicated by the signature date, too. The only thing that would help is time-limiting the window between attestation and application. So when applying an old patch, it has to be attested again by the original author. Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds