Aşağıdaki çekirdek mesajı ne anlama geliyor?


12

Aşağıdaki / var / log / messages görünür, bunun anlamı nedir?

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

Bir cron işi çalıştırmak üzereyken olur.


Yanıtlar:


9

Ayrıcalıklı bir işlem, önemli bir dosyanın (/ etc / passwd, / etc / shadow, vb.) Üzerine bir symlink işaret ederek üzerine yazılabilir. Örneğin, root'un / tmp içinde dosya oluşturan bir program çalıştıracağını biliyorsanız, dosya adının ne olacağını tahmin ederek bir tuzak yerleştirebilirsiniz (genellikle / tmp / fooXXX, foo program adı ve XXX süreç kimliği) ve / etc / fill komutunu / etc / shadow'i göstermesi muhtemel adaylarla doldurun. Daha sonra root dosyayı / tmp içinde açar, keser ve / etc / shadow üzerine yazar ve birden kimse artık sisteme giriş yapamaz. Bir geçici dosyanın varlığını kontrol etmek ile dosyanın oluşturulması arasında bir yarış koşulundan yararlanan ilgili bir saldırı vardır.

Mktemp () ve mkstemp () 'nin dikkatli kullanımı da dahil olmak üzere bu sorunu önlemenin yolları vardır, ancak tüm programcılar ve kullanıcılar bu riskin farkında olmayacaktır. Sonuç olarak, son zamanlarda bir Linux çekirdek yaması önerildi ve görünüşte kullandığınız çekirdeğe uygulandı. Düzeltme eki, kötü amaçlı bağlantının yerleştirilmiş olabileceği yaygın durumlardan birinde aşağıdaki sembolik bağlantıları engeller: / tmp normal olarak Unix sistemlerinde yapılandırılan yol olan yapışkan bit kümesine sahip dünya çapında yazılabilir bir dizin. Symlink'i takip etmek yerine, denenen sistem çağrısı EACCES ile başarısız olur ve çekirdek gördüğünüz iletiyi günlüğe kaydeder.

Linux çekirdeği posta listesindeki bazı ilgili konuşmalar.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.