Aanval op online compilatiesystemen door manipulatie van headerbestanden

Hanno Böck, auteur van het project fuzzing-project.org, merkte op over de kwetsbaarheid van interactieve compilatie-interfaces die de verwerking van externe code in de C-taal mogelijk maken. Wanneer u een willekeurig pad opgeeft in de instructie "#include", bevat een compilatiefout de inhoud van een bestand dat niet kon worden gecompileerd.

Bijvoorbeeld door “#include” te vervangen door de code in een van de online diensten "De uitvoer kon een hash van het rootgebruikerswachtwoord uit het /etc/shadow-bestand verkrijgen, wat ook aangeeft dat de webservice met rootrechten draait en compilatieopdrachten uitvoert onder de rootgebruiker (het is mogelijk dat een geïsoleerde container werd gebruikt tijdens het compileren, maar het starten met rootrechten in de container is ook een probleem). De problematische service waarin het probleem kon worden gereproduceerd, is nog niet geadverteerd. Pogingen om bestanden te openen in de pseudo-FS /proc waren niet succesvol omdat GCC ze als lege bestanden behandelt, maar het openen van bestanden vanuit /sys werkt.

Bron: opennet.ru

Voeg een reactie