Angreb på online kompileringssystemer gennem manipulation af header-filer

Hanno Böck, forfatter til projektet fuzzing-project.org, bemærket om sårbarheden af ​​interaktive kompileringsgrænseflader, der tillader behandling af ekstern kode på C-sproget. Når du angiver en vilkårlig sti i "#include"-direktivet, inkluderer en kompileringsfejl indholdet af en fil, der ikke kunne kompileres.

For eksempel, ved at erstatte "#include " i koden i en af ​​onlinetjenesterne, var outputtet i stand til at hente en hash af root-brugerens adgangskode fra filen /etc/shadow, hvilket også indikerer, at webtjenesten kører med root-rettigheder og kører kompileringskommandoerne som root (det er muligt, at en isoleret container blev brugt under kompileringen, men at køre som root i en container er også et problem). Den problematiske tjeneste, hvor det var muligt at genskabe problemet, er endnu ikke annonceret. Forsøg på at åbne filer i pseudo FS /proc var mislykkede, fordi GCC behandler dem som tomme filer, men åbning af filer fra /sys virker.

Kilde: opennet.ru

Tilføj en kommentar