Hanno Böck, autor projektu , na podatności interfejsów interaktywnej kompilacji, które umożliwiają przetwarzanie zewnętrznego kodu w języku C. W przypadku podania dowolnej ścieżki w dyrektywie „#include” błąd kompilacji dołącza zawartość pliku, który nie został skompilowany.
Na przykład, podmieniając w jednym z online-serwisów kod „#include ”, udało się uzyskać hash hasła użytkownika root z pliku /etc/shadow, co również świadczy o tym, że web-serwis działa z uprawnieniami root i uruchamia polecenia kompilacji pod użytkownikiem root (nie można wykluczyć, że podczas kompilacji używano izolowanego kontenera, ale uruchamianie z uprawnieniami root w kontenerze również stanowi problem). Problematyczny serwis, w którym udało się odtworzyć problem, na razie nie został ujawniony. Próby otwarcia plików w pseudo FS /proc nie przyniosły sukcesu, ponieważ GCC postrzega je jako puste pliki, ale otwarcie plików z /sys działa.
Źródło: opennet.ru
