İkili uygulama tarafından başka bir dizin olarak kullanılan bir dizini aldatmak / alay etmek nasıl?


9

Verilerini her zaman yazan bir ikili uygulama olduğunu varsayalım /tmp.

/tmpBaşka bir dizin (örneğin home/tmp) olarak bu ikili için nasıl sahtekarlık / sahte olabilir ?

Diyelim ki bu ikiliyi farklı bir dizin kullanmaya zorlamak için değiştirmenin bir yolu yok.

Yanıtlar:


11

Uygulamayı bir chrootortamda çalıştırabilirsiniz, yani /uygulama gerçek değildir /. Tamamen yeni bir dosya sistemi hiyerarşisi oluşturursunuz ve --bindihtiyacınız olan her şeyi ona bağlarsınız. İlgili nokta şudur: gerçek monte edebilirsiniz ~/tmpiçin /tmpde chrootçevreye.

Kullanmak yerine chroot(süper kullanıcı ayrıcalığı gerektirir) Linux kapsayıcılarıyla ( lxc) az çok aynı şeyi yapabilirsiniz . Ben aşina değilim lxcama ana bilgisayar sistemi için normal bir kullanıcı işlemi olduğundan kap içinde bu tür yapılandırmalar için süper kullanıcı olmak gerekmez.


Harika bir cevap, bunu da duymamıştım ya chrootda lxcyapabilmiştim. Bir süper kullanıcı olmadan bunu başarmanın bir yolu olduğunu bilmek gerçekten güzel.
Nobilis

3
@Nobilis 98 mükemmel bir cevap olarak tanınması için eksikler ...
Hauke ​​Laging

2
Ancak, dikkat chroot(eğer bütün değiştiriyorsanız ek kurulum gerektirir /sadece, /tmpherhangi bir erişim böylece /etc, /varvb, aynı zamanda "hapse" içinde olacaktır) ve kendi ( "hapisteki" programının güvenlik kaygılarını yaratır may Sahte sisteminizi ayarlarken izinlere dikkat etmezseniz, dosya sisteminin normalde sınır dışı olabilecek bölümlerini değiştirebilir /).
IMSoP

@IMSoP "Dosya sisteminin normalde sınır dışı olabilecek kısımlarını daha ayrıntılı bir şekilde değiştirebilir" ifadesini daha ayrıntılı olarak açıklar mısınız?
Hauke ​​Laging

@HaukeLaging Eğer yenisinin /sadece yazması kısıtlanmamışsa root, "hapse atılan " kullanıcı /etc/passwd; bu daha sonra, bunun dışında mümkün olmayacak ayrıcalık yükseltme için kullanılabilir chroot. Geleneksel chrootolarak dosya sisteminin geri kalanını gizlemek için kullanılan birçok Linux FTP sunucusu, dizin kök olmayan bir kullanıcı tarafından yazılabilirse artık bunu reddediyor.
IMSoP

8

Çoğu POSIX uyumlu yazılım TMPDIR ortam değişkenini onurlandıracaktır;

env TMPDIR=~/mytmp  /path/to/application
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.