It’s now nearly a year that I started writing non-trivial amounts of C codeagain (the first sokol_gfx.h commit was on the 14-Jul-2017), so I guess it’stime f...
“But with one key difference: it’s not in fact SUID. Instead it just asks the service manager to invoke a command or shell under the target user’s UID. It allocates a new PTY for that, and then shovels data back and forth from the originating TTY and this PTY.”
Nie mam chwilowo czasu na jakąś dokładniejszą analizę run0, ale w prawym kolanie wyczuwam, że będą tutaj ataki na komunikację z “service manager” i wymuszenie na nim by powołał odpowiedni proces. W przeszłości już było ileś takich błędów, gdzie dało się eskalować uprawnienia, poprzez odpowiednie zagadanie do procesu, który robił coś takiego na potrzeby realizacji pewnej funkcjonalności.
Nie mogę dodać wpisu o tym: https://lcamtuf.substack.com/p/that-time-i-built-an-ld_preload-worm
I napisać, że niektórzy polecają bawić się tym: https://man7.org/linux/man-pages/man7/rtld-audit.7.html
Tę podatność w su/sudo próbuje rozwiązać najnowszy wynalazek Poetteringa - run0.
Aż mnie zaciekawiło jak to działa:
“But with one key difference: it’s not in fact SUID. Instead it just asks the service manager to invoke a command or shell under the target user’s UID. It allocates a new PTY for that, and then shovels data back and forth from the originating TTY and this PTY.”
Nie mam chwilowo czasu na jakąś dokładniejszą analizę run0, ale w prawym kolanie wyczuwam, że będą tutaj ataki na komunikację z “service manager” i wymuszenie na nim by powołał odpowiedni proces. W przeszłości już było ileś takich błędów, gdzie dało się eskalować uprawnienia, poprzez odpowiednie zagadanie do procesu, który robił coś takiego na potrzeby realizacji pewnej funkcjonalności.