Preorder drugiego tomu książki sekuraka: Wprowadzenie do bezpieczeństwa IT. -15% z kodem: sekurak-book
Podatność w testowym serwerze PHP – można prostym trickiem czytać źródła plików PHP
Większy research tematu znajdziecie w tym poście: PHP Development Server <= 7.4.21 – Remote Source Disclosure
W formie graficznej, stosowne żądanie które wyświetli źródło pliku PHP wygląda tak:
Co tu się wydarzyło? Od strony technicznej mamy tu do czynienia z całkiem normalną funkcją HTTP Pipelining (czyli wysyłanie kilku żądań HTTP w jednym połączeniu TCP). Ale testowy server PHP jeszcze do niedawna „wariował” i po dawce dwóch zapytań jak widzicie powyżej – serwował źródło pliku zamiast go wykonywać.
Czy serwer testowy PHP można znaleźć wystawiony do Internetu? W teorii – nie. W praktyce badacze, którzy donieśli o szczegółach podatności wspominają o „kilku tysiącach tego typu serwerów dostępnych z internetu”.
~ms
Już myślałem że to luka w samych PHP.
Taka ciekawosta nt. z dokumentacji PHP -> „It should not be used on a public network.”
Built-in web server
Warning
This web server is designed to aid application development. It may also be useful for testing purposes or for application demonstrations that are run in controlled environments. It is not intended to be a full-featured web server. It should not be used on a public network.