Nginx off-by-slash vulnerability


location /static {
    alias /home/app/static/
}

esetén http://127.0.0.1/static../config.py lekéréssel olvasható a /home/app/config.py fájl.

(Teszteltem a jelenleg aktuális 1.15.5 verzióval)

location /static/ {-ra javítva elkerülhető a "hiba"

Elvileg by-design ilyen (bár nem látok erre valós use-case-t), emiatt nem lesz javítva, szóval mindenki csekkolja a configjait :)

Forrás: https://twitter.com/x0rz/status/1052899891624710145

Hozzászólások

lehet ezzel a bug-gal akar az /etc alatti file-okat is olvasni?

--
"dolgozni mar reg nem akarok" - HZuid_7086 'iddqd' zoli berserk mode-ba kapcsol

Érdekes, hogy még a hivatalos doksiban is szerepel ez a hiba:

https://www.nginx.com/resources/wiki/start/topics/recipes/mailman/?high…
https://www.nginx.com/resources/wiki/start/topics/examples/x-accel/?hig…

+ Nginx alias-ra rákeresve első találat:


server {
  server_name example.com;
  root /path/to/root;
  location / {
    # bla bla
  }
  location /demo {
    alias /path/to/root/production/folder/here;
  }
}

https://stackoverflow.com/questions/21399789/nginx-how-to-create-an-ali…

Második


...
    location /mail2admin {
      alias /vimbadmin/public;
    }
...