exploit paylaşım grubumuz: t.me/HTTPwnn

Nedir bu LPE (Local Privilege Escalation) açıkları?

  • Konu başlatıcı Konu başlatıcı sh3d0w
  • Başlangıç Tarihi Başlangıç Tarihi

sh3d0w

WarNight Member
Katılım
25 Haz 2026
Mesaj
65
Reaksiyon
39
Puan
18
xentr_thread_starter

Yetki Sistemlerinin Mantığı (Windows vs. Linux)​

Yetki yükseltmeyi anlamak için işletim sistemlerinin güvenlik sınırlarını bilmek gerekir. Her iki işletim sisteminde de hiyerarşi temelde Kullanıcı Alanı (User Space) ve Çekirdek Alanı (Kernel Space) olarak ikiye ayrılır.
KERNEL SPACE En yetkili katman (Ring 0)
(Windows Kernel / Linux Kernel) Donanıma tam erişim.

^
| Sistem Çağrıları (Syscalls)
v

USER SPACE Kısıtlı katman (Ring 3)
(Windows: SYSTEM, Admin, Standart User) Uygulamalar burada çalışır.
(Linux: root, Standart User, Servisler)

1. Linux Yetki Sistemi​

  • User (Standart Kullanıcı): Dosya sistemi ve süreçler üzerinde kısıtlı yetkilere sahiptir. Sadece kendi ev dizininde (/home/user) tam yetkilidir.
  • Root (Süper Kullanıcı): UID 0 (User ID) değerine sahip, sistemdeki mutlak otoritedir. Her dosyayı okuyabilir, her süreci sonlandırabilir.
  • Kernel (Çekirdek): Ring 0 seviyesinde çalışır. Sürücüler ve donanım kontrolü buradadır. Standart kullanıcılar Kernel ile System Calls (Sistem Çağrıları) üzerinden konuşur.

2. Windows Yetki Sistemi​

  • Standart User: Günlük kullanım için kısıtlı yetkilere sahip hesap.
  • Administrator: Sistemsel değişiklikler yapabilen ancak hala bazı çekirdek korumalarına takılan yüksek yetkili kullanıcı.
  • SYSTEM (NT AUTHORITY\SYSTEM): Windows işletim sisteminin kendisinin çalıştığı, en yüksek kullanıcı alanlı yetkidir. Çoğu zaman Administrator'dan bile daha geniş sistemsel haklara sahiptir.
  • Kernel: Windows mimarisinin kalbidir (ntoskrnl.exe).

Güncel Örnekler, CVE Açıkları ve Nedenleri​

Son dönemde (2025 ve 2026 dahil olmak üzere yakın geçmişte) ses getiren ve mantığını bilmen gereken kritik yetki yükseltme açıkları:

1. Linux Local Privilege Escalation (LPE) Örnekleri​

  • CVE-2024-1086 (Linux Kernel netfilter): * Neden Oluştu? Linux çekirdeğinin netfilter (güvenlik duvarı) alt yapısında bir Use-After-Free (UAF) zafiyeti meydana geldi. Bellek düzgün yönetilemediği için serbest bırakılan bir bellek alanı manipüle edilerek standart kullanıcıya root yetkisi sağlandı.
  • CVE-2023-4911 (Looney Tunables):
    • Neden Oluştu? GNU C Library (glibc) içinde dinamik yükleyici (ld.so), GLIBC_TUNABLES çevre değişkenini işlerken bir Buffer Overflow (Tampon Bellek Taşması) hatası barındırıyordu. Bu hata, SUID (root yetkisiyle çalışan) programlar tetiklenerek root kabuğu (shell) alınmasını sağladı.

2. Windows Local Privilege Escalation (LPE) Örnekleri​

  • CVE-2024-30088 (Windows Kernel):
    • Neden Oluştu? Windows Çekirdeği nesneleri bellek içinde işlerken bir Race Condition (Yarış Durumu) açığı oluştu. İki farklı işlem aynı anda aynı bellek kaynağına erişmeye çalışırken araya sızan zararlı kod, sürecin yetki belirtecini (Token) SYSTEM seviyesine çıkardı.
  • CVE-2023-36802 (Microsoft Streaming Service Proxy):
    • Neden Oluştu? Bir kernel sürücüsünde (mskssrv.sys) Uninitialized Pointer (Başlatılmamış Gösterici) hatası vardı. Saldırganlar kernel belleğini manipüle ederek kısıtlı bir işlemden SYSTEM yetkilerine geçiş yapabildiler.

Kendi Yetki Yükseltme Tool'umuzu Nasıl Yazarız?​

Bir yetki yükseltme aracı yazarken mantık şudur: Sistemdeki yanlış yapılandırmaları otomatik olarak taramak ve sömürmek. Sıfırdan bir kernel açığı (0-day) bulmak zordur, ancak sistem yöneticilerinin yaptığı hataları bulup sömüren bir betik yazmak oldukça kolaydır.

1. Linux İçin Basit LPE Scripti (Python / Bash)​

Linux'ta en klasik yanlış yapılandırma, normal bir kullanıcının sudo yetkisiyle şifresiz olarak bazı güçlü komutları (örneğin perl, python, find, less) çalıştırabilmesidir.

Aşağıdaki Python kodu, sistemde sudo -l (şifresiz sudo hakları) komutunu taklit eder ve sömürülebilir bir dosya (dünyaya yazılabilir cronjob gibi) arar:
#burada 2 tane kütüphane ekledik biri yardımcı işlemler diyeri işletim sistemi belki ramdeki bir hata ile gireriz diye veya ramde olan bir dosyadan.
import os
import subprocess

def check_sudo_leaks():
print("[*] Sifresiz calisabilen SUDO komutlari kontrol ediliyor...")
try:
output = subprocess.check_output("sudo -l", shell=True, stderr=subprocess.DEVNULL).decode()
print(output)
if "(root) NOPASSWD:" in output:
print("[+] KRITIK: Sifresiz root yetkisiyle calisan komut bulundu!")
except:
print("[-] Sudo komutlari listelenemedi.")

def check_writable_cron():
print("\n[*] Yazilabilir Cron dosyalari araniyor...")
cron_paths = ["/etc/crontab", "/etc/cron.d"]
for path in cron_paths:
if os.path.exists(path) and os.access(path, os.W_OK):
print(f"[+] KRİTİK: {path} dosyasina YAZMA yetkiniz var! Buraya tersine baglanti (reverse shell) eklenebilir.")

if __name__ == "__main__":
check_sudo_leaks()
check_writable_cron()

2. Windows İçin Basit LPE Scripti (PowerShell)​

Windows'ta en sık karşılaşılan hatalardan biri, arka planda SYSTEM yetkisiyle çalışan bir servisin çalıştırılabilir dosyasının (.exe), standart kullanıcılar tarafından değiştirilebilir (yazılabilir) olmasıdır (Weak Service File Permissions).

Aşağıdaki basit PowerShell kodu, sistemdeki servislerin yollarını listeler ve yaygın hatalı dizinleri kontrol eder:

Write-Host "[*] Windows Zafiyetli Servis Yollari Taraniyor..." -ForegroundColor Cyan
Get-WmiObject win32_service | Select-Name, DisplayName, PathName, StartMode | Where-Object {$_.StartMode -eq "Auto"} | ForEach-Object {
$path = $_.PathName
# Tırnak içine alınmamış ve boşluk içeren servis yolları (Unquoted Service Path) kontrolü yaptık önemli olan bu idi
if ($path -notmatch '^"' -and $path -match ' ') {
Write-Host "[+] Potansiyel Unquoted Service Path: $path" -ForegroundColor Red
}
}

Write-Host "[*] Taranacak kritik dizin izinleri kontrol edilebilir." -ForegroundColor Green

Linux'un Efsanesi: LinPEAS Nedir ve Nasıl Çalışır?​

LinPEAS (Linux Privilege Escalation Awesome Script), sızma testlerinde Linux sistemine girildikten sonra çalıştırılan, sistemdeki neredeyse tüm bilinen yetki yükseltme vektörlerini saniyeler içinde tarayan açık kaynaklı bir betiktir (Script).

Nasıl Çalışır ve Neleri Tarar?​

LinPEAS tamamen bağımlılıksızdır (hiçbir harici kütüphaneye ihtiyaç duymadan saf sh/bash ile çalışır). Temel olarak şu başlıkları inceler:
  1. Sistem Bilgisi: Kernel sürümü, OS dağıtımı (Kernel exploit açıklarını eşleştirmek için).
  2. Kullanıcılar ve Gruplar: Mevcut kullanıcının yetkileri, sudo hakları, hassas gruplara (docker, lxd, disk) üye olup olmadığı.
  3. Çevre Değişkenleri ve Dosyalar: Şifre barındırabilecek .bash_history, wp-config.php, SSH anahtarları.
  4. SUID / SGID Dosyalar: Çalıştırıldığında sahibinin (genelde root) yetkileriyle çalışan dosyalar.
  5. Ağ ve Portlar: Sadece yerelde (127.0.0.1) çalışan ve dışarı kapalı olan zafiyetli servisler (örn: içeride şifresiz çalışan bir Redis veritabanı).

Renk Kodlaması (En Önemli Özelliği)​

LinPEAS çıktısını renklerle optimize eder. Ekranda akan binlerce satırı okumak yerine renklere bakarsın:

  • KIRMIZI/SARI (RED/YELLOW): %99 oranında yetki yükseltmeni sağlayacak bir açık demektir (Doğrudan buraya odaklanmalısın).
  • KIRMIZI (RED): Kontrol etmen gereken şüpheli bir durum veya yapılandırma.
  • MAVİ (BLUE): Devre dışı bırakılmış veya standart korumalar
linux için
curl -sL https://github.com/peass-ng/PEASS-ng/releases/latest/download/linpeas.sh | sh
windows için
https://github.com/peass-ng/PEASS-ng/blob/master/winPEAS/winPEASps1/winPEAS.ps1
https://github.com/peass-ng/PEASS-ng/tree/master/winPEAS/winPEASexe
https://github.com/peass-ng/PEASS-ng/blob/master/winPEAS/winPEASbat/winPEAS.bat

(hatta bazı programlar ve crackli uygulamalar ring -1 kadar ine bildiğini biliyormuydunuz burada başlatılanlar işlemcinin işlemcisi olan Intel Management Engine (ME) veya AMD tarafındaki karşılığıyla AMD Platform Security Processor (PSP). bunlar tabi ring -2 Ring -3: En dipteki donanımsal mikro kod seviyesi. var)
 
Son düzenleme:

Yetki Sistemlerinin Mantığı (Windows vs. Linux)​

Yetki yükseltmeyi anlamak için işletim sistemlerinin güvenlik sınırlarını bilmek gerekir. Her iki işletim sisteminde de hiyerarşi temelde Kullanıcı Alanı (User Space) ve Çekirdek Alanı (Kernel Space) olarak ikiye ayrılır.
KERNEL SPACE En yetkili katman (Ring 0)
(Windows Kernel / Linux Kernel) Donanıma tam erişim.

^
| Sistem Çağrıları (Syscalls)
v

USER SPACE Kısıtlı katman (Ring 3)
(Windows: SYSTEM, Admin, Standart User) Uygulamalar burada çalışır.
(Linux: root, Standart User, Servisler)

1. Linux Yetki Sistemi​

  • User (Standart Kullanıcı): Dosya sistemi ve süreçler üzerinde kısıtlı yetkilere sahiptir. Sadece kendi ev dizininde (/home/user) tam yetkilidir.
  • Root (Süper Kullanıcı): UID 0 (User ID) değerine sahip, sistemdeki mutlak otoritedir. Her dosyayı okuyabilir, her süreci sonlandırabilir.
  • Kernel (Çekirdek): Ring 0 seviyesinde çalışır. Sürücüler ve donanım kontrolü buradadır. Standart kullanıcılar Kernel ile System Calls (Sistem Çağrıları) üzerinden konuşur.

2. Windows Yetki Sistemi​

  • Standart User: Günlük kullanım için kısıtlı yetkilere sahip hesap.
  • Administrator: Sistemsel değişiklikler yapabilen ancak hala bazı çekirdek korumalarına takılan yüksek yetkili kullanıcı.
  • SYSTEM (NT AUTHORITY\SYSTEM): Windows işletim sisteminin kendisinin çalıştığı, en yüksek kullanıcı alanlı yetkidir. Çoğu zaman Administrator'dan bile daha geniş sistemsel haklara sahiptir.
  • Kernel: Windows mimarisinin kalbidir (ntoskrnl.exe).

Güncel Örnekler, CVE Açıkları ve Nedenleri​

Son dönemde (2025 ve 2026 dahil olmak üzere yakın geçmişte) ses getiren ve mantığını bilmen gereken kritik yetki yükseltme açıkları:

1. Linux Local Privilege Escalation (LPE) Örnekleri​

  • CVE-2024-1086 (Linux Kernel netfilter): * Neden Oluştu? Linux çekirdeğinin netfilter (güvenlik duvarı) alt yapısında bir Use-After-Free (UAF) zafiyeti meydana geldi. Bellek düzgün yönetilemediği için serbest bırakılan bir bellek alanı manipüle edilerek standart kullanıcıya root yetkisi sağlandı.
  • CVE-2023-4911 (Looney Tunables):
    • Neden Oluştu? GNU C Library (glibc) içinde dinamik yükleyici (ld.so), GLIBC_TUNABLES çevre değişkenini işlerken bir Buffer Overflow (Tampon Bellek Taşması) hatası barındırıyordu. Bu hata, SUID (root yetkisiyle çalışan) programlar tetiklenerek root kabuğu (shell) alınmasını sağladı.

2. Windows Local Privilege Escalation (LPE) Örnekleri​

  • CVE-2024-30088 (Windows Kernel):
    • Neden Oluştu? Windows Çekirdeği nesneleri bellek içinde işlerken bir Race Condition (Yarış Durumu) açığı oluştu. İki farklı işlem aynı anda aynı bellek kaynağına erişmeye çalışırken araya sızan zararlı kod, sürecin yetki belirtecini (Token) SYSTEM seviyesine çıkardı.
  • CVE-2023-36802 (Microsoft Streaming Service Proxy):
    • Neden Oluştu? Bir kernel sürücüsünde (mskssrv.sys) Uninitialized Pointer (Başlatılmamış Gösterici) hatası vardı. Saldırganlar kernel belleğini manipüle ederek kısıtlı bir işlemden SYSTEM yetkilerine geçiş yapabildiler.

Kendi Yetki Yükseltme Tool'umuzu Nasıl Yazarız?​

Bir yetki yükseltme aracı yazarken mantık şudur: Sistemdeki yanlış yapılandırmaları otomatik olarak taramak ve sömürmek. Sıfırdan bir kernel açığı (0-day) bulmak zordur, ancak sistem yöneticilerinin yaptığı hataları bulup sömüren bir betik yazmak oldukça kolaydır.

1. Linux İçin Basit LPE Scripti (Python / Bash)​

Linux'ta en klasik yanlış yapılandırma, normal bir kullanıcının sudo yetkisiyle şifresiz olarak bazı güçlü komutları (örneğin perl, python, find, less) çalıştırabilmesidir.

Aşağıdaki Python kodu, sistemde sudo -l (şifresiz sudo hakları) komutunu taklit eder ve sömürülebilir bir dosya (dünyaya yazılabilir cronjob gibi) arar:
#burada 2 tane kütüphane ekledik biri yardımcı işlemler diyeri işletim sistemi belki ramdeki bir hata ile gireriz diye veya ramde olan bir dosyadan.
import os
import subprocess

def check_sudo_leaks():
print("[*] Sifresiz calisabilen SUDO komutlari kontrol ediliyor...")
try:
output = subprocess.check_output("sudo -l", shell=True, stderr=subprocess.DEVNULL).decode()
print(output)
if "(root) NOPASSWD:" in output:
print("[+] KRITIK: Sifresiz root yetkisiyle calisan komut bulundu!")
except:
print("[-] Sudo komutlari listelenemedi.")

def check_writable_cron():
print("\n[*] Yazilabilir Cron dosyalari araniyor...")
cron_paths = ["/etc/crontab", "/etc/cron.d"]
for path in cron_paths:
if os.path.exists(path) and os.access(path, os.W_OK):
print(f"[+] KRİTİK: {path} dosyasina YAZMA yetkiniz var! Buraya tersine baglanti (reverse shell) eklenebilir.")

if __name__ == "__main__":
check_sudo_leaks()
check_writable_cron()

2. Windows İçin Basit LPE Scripti (PowerShell)​

Windows'ta en sık karşılaşılan hatalardan biri, arka planda SYSTEM yetkisiyle çalışan bir servisin çalıştırılabilir dosyasının (.exe), standart kullanıcılar tarafından değiştirilebilir (yazılabilir) olmasıdır (Weak Service File Permissions).

Aşağıdaki basit PowerShell kodu, sistemdeki servislerin yollarını listeler ve yaygın hatalı dizinleri kontrol eder:

Write-Host "[*] Windows Zafiyetli Servis Yollari Taraniyor..." -ForegroundColor Cyan
Get-WmiObject win32_service | Select-Name, DisplayName, PathName, StartMode | Where-Object {$_.StartMode -eq "Auto"} | ForEach-Object {
$path = $_.PathName
# Tırnak içine alınmamış ve boşluk içeren servis yolları (Unquoted Service Path) kontrolü yaptık önemli olan bu idi
if ($path -notmatch '^"' -and $path -match ' ') {
Write-Host "[+] Potansiyel Unquoted Service Path: $path" -ForegroundColor Red
}
}

Write-Host "[*] Taranacak kritik dizin izinleri kontrol edilebilir." -ForegroundColor Green

Linux'un Efsanesi: LinPEAS Nedir ve Nasıl Çalışır?​

LinPEAS (Linux Privilege Escalation Awesome Script), sızma testlerinde Linux sistemine girildikten sonra çalıştırılan, sistemdeki neredeyse tüm bilinen yetki yükseltme vektörlerini saniyeler içinde tarayan açık kaynaklı bir betiktir (Script).

Nasıl Çalışır ve Neleri Tarar?​

LinPEAS tamamen bağımlılıksızdır (hiçbir harici kütüphaneye ihtiyaç duymadan saf sh/bash ile çalışır). Temel olarak şu başlıkları inceler:
  1. Sistem Bilgisi: Kernel sürümü, OS dağıtımı (Kernel exploit açıklarını eşleştirmek için).
  2. Kullanıcılar ve Gruplar: Mevcut kullanıcının yetkileri, sudo hakları, hassas gruplara (docker, lxd, disk) üye olup olmadığı.
  3. Çevre Değişkenleri ve Dosyalar: Şifre barındırabilecek .bash_history, wp-config.php, SSH anahtarları.
  4. SUID / SGID Dosyalar: Çalıştırıldığında sahibinin (genelde root) yetkileriyle çalışan dosyalar.
  5. Ağ ve Portlar: Sadece yerelde (127.0.0.1) çalışan ve dışarı kapalı olan zafiyetli servisler (örn: içeride şifresiz çalışan bir Redis veritabanı).

Renk Kodlaması (En Önemli Özelliği)​

LinPEAS çıktısını renklerle optimize eder. Ekranda akan binlerce satırı okumak yerine renklere bakarsın:

  • KIRMIZI/SARI (RED/YELLOW): %99 oranında yetki yükseltmeni sağlayacak bir açık demektir (Doğrudan buraya odaklanmalısın).
  • KIRMIZI (RED): Kontrol etmen gereken şüpheli bir durum veya yapılandırma.
  • MAVİ (BLUE): Devre dışı bırakılmış veya standart korumalar
  • curl -sL https://github.com/peass-ng/PEASS-ng/releases/latest/download/linpeas.sh | sh

(hatta bazı programlar ve crackli uygulamalar ring -1 kadar ine bildiğini biliyormuydunuz burada başlatılanlar işlemcinin işlemcisi olan Intel Management Engine (ME) veya AMD tarafındaki karşılığıyla AMD Platform Security Processor (PSP). bunlar tabi ring -2 Ring -3: En dipteki donanımsal mikro kod seviyesi. var)
ellerine saglık, linpeası diyipte winpeası dememek ayıp olr https://github.com/peass-ng/PEASS-ng/blob/master/winPEAS/winPEASps1/winPEAS.ps1 xd
 
Geri
En Üst