SSH Üzerinden Clear-Text Parolanın Elde Edilmesi

Selamlar, yoğun sürecin ardından 2023’ün ilk postunu paylaşayım istedim. Bugün bu blog postumda SSH servisini biraz daha kurcalayalım istedim. Linux sistemlerde Lateral Movement nasıl yaparız bunu bir önceki yazımda paylaşmıştım. Okumak isterseniz buradan okuyabilirsiniz. Bugün ise hedefimiz yine SSH olacak ve SSH bağlantısı yapan kullanıcıların clear-text parolalarını nasıl ele geçirebileceğimizi dilim döndükçe anlatmaya çalışacağım.

Bu yöntemi pentest veya red team süreçlerinde kullanarak lateral movement sürecimizi ileriye taşıyabiliriz. Senaryoda bir Linux Ubuntu makinesini root yetkisinde ele geçirdiğinizi ve bu makineye de aktif SSH yapıldığını düşünelim. Şimdi biliyoruz ki SSH şifreli trafik ileten bir protokoldür bu yüzden network dinleyerek veya başka saldırılar ile clear-text parola bulmamız zorlaşacaktır. (Tabi bir kullanıcı SSH kullanıcı bilgilerini makine üzerinde tutmuyorsa). Biz ise anlatacağım yöntemi kullanarak SSH bağlantısı yapan kullanıcının clear-text parolasını almaya çalışacağız. Peki bunu nasıl yapacağız?

Şimdi öncelikle ele geçirdiğimiz makinede strace aracının yüklü olması gerekiyor veya sunucunun internete çıkışı var ise Ubuntu makine veya türevi makinelerde aşağıdaki komutu kullanarak yükleme işlemini gerçekleştirebilirsiniz.

apt-get install strace

Peki nedir bu Strace, ne işimize yarayacak?

Basitçe söylemek gerekirse bu araç ile servisin/programın sistem çağrıları, programın akışı izlenebilir. Peki biz SSH servisini strace ile izlersek acaba bir şeyler elde edebilir miyiz ona bakacağız.

Şimdi başlamadan önce bize hedef sistem üzerinde çalışan SSH servisinin PID değeri yani process id numarası gerekiyor. Hedef sistemine direkt root seviyesinde erişimimiz olduğu için bunu aşağıdaki şekilde öğrenebiliriz.

Evet hedef sistemde SSH servisi 10650 PID değerine sahip. Şimdi strace aracını kullanarak bu PID değerinin sistem çağrılarını ve program akışını inceleyelim. Bunu da aşağıdaki şekilde yapabiliriz. Burada -e parametresi ile write stringini veriyoruz çünkü write işlemi ile clear-text görebiliyoruz. Eğer bunu vermezsek çok fazla bir çıktı üretecektir. Bu çıktı da clear-text parolayı görmeniz zorlaşabilir.

Şimdi başka bir makineden ilgili sunucuya bağlantı yapalım.

Şimdi tekrar Ubuntu makinemize dönelim. Çıktıyı incelediğimizde SSH atan kullanıcının kullanıcı adının okan olduğunu, parolasının ise BenOkan123 olduğunu clear-text olarak görebiliyoruz.

Kısa ve öz bir yazı oldu. Bu şekilde Linux sistemlerde lateral movement işlemlerini gerçekleştirebilirsiniz. Kafanıza takılan bir yer olur ise sorabilirsiniz. Umarım anlaşılabilir anlatabilmişimdir. Bir sonraki postta görüşmek üzere, güvenli günler dilerim 🙂

Leave a Reply

Your email address will not be published. Required fields are marked *