gits –end-of-options-Flag: Ein unscheinbares Flag mit großer Wirkung

git's –end-of-options Flag

gits –end-of-options-Flag: Ein unscheinbares Flag mit großer Wirkung

Der Autor entdeckt beim Lesen eines CVE-Fixes das wenig bekannte git-Flag –end-of-options, das seit 2019 existiert, aber oft übersehen wird. Er erklärt, warum git das klassische – nicht als Ende der Optionsparsing nutzen kann und wie –end-of-options Argumentinjektionen verhindert. Eine Analyse von 19 Paketmanagern zeigt: Nur Go's cmd/go verwendet das Flag korrekt; die meisten setzen auf – oder Eingabevalidierung, oft erst nach Sicherheitsvorfällen. Der Artikel beleuchtet die historischen Gründe, die Mindestversionsanforderungen und Alternativen wie Git-Bibliotheken, die das Problem umgehen.

In den meisten Unix-Tools markiert – das Ende der Optionsparsing, aber git hatte – bereits früh für etwas anderes zweckentfremdet: um Revisionen von Pfadspezifikationen zu trennen.

Mehr von diesem Tag

2026-07-23