# PEASS-ng

<figure><img src="/files/qEPltPEMWtU4jpyx1AN8" alt=""><figcaption></figcaption></figure>

Peass (Privilege Escalation Awesome Scripts SUITE - new generation), Windows ve Linux/Unix\* ve MacOS için ayrıcalık yükseltme araçlarıdır. Bu araçlar, yararlanabileceğiniz olası yerel ayrıcalık yükseltme yollarını arar ve bunları size güzel renklerle yazdırır, böylece yanlış yapılandırmaları kolayca fark edebilirsiniz. Nmap, dirb gibi makine hakkında bilgi toplamak için kullanılır. Genellikle netcat ile reverse shell aldıktan sonra bilgisayarımızdan bir python http.server başlatarak saldırdığımız makinedeki işletim sistemine göre uygun peas'i atarız. Peas'imizi "chmod +x linpeas.sh" komutundaki gibi yetkilendirir ve çalıştırırız. Sonrasında, çıktıdaki yazıların renklerine göre nerede zafiyet olabileceğini ve peass'in bize önerdiği muhtemel exploitleri görürüz.

<figure><img src="/files/7UZl5QvUBIJAymi8IASY" alt=""><figcaption></figcaption></figure>

Kırmızı/Sarı rengi %99 ihtimalle bir PE (Privilege Escalation) yani yetki yükseltme vektörü olduğunu belirtir. Kırmızı renkler, en az bir kez bakmamız gereken zafiyet çıkabilecek yerleri gösterir. Açık mavi, mavi ve yeşil renkleri genellikle işimize yaramayan sıradan şeyleri gösterir. "LightMagenta" yazan eflatuna yakın beyaz renk ise bizim, yani saldırganın bilgilerini içerir.

<figure><img src="/files/gxH8NMl1qDEGHNUlfLj5" alt=""><figcaption></figcaption></figure>

## Anonymous: TryHackMe Box

Peass, çözüme giden yolda işlerimizi kolaylaştıran ve bizi bir adım ileriye götüren bir araç olduğu için kullanımını TryHackMe'de bulunan "Anonymous" isimli makineyi çözerek anlatmak istiyorum. Bu makineyi çözerken ayrıca nmap ve wget araçlarını, dosya gönderim protokolünü (FTP) ve SUID PE komutlarını kullanacağız.

{% embed url="<https://tryhackme.com/room/anonymous>" %}

### Nmap ile Port Taraması

<figure><img src="/files/dbSxXB0JHFg1fZnSXYdf" alt=""><figcaption></figcaption></figure>

Nmap ile port taraması yaptığımızda 21, 22, 139 ve 445 portlarının açık olduğunu gördük. Özellikle bu portlarda bir zafiyetin olup olmadığını öğrenmek için aşağıdaki aramayı yapalım.

<figure><img src="/files/CxBDIidyOHNlKr5t1dZj" alt=""><figcaption></figcaption></figure>

İkinci nmap taramasında anonymous:anonymous bilgileri ile FTP'ye bağlanabileceğimizi gördük.

### FTP Bağlantısı ve Dosya Yükleme

<figure><img src="/files/w9NN3IRCtmmrpI7WzeIn" alt=""><figcaption></figcaption></figure>

FTP'ye başarılı bir şekilde bağlandıktan sonra, tüm kullanıcılar için okuma, yazma ve çalıştırma yetkilerine sahip bir "scripts" dosyasının olduğunu gördük. İçine girdiğimizde bizi üç yeni dosya karşılıyor. Haydi, bunları indirelim ve ne olduklarına bakalım.

<figure><img src="/files/71JkrR4CK8VONCeSolyo" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/bc0tZlDUQ7sSzL1KZ8Yi" alt=""><figcaption></figcaption></figure>

"to\_do.txt" dosyası bilgisayar sahibinin kendine aldığı notları içeriyor gibi görünüyor. Araştırmaya devam edelim.

<figure><img src="/files/cKEBmffup2am1Sd63HLj" alt=""><figcaption></figcaption></figure>

"removed\_files.log" dosyası, bir Cronjob'unun loglarını tutuyormuş gibi görünüyor. Cronjob'unun çalıştırdığı dosyanın "clean.sh" olabileceğini düşünüyorum. Hadi doğrulamak için dosyanın içine göz atalım.

<figure><img src="/files/2BhNlVybc9dQfgwPUM5l" alt=""><figcaption></figcaption></figure>

Bingo! "removed\_files.log" dosyasının içindeki bildirimler bu dosya ile bağlantılı olduğunu gösteriyor. Cronjob'unun belirli bir zaman geçtikten sonra bu dosyayı çalıştıracağını biliyoruz. FTP içerisinde "clean.sh" dosyasının tüm kullanıcılar için yazma ve çalıştırma yetkisine sahip olduğunu öğrenmiştik. Bu dosya içerisine eğer reverse shell kodu yüklersek, Cronjob dosyayı çalıştırdığında sistemi netcat ile dinleyebiliriz.

<figure><img src="/files/9Bx9zlIw3LLdmkGIcxYw" alt=""><figcaption></figcaption></figure>

TryHackMe'nin bana verdiği IP adresini girerek, kurbanın benim bilgisayarımındaki 6060 portuna bağlanmasını sağlayacak kodu 'clean.sh' dosyası içine yazdım.

<figure><img src="/files/6PPlwSpd7pzHGVbPa8tK" alt=""><figcaption></figcaption></figure>

Yeni oluşturduğum dosyayı FTP ile yüklemeden önce 6060 portunu dinliyorum.

<figure><img src="/files/zVYRw8lNIzxv5PeAyWtb" alt=""><figcaption></figcaption></figure>

Dinleme işlemi sürerken başka bir terminal açarak FTP'ye bağlanıyorum ve yeni 'clean.sh' dosyasını yüklüyorum.

### NetCat ve Wget

<figure><img src="/files/5wnfyizO2a20VtMoeXyK" alt=""><figcaption></figcaption></figure>

Aradan bir süre geçtikten sonra dinlediğim 6060 portu üzerinden makineye bağlanıyorum.

<figure><img src="/files/HdMfONOa5wZyc8ZREb38" alt=""><figcaption></figcaption></figure>

{% embed url="<https://github.com/carlospolop/PEASS-ng/tree/master>" %}

Şimdi yeni bir terminal açarak Linpeas'in bulunduğu dizine gittim. Bu sırada bir HTTP serverı ayağa kaldırarak netcat ile dinlediğim makineye 'linpeas.sh' dosyasını yükleyeceğim.

<figure><img src="/files/qlrYmPxhIQQ3I28sYfLX" alt=""><figcaption></figcaption></figure>

wget yardımı ile IP adresimi ve açtığım 9000 portu üzerinden 'linpeas.sh' dosyasını makineye yükledim.

### Linpeas ve SUID

<figure><img src="/files/HUxgnpyK5Jrwn97p5nWR" alt=""><figcaption></figcaption></figure>

"chmod +x linpeas.sh" komutu ile scriptimi yetkilendirdim ve çalıştırdım. Şimdi gelen sayfalarca çıktının birazını inceleyelim.

<figure><img src="/files/AxOPYvc0SfGKjBGdORvr" alt=""><figcaption></figcaption></figure>

Sistem hakkında bazı bilgileri elde ettik. Sudo versiyonunda bir zafiyet olabileceği için kırmızı ile yazılmış. İncelemeye devam edelim.

<figure><img src="/files/kP9t5mpZoZU3bVJuNtS4" alt=""><figcaption></figcaption></figure>

Bize muhtemel zafiyetlerin CVE numaralarını verdi. İncelemeye devam edelim.

<figure><img src="/files/mFqLbAlC5pkrXTbKFX1Z" alt=""><figcaption></figcaption></figure>

Bize "/env" dizininde %99 ihtimalle bir SUID yetki yükseltme açığı olabileceğini belirtti. Bunun için GTFOBins sitesinden yararlanabiliriz.

{% embed url="<https://gtfobins.github.io/#+suid>" %}

<figure><img src="/files/yqGzgqG1ThHYClRx2MjI" alt=""><figcaption></figcaption></figure>

Uygun kodu GTFOBins'de bulduk.

<figure><img src="/files/VhMFWWXfpUJDRogaxpxd" alt=""><figcaption></figcaption></figure>

Kodu ilk denediğimde "./env bulunamadı" hatası aldım. "whereis env" yazarak "/env" dosyasının yolunu öğrendim ve SUID kodunu düzelterek tekrar yazdım. İkinci denememde başarılı bir şekilde root yetkilerine eriştim.

<figure><img src="/files/vX6CITSK9lxxyOfQc30y" alt=""><figcaption></figcaption></figure>

Root yetkileri ile TryHackMe'nin bizden istediği iki flag'i buldum. "/home/namelessone" dizini altında başka bir sorunun cevabı bulunuyor. Yazımda anlattığım adımları uygulayarak sorunun cevabına ulaşabilirsiniz.

{% embed url="<https://github.com/BerkayAtass>" %}
Bu yazı Berkay ATAŞ tarafından hazırlanmıştır.
{% endembed %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.yavuzlar.org/araclar/peass-ng.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
