SSH EXPLOITATION







 Contents

Introduction

High-level attack overview & MITRE ATT&CK mapping

Prerequisite

Enumeration & Exploitation

Credential Enumeration

Validate Credential Authentication

Remote Command Execution

Get File (Ingress Tool Transfer)

Put file (Exfiltration Test)

Mitigation

Conclusion



Introduction

SSH (Secure Shell), Unix-like sistemleri uzaktan güvenli bir şekilde yönetmek için birincil protokoldür. Ancak, zayıf kimlik bilgileri (credentials) ve izin verici SSH yapılandırmaları, saldırganların yetkisiz erişim elde etmek için exploit ettiği yaygın güvenlik açıkları olmaya devam etmektedir. Penetration testing (pentesting) sürecinde amaç, gerçek dünya attack path'ini simüle ederek bu zayıflıkların potansiyel etkisini göstermektir. Bu, credential exposure, reconnaissance ve dosya aktarım (file transfer) yeteneklerini içerirken, aynı zamanda eylemlerin testin kapsamında denetlenebilir ve geri alınabilir olmasını sağlar.



High-level attack overview & MITRE ATT&CK mapping


SSH, uzaktan yönetim için çok önemlidir ancak yanlış yapılandırılırsa veya zayıf credentials kullanılırsa exploit edilebilir. Güvenlik ekipleri olarak, güvenlik açıklarını belirlemek için MITRE ATT&CK framework'ünü kullanarak saldırgan davranışını simüle edebiliriz.


 Credential enumeration:

  • MITRE ATT&CK Tekniği: Valid Accounts — T1078
  • Açıklama: Giriş yapmak için bilinen/tahmin edilen credentials kullanmak.

 Credential validation:

  • MITRE ATT&CK Tekniği: Valid Accounts — T1078
  • Açıklama: Credentials'ın çalıştığını onaylamak.

Remote command execution:

  • MITRE ATT&CK Tekniği: Remote Services: SSH — T1021.004
  • Açıklama: SSH üzerinden uzaktan komut çalıştırmak.

 File upload:

  • MITRE ATT&CK Tekniği: Ingress Tool Transfer — T1105
  • Açıklama: Araçları/dosyaları hedef sisteme iletmek.

 File download:

  • MITRE ATT&CK Tekniği: Data from Local System / Exfil


  • tration — T1005

  • Açıklama: Bir exfiltration kanalı göstermek.

 


Bu adımlar, saldırganın yaklaşımını simüle etmemize ve sistemin savunmasını her aşamada test etmemize olanak tanır. MITRE ATT&CK framework'ünü kullanarak, bu eylemleri belirli adversary davranışlarıyla eşleyebilir, güvenlik açıklarını belirlemeye ve güvenliği güçlendirmeye yardımcı olabiliriz


Prerequisite

 - Kali Linux

Tools: Netexec


Enumeration & Exploitation

Önce geçerli credentials'ı enumerate ederiz (örneğin, brute-forcing yoluyla) ve ardından bunlardan exploit ederek erişim sağlar, komutlar çalıştırır veya verileri exfiltrate ederiz; bu da zayıf credentials'ın sistemin tamamen ele geçirilmesine nasıl yol açabileceğini gösterir.


Credential Enumeration

Bu bir password spraying / brute force etkinliğidir. Keşfedilen herhangi bir credential, hassas kanıt olarak işaretlenmeli ve derhal loglanmalıdır.




SSH kimlik doğrulama listelerini denemek, zayıf veya varsayılan credentials'ı belirlemeye yardımcı olur; çünkü parola yeniden kullanımı ve kurumsal ortamlardaki legacy hesaplar genellikle SSH'ı yetkisiz erişime maruz bırakır.




Validate Credential Authentication

Credential discovery aşamasından onaylanmış erişime geçiş. Bu, saldırganların reconnaissance aşamasından initial foothold aşamasına geçtiği yerdir.





Keşfedilen bir credential (örneğin, example:123) kullanılarak yapılan tek bir oturum açma girişimi, etkileşimli veya scripted session kurar, otomatik taramalardaki false positive'leri ortadan kaldırır ve çalışan bir erişim vektörünün (access vector) var olduğunu doğrular.







Remote Command Execution


Post-compromise aşamasında hedef ortamı anlamak için minimum recon.


Uzaktan ifconfig (veya ip a) çalıştırmak, ağ arayüzlerini ve IP yapılandırmasını enumere etmeye yardımcı olur; yerel IP'leri, internal hedefleri, sanallaştırma kanıtlarını belirlemek veya ağ segmentasyonu hakkında içgörüler sağlamak gibi follow-on adımlar için değerli bilgiler sunar.




Put file (Exfiltration Test)



Bu adımın temel fikri, kimliği doğrulanmış (authenticated) kanalın yazılabilir olduğunu kanıtlayarak hedef ortama keyfi (arbitrary) payload'lar sokmamıza izin vermesidir. Bu, malicious code çalıştırmamızı, persistence sağlamamızı veya hassas verileri toplamamızı sağlar.




Uzak host'a bir dosya upload etmek, SSH'ın dosya transfer yetenekleri (SCP/SFTP) aracılığıyla araçları veya payload'ları deploy etmemize olanak tanır. Bu bize artan bir esneklik sağlar ve saldırıyı hızlandırarak malicious code'u verimli bir şekilde stage edip yürütmemizi sağlar. Defenders, özellikle yeni authentication kaynaklarıyla bağlantılıysa, /tmp gibi volatile yollarda beklenmedik dosyaları fark ederek bunu tespit edebilirler.




Get File (Ingress Tool Transfer)


Temel fikir, saldırgan kontrollü oturumumuzun host'tan veri exfiltrate etmek için kullanılabileceğini doğrulamaktır. Eğer /etc/passwd dosyasını alabiliyorsak, diğer okunabilir dosyalar da muhtemelen erişilebilirdir, bu da daha fazla exploitation potansiyelimizi genişletir.




Exfiltration, verileri gizlice taşırken aynı zamanda tespiti atlatmak (bypassing detection) ile ilgilidir. SSH, ortamlarda genellikle izin verilen güvenilir, şifrelenmiş bir kanal sunarak onu covert data transfers için ideal hale getirir. /etc/passwd gibi dosyaları alarak (retrieving), alarmları tetiklemeden yararlı bilgileri extract etme yeteneğimizi gösterir ve düşük hassasiyetli verilerin exfiltrate edilebileceğini kanıtlarız. Bu adım, confidentiality kontrollerindeki zayıflıkları ortaya çıkarır ve iyileştirilmiş egress monitoring ve veri koruma stratejilerine olan ihtiyacı vurgular.





Mitigation

  • Key-based SSH auth zorunlu kılın; mümkünse PasswordAuthentication'ı devre dışı bırakın.
  • Ayrıcalıklı (privileged) SSH erişimi ve bastion host'lar için MFA'yı zorunlu kılın.
  • Spraying saldırılarını engellemek için fail2ban / rate-limiting ve adaptif lockouts uygulayın.
  • Erişimi AllowUsers/AllowGroups ve IP tabanlı kontrollerle (jump/bastion) kısıtlayın.
  • SSH loglarını merkezileştirin ve SIEM'e iletin; high-risk hesaplar için session recording'i etkinleştirin.
  • sudoers'ı sıkılaştırın (harden) — NOPASSWD: ALL kuralını kaldırın ve least-privilege kurallarını uygulayın.



Conclusion

Zayıf veya yeniden kullanılan SSH credentials kolay bir giriş noktasıdır ve tek bir hesap doğrulandıktan sonra, reconnaissance, file uploads ve data exfiltration için kapılar açar. Zaman damgaları (timestamps) ve şifreleme gibi uygun kanıt hijyeni, defenders'ın eylemleri izlemesini zorlaştırabilir. Tespitten kaçınmak için identity kontrollerini exploit etmeye ve stealthy exfiltration yöntemlerine odaklanıyoruz. Etkiyi göstermek çok önemli olsa da, evade detection için mümkün olduğunca az iz bırakarak, yıkıma neden olmadan kontrolü sürdürmeyi amaçlıyoruz.