Що означає наступне повідомлення ядра?


12

З'являється наступне / var / log / messages, що це означає?

  Feb 19 22:51:20  kernel: [  187.819487] non-matching-uid symlink following attempted in sticky world-writable directory by sh (fsuid 1001 != 0)

Це трапляється, коли робота з крон збиралася запустити.


Відповіді:


9

Привілейований процес може бути введений у перезапис важливого файлу (/ etc / passwd, / etc / shadow тощо), вказавши на нього симпосилання. Наприклад, якщо ви знаєте, що root запустить програму, яка створює файл в / tmp, ви можете закласти пастку, відгадавши, яке буде ім'я файлу (як правило, / tmp / fooXXX, при цьому foo є ім'ям програми, а XXX - ідентифікатор процесу) та fill / tmp з ймовірними кандидатами, що вказують на / etc / shadow. Пізніше root відкриває файл у / tmp, скорочує і перезаписує / etc / shadow і раптом більше ніхто не може увійти в систему. Існує пов'язана атака, яка експлуатує стан перегонів між перевіркою на наявність тимчасового файлу та створенням файлу.

Існують способи уникнути цієї проблеми, включаючи ретельне використання mktemp () та mkstemp (), але не всі програмісти та користувачі знають про цей ризик. В результаті нещодавно запропоновано патч ядра Linux, і, очевидно, він застосований до ядра, яке ви використовуєте. Патч запобігає наступним посиланням в одній із поширених ситуацій, коли зловмисне посилання могло бути посаджено: каталог, що записується у світі, з набором липкого біта, який зазвичай / tmp зазвичай налаштовується в системах Unix. Замість того, щоб перейти за символьним посиланням, спроба системного виклику закінчується програмою EACCES і ядро ​​записує повідомлення, яке ви бачили.

Деякі пов'язані балачки в списку розсилки ядра Linux.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.