İçeriğe atla
0 XP 0
16 dkderinleşmeyle 18 dk50 XP8 etkinlik

auth.log: kim girdi, kim giremedi

Bu derste
  • Linux auth.log ve journald kaydından SSH kaba kuvvet denemesini, başarılı girişi ve girişten sonra kurulan kalıcılığı ayıklamayı öğren.
  • Bu derste web01 sunucusunun gecelik kaydından kaba kuvvet denemesini, sonrasındaki başarılı girişi ve açılan arka kapı hesabını çıkaracaksın.
  • Satırın hangi alanı kaynağı, hangisi kullanıcıyı söyler? Önce bunu oturtacağız, sonra sayıp zincire bağlayacağız.

Puan bütün etkinlikleri cevaplayınca hesaba yazılır. Bu dersi tamamlayınca +50 XP alacaksın. Giriş yapmadan ilerlersen puan yalnız bu tarayıcıda durur.

SOC vardiyasında ilk açtığın dosya genelde auth.log olur. Linux sunucu kimlik doğrulamayla ilgili olayları bu dosyada toplar. SSH girişleri, sudo kullanımı, yeni hesap açılışı ve parola değişikliği aynı akışta, zaman sırasıyla durur. Bu derste AltayKargo'nun web01 sunucusunda geçen bir gecenin kaydını okuyacaksın.

Önce kaydın nereden geldiğini ve yeni dağıtımlarda nereye gittiğini göreceksin. Sonra sshd mesajlarının sözlüğünü kuracak, başarısız denemeleri sayacak ve başarısızdan başarıya geçişi yakalayacaksın. Girişten sonra bırakılan sudo ve useradd izlerini okuyacaksın. En sonda aynı olayı önleyen ayarları ve olay notunu yazmayı öğreneceksin.

Kaydın yolculuğu: sshd'den diske

Bir SSH denemesi diske düşene kadar birkaç duraktan geçer. Olayı üreten sshd sürecidir. Parola kontrolünü çoğu kurulumda PAM (Pluggable Authentication Modules) katmanı yapar ve kendi satırını da yazar.

sudo, useradd ve passwd gibi araçlar da aynı yolu kullanır. Bu süreçler mesajı syslog arayüzüne verir. Mesaj bir tesis (facility) etiketi taşır; kimlik doğrulama olayları auth ve authpriv tesislerine gider.

Debian ve Ubuntu'da rsyslog bu iki tesisi /var/log/auth.log dosyasına yazar. RHEL, Rocky ve AlmaLinux ailesinde aynı içerik /var/log/secure dosyasına gider. systemd kullanan sistemlerde journald da aynı mesajı kendi ikili günlüğüne yazar. Yani çoğu sunucuda aynı olayın iki kopyası vardır.

Bu düzen artık her sunucuda geçerli değil. Debian 12 (bookworm) ile rsyslog varsayılan kurulumdan çıktı. Yeni kurulmuş bir Debian 12 sunucuda auth.log hiç oluşmayabilir. O durumda birincil kaynak journald olur ve kayıtları journalctl ile okursun.

İkinci değişiklik OpenSSH 9.8 ile geldi. Sunucu, bağlantıyı dinleyen sshd ve her oturumu yürüten sshd-session diye ikiye bölündü. Bazı satırlar artık sshd yerine sshd-session adıyla yazılır. Yalnız sshd adını arayan eski bir kural bu satırları sessizce kaçırır.

Yeni bir sunucuda işe iki soruyla başla. Kayıt dosyada mı, günlükte mi? Hangi süreç adıyla yazılıyor?

$ journalctl -u ssh --since "2026-09-14 03:00" --until "2026-09-14 04:00" -o short-iso
2026-09-14T03:11:02+03:00 web01 sshd[2241]: Failed password for invalid user admin from 198.51.100.77 port 51422 ssh2
2026-09-14T03:11:04+03:00 web01 sshd[2243]: Failed password for root from 198.51.100.77 port 51488 ssh2
2026-09-14T03:12:51+03:00 web01 sshd[2310]: Accepted password for mkaya from 198.51.100.77 port 49112 ssh2

$ journalctl _COMM=sshd -g "Failed password" --since "2026-09-14 03:00" --no-pager | wc -l
412
web01'in journald kaydı. İlk komutun çıktısından üç satır, ikinci komut bir saatteki başarısız denemeleri sayar.

Komutları satır satır oku. -u ssh yalnız ssh birimine ait kayıtları getirir. Debian ve Ubuntu'da birimin adı ssh, RHEL ailesinde sshd olur.

--since ve --until pencereyi daraltır. -o short-iso her satıra yıl ve saat ofseti ekler; klasik dosya satırında ikisi de yoktur. İkinci komutta _COMM=sshd süzgeci kaydı süreç adına göre seçer, -g ise mesaj alanında düzenli ifade arar.

wc -l sonucu 412 çıkar, yani bir saatte 412 başarısız deneme. OpenSSH 9.8 ve sonrasında aynı sayımı _COMM=sshd-session ile tekrarla, yoksa sayı eksik kalır. İki kaynak da elindeyse auth.log sayısıyla journal sayısını karşılaştır. Fark çıkarsa nedenini ara: döndürme, hız sınırı ya da elle silinmiş satır olabilir.

Derinleş:syslog'un kısa tarihi: RFC 3164'ten RFC 5424'e

syslog 1980'lerde Eric Allman'ın Sendmail projesi için yazdığı bir günlük aracı olarak doğdu. Yıllarca yazılı bir standardı olmadan yayıldı. 2001'de yayımlanan RFC 3164 yeni bir kural koymadı, sahada gözlenen biçimi belgeledi. Bu biçimde zaman damgası Sep 14 03:11:02 gibidir: yıl yoktur, saat dilimi yoktur.

Satırın başındaki öncelik (PRI) değeri tesis ve önem derecesini tek sayıda birleştirir. Tesis numarası sekizle çarpılır, önem derecesi eklenir. authpriv tesisinin numarası 10, bilgi düzeyinin numarası 6'dır; bu mesajın önceliği 86 olur. 2009'da RFC 5424 gerçek bir standart getirdi.

Zaman damgası artık RFC 3339 biçiminde, yıl ve ofsetle yazılır. Yapılandırılmış veri alanı da eklendi. Aynı yıl RFC 5425 syslog'u TLS üzerinden taşımayı tanımladı ve 6514 numaralı portu ayırdı.

Dosyada gördüğün kısa biçim RFC 3164 döneminden kalır. Debian 12 ise rsyslog kurulduğunda varsayılan olarak yıllı, ofsetli ve mikrosaniyeli damga yazar. Elindeki dosyanın hangisini kullandığını ilk satıra bakarak anlarsın.

Etkinlik 1 / 8

web01'de ssh birimine ait kayıtları, her satırda yıl ve saat ofseti görünecek biçimde journald'dan getir.

ogrenci@lab

Satır yapısı ve sshd mesaj sözlüğü

Dosyadaki satırın yapısı sabittir. Önce ay, gün ve saat gelir. Sonra sunucu adı, sonra olayı yazan süreç ve köşeli parantez içinde süreç numarası (PID) gelir. En sonda mesajın kendisi durur.

Süreç numarası sanıldığından değerlidir. Aynı sayıyı taşıyan satırlar aynı sshd oturumuna aittir; bir oturumun bütün satırlarını bu numarayla süzersin. Mesaj kısmında sshd her durumu sabit bir kalıpla yazar. Failed password başarısız denemedir.

Accepted password ya da Accepted publickey ise oturumun açıldığı andır. Kaba kuvvet saldırısı yüzlerce Failed satırı üretir. Tehlikeli olan, o yığının sonunda tek bir Accepted görmendir. Her satırda üç soru sor: kim denedi, hangi hesap, ne sonuç çıktı?

Sep 14 03:11:02 web01 sshd[2241]: Failed password for invalid user admin from 198.51.100.77 port 51422 ssh2
Sep 14 03:11:04 web01 sshd[2243]: Failed password for root from 198.51.100.77 port 51488 ssh2
Sep 14 03:12:51 web01 sshd[2310]: Accepted password for mkaya from 198.51.100.77 port 49112 ssh2
Sep 14 03:12:51 web01 sshd[2310]: pam_unix(sshd:session): session opened for user mkaya by (uid=0)
web01 auth.log'dan dört satır. Son iki satır aynı PID'yi taşır: giriş ve oturum açılışı tek zincirdir.
Mesaj kalıbı                                                      SOC anlamı
Failed password for <hesap> from <IP>                             var olan hesapta yanlış parola
Failed password for invalid user <ad> from <IP>                   sistemde olmayan bir ad denendi
Invalid user <ad> from <IP> port <p>                              ad bulunamadı, bağlantının başında yazılır
Accepted password for <hesap> from <IP>                           parolayla oturum açıldı
Accepted publickey for <hesap> from <IP> ... SHA256:<iz>          anahtarla girildi, satır anahtar izini taşır
Connection closed by authenticating user <hesap> <IP> [preauth]   doğrulama bitmeden bağlantı kesildi
error: maximum authentication attempts exceeded for <hesap>       tek bağlantıda deneme sınırı aşıldı
pam_unix(sshd:auth): authentication failure; ... rhost=<IP>       PAM katmanında aynı hata
pam_unix(sshd:session): session opened for user <hesap>           oturum başladı
pam_unix(sshd:session): session closed for user <hesap>           oturum bitti
sshd ve PAM'in en sık yazdığı satırlar. [preauth] eki, olayın kimlik doğrulama bitmeden yaşandığını gösterir.

Başarısız iki kalıbı birbirinden ayır. invalid user ifadesi o adın sistemde olmadığını söyler; saldırgan admin, oracle, test gibi yaygın adları deniyordur. Bu ifade yoksa hesap gerçektir ve yalnız parola tutmamıştır.

İkinci durum daha tehlikelidir, çünkü saldırgan doğru kullanıcı adını bulmuştur. Başarılı kalıpları da ayır. Accepted publickey satırı anahtarla girildiğini söyler ve sonunda anahtarın SHA256 parmak izini taşır.

Anahtarla giriş kendiliğinden masum sayılmaz, çünkü anahtar dosyası çalınmış olabilir. Ortamında parola girişi kapalı olmalıysa, Accepted password satırı tek başına bulgudur.

Kaba kuvvet kendini tek satırda değil, satır dizisinde belli eder. Aynı kaynaktan art arda gelen Failed satırları, bir parola listesinin sırayla denendiğini gösterir. Denemeler arası saniye farkı küçüktür, çünkü işi bir araç yapar.

Kaynak adres tek başına karar vermez. 198.51.100.77 dışarıdan gelir, 10.20.30.12 ise iç ağdandır. İç adres de ele geçirilmiş bir makineye ait olabilir.

Analist adresi bağlamla okur: saat kaç, kullanıcı kim, bu kullanıcı gece üçte normalde bağlanır mı? Gece üç ile beş arası çoğu kurumda ölü saattir. Aynı satır gündüz sıradan, gece ise incelemeye değer hâle gelir.

Etkinlik 2 / 8

web01 auth.log parçasında şüpheli satırları işaretle.

Şüpheli satırlara tıkla. Birden fazla olabilir.

Saymak ve geçişi yakalamak

Yüzlerce satırı gözle okumazsın, önce sayarsın. Sayım iki soruya cevap verir.

Denemeler kaç kaynaktan geliyor? Hangi kaynak en gürültülü? Aşağıdaki ilk boru hattı başarısız satırları seçer. Her satırdan from kelimesini ve ardından gelen adresi keser, sonra aynı adresleri sayıp büyükten küçüğe dizer.

grep -oE yalnız eşleşen parçayı yazar, satırın geri kalanı sayımı bozmaz. uniq -c yalnız yan yana duran aynı satırları birleştirir; bu yüzden önce sort gelir. Sondaki sort -rn sayıya göre ters sıralar, head -5 ise ilk beş kaynağı bırakır. Çıktı nettir: 412 deneme tek dış adresten, 3 deneme bir iç makineden gelmiştir.

$ grep "Failed password" auth.log | grep -oE "from [0-9.]+" | sort | uniq -c | sort -rn | head -5
    412 from 198.51.100.77
      3 from 10.20.30.44

$ grep "Failed password" auth.log | awk '{print $11}' | sort | uniq -c | sort -rn | head -5
    301 198.51.100.77
     58 admin
     31 oracle
     22 test
      3 10.20.30.44
Üstte doğru sayım. Altta sabit sütunlu awk ile yapılan yanlış sayım: invalid user satırlarında on birinci alan adres değil, kullanıcı adıdır.

Aynı işi sabit sütunlu awk ile yapmak cazip gelir, ama burada bir tuzak var. awk satırı boşluklardan böler. Normal bir Failed satırında adres on birinci alana düşer.

invalid user satırında ise mesaja iki kelime daha girer ve adres on üçüncü alana kayar. Aynı komut bu satırlarda adres yerine kullanıcı adını yazar. Alttaki çıktıda 198.51.100.77 için 412 yerine 301 görünür.

Eksik 111 deneme admin, oracle ve test adlarına dağılmıştır. Komut hata vermez, sayı yanlış çıkar. Sessiz hata en tehlikelisidir, çünkü rapora doğru gibi girer. Kuralı alan numarasına değil, from kelimesine bağlamak bu kaymayı ortadan kaldırır.

Asıl alarm sayım değil, geçiştir: aynı adreste çok sayıda hata ve hemen ardından bir Accepted. Aşağıdaki awk betiği dosyayı tek geçişte okur. Her Failed satırında from kelimesini bulur ve ondan sonraki adresin hata sayacını artırır. Her Accepted satırında aynı adresin sayacına bakar.

Sayaç yirmiyi aşmışsa adresi, hata sayısını, giriş yapılan hesabı ve saati yazar. Çıktı tek satırdır: 198.51.100.77, 412 hatadan sonra mkaya hesabıyla 03:12:51'de içeri girmiştir. SIEM dilinde bu kalıbın adı sıralı korelasyondur: önce bir olay türü tekrar eder, sonra aynı anahtarla başka bir olay gelir. Bir sonraki modülde, Tespit Kuralları'nda, aynı mantığı SIEM kuralı olarak kuracaksın.

$ awk '/Failed password/ { for (i = 1; i <= NF; i++) if ($i == "from") hata[$(i+1)]++ }
       /Accepted/ { for (i = 1; i <= NF; i++) if ($i == "from" && hata[$(i+1)] > 20)
                      print $(i+1), hata[$(i+1)], "hata ->", $6, $9, $3 }' auth.log
198.51.100.77 412 hata -> Accepted mkaya 03:12:51
Başarısızdan başarıya geçişi arayan tek geçişli betik. Alan numarası yerine from kelimesine bağlandığı için kaymadan etkilenmez.

Etkinlik 3 / 8

auth.log'da "Accepted password for mkaya from 198.51.100.77" satırını, aynı adresten gelen yüzlerce başarısız denemenin hemen ardından görürsen ne anlarsın?

Etkinlik 4 / 8

Yalnız SSH parola denemesi başarısız olan satırları yakalayan düzenli ifade yaz.

Yazdıkça eşleşen satırlar işaretlenir. Hedef: yalnız doğru satırlar eşleşsin.

Sep 14 03:11:02 web01 sshd[2241]: Failed password for invalid user admin from 198.51.100.77 port 51422 ssh2 eşleşmedi
Sep 14 03:11:04 web01 sshd[2243]: Failed password for root from 198.51.100.77 port 51488 ssh2 eşleşmedi
Sep 14 03:12:51 web01 sshd[2310]: Accepted password for mkaya from 10.20.30.44 port 49112 ssh2 eşleşmedi
Sep 14 03:14:33 web01 sudo: mkaya : TTY=pts/0 ; USER=root ; COMMAND=/usr/bin/id eşleşmedi
Sep 14 03:20:11 web01 sshd[2410]: Accepted publickey for deploy from 10.20.30.12 port 44120 ssh2 eşleşmedi

Oturumdan sonra: sudo, hesaplar ve kalıcılık

Bir sonraki adım her zaman oturum sonrasıdır. Giriş yapan hesap ne yaptı? auth.log bu sorunun büyük kısmını da cevaplar, çünkü yetki ve hesap araçları aynı dosyaya yazar.

sudo satırı dört alan taşır. TTY komutun hangi terminalden geldiğini, PWD hangi dizinde çalıştığını, USER hangi kimliğe geçildiğini, COMMAND ise komutun tamamını söyler.

Parola tutmazsa sudo ayrıca incorrect password attempts satırı yazar ve kaç denemenin boşa gittiğini söyler. Hesap araçları da iz bırakır. useradd yeni hesabı, usermod grup değişikliğini, passwd parola değişikliğini, systemd-logind ise yeni oturumu kaydeder. Saldırganın ilk hamlesi çoğu kez kalıcılıktır, yani yeniden girebileceği bir kapı açmaktır.

Sep 14 03:12:51 web01 systemd-logind[612]: New session 41 of user mkaya.
Sep 14 03:14:33 web01 sudo:    mkaya : TTY=pts/0 ; PWD=/home/mkaya ; USER=root ; COMMAND=/usr/bin/apt install netcat
Sep 14 03:15:02 web01 useradd[2388]: new user: name=svc_update, UID=0, GID=0, home=/home/svc_update
Sep 14 03:15:10 web01 passwd[2395]: pam_unix(passwd:chauthtok): password changed for svc_update
Girişten sonraki üç dakika. UID değeri 0 olan yeni hesap, root yetkisine eş bir arka kapıdır.

useradd satırındaki UID=0 değerine dikkat et. Linux yetkiyi ada göre değil, numaraya göre verir. UID 0 root'un numarasıdır ve bu numarayı taşıyan her hesap root ile aynı yetkiye sahiptir.

useradd normalde var olan bir UID'yi ikinci kez vermez; saldırgan bunu -o seçeneğiyle aşar. Adın svc_update gibi masum görünmesi bir şey değiştirmez. Kayıtta gördüğünü sistemde doğrula.

/etc/passwd dosyasında üçüncü alan UID'dir; awk -F: '$3 == 0 {print $1}' /etc/passwd komutu UID değeri sıfır olan hesapları yazar. Temiz bir sistemde çıktı yalnız root olur. UID 0 hesabı tek kalıcılık yolu da değildir.

Saldırgan kendi açık anahtarını bir hesabın ~/.ssh/authorized_keys dosyasına ekleyerek de geri döner. Bu yol parola istemez ve parola değişse bile çalışır. auth.log bu eklemeyi yazmaz; sonraki girişte yalnız Accepted publickey satırını ve daha önce görmediğin bir parmak izini görürsün. Zamanlanmış görev ve yeni bir systemd servisi de sık kullanılan kapılardır.

Dosyanın kendisi de saldırganın hedefidir. İçeri giren kişi izini silmek için auth.log satırlarını kırpabilir. Bu yüzden iki kontrolün var.

Birincisi ikili oturum kayıtlarıdır. last -F komutu /var/log/wtmp dosyasından başarılı oturumları tam tarihle, lastb ise /var/log/btmp dosyasından başarısız denemeleri listeler. Metin dosyasından silinen bir oturum çoğu zaman burada durur.

İkincisi merkezî kopyadır. Kayıtlar olay anında bir toplayıcıya gönderilirse, makinedeki kopya silinse bile merkezdeki durur. Aşağıdaki kural bu kopyayı TLS ile şifreleyerek toplayıcıya gönderir.

$ last -F mkaya
mkaya    pts/0        198.51.100.77    Mon Sep 14 03:12:51 2026 - Mon Sep 14 03:41:07 2026  (00:28)

# /etc/rsyslog.d/90-merkez.conf
auth,authpriv.* action(type="omfwd" target="log.altaykargo.example" port="6514" protocol="tcp"
                       StreamDriver="ossl" StreamDriverMode="1" StreamDriverAuthMode="x509/name"
                       StreamDriverPermittedPeers="log.altaykargo.example" queue.type="linkedList")
Üstte wtmp'den gelen oturum kaydı. Altta auth olaylarını TLS ile merkeze gönderen rsyslog kuralı; 6514, RFC 5425'in ayırdığı porttur.
Derinleş:wtmp, btmp ve 2038 sorunu

last ve lastb komutları /var/log/wtmp ve /var/log/btmp adlı ikili dosyaları okur. Bu dosyalar metin değildir. Her kayıt sabit boyutlu bir yapıdır ve oturum zamanını 32 bitlik bir sayı olarak tutar.

İşaretli 32 bitlik bir saniye sayacı 19 Ocak 2038'de 03:14:07 UTC'de taşar. Bu tarihten sonra yazılan kayıtlar geçersiz olur. Biçimi değiştirmek eski araçları bozacağı için geliştiriciler başka bir yol seçti.

Debian 13 (trixie) last, lastb ve lastlog komutlarını kaldırdı. Doğrudan karşılıkları SQLite tabanlı wtmpdb ve lastlog2 paketleridir; ikisi de çalışmak için kendi PAM modülünü ister. Başarısız girişler için lslogins --failed benzer bilgi verir. SOC açısından iki sonuç çıkar.

Eski sunucuda wtmp hâlâ değerli bir çapraz kontroldür. Yeni sunucuda aynı bilgiyi başka bir araçta ararsın. Alışkanlıkla last yazıp boş çıktı ya da komut bulunamadı hatası almak, kaydın silindiği anlamına gelmez.

Etkinlik 5 / 8

web01'de girişten sonraki izlerden hangileri kalıcılık girişimine işaret eder?

Birden fazla doğru var.

Etkinlik 6 / 8

Linux'ta kimlik doğrulama olaylarını tutan dosya: /var/log/____

Savunma, eşleme ve olay notu

Tespit işin yarısıdır. Aynı olayın tekrarını önlemek de analistin önerisine girer. İlk durak sshd_config dosyasıdır.

PasswordAuthentication no parola girişini kapatır ve kaba kuvveti anlamsız kılar. Bu ayardan sonra görülen her Accepted password satırı bir bulgudur. PermitRootLogin no root ile doğrudan girişi keser.

MaxAuthTries tek bağlantıdaki deneme sayısını sınırlar; varsayılan değer altıdır. AllowGroups ile SSH'ye yalnız belirli bir grubun üyeleri girer. AuthenticationMethods ayarı anahtarın yanına ikinci bir adım ekler; ikinci adımı PAM üzerinden tek kullanımlık kodla kurarsın.

OpenSSH 9.8 ile gelen PerSourcePenalties varsayılan olarak açıktır. Doğrulamayı tamamlamayan adreslere süreli ceza verir ve bağlantılarını reddeder. SSH'yi yalnız VPN ya da yönetim ağına açmak da aynı riski küçültür. LogLevel VERBOSE ise başarısız anahtar denemelerini de kayda geçirir.

# /etc/ssh/sshd_config.d/10-sertlestirme.conf
PasswordAuthentication no
PermitRootLogin no
MaxAuthTries 3
AllowGroups ssh-yonetici
AuthenticationMethods publickey,keyboard-interactive
LogLevel VERBOSE

# /etc/audit/rules.d/kimlik.rules
-w /etc/passwd -p wa -k kimlik
-w /etc/shadow -p wa -k kimlik
-w /root/.ssh/authorized_keys -p wa -k ssh_anahtar

$ sudo ausearch -k kimlik -i
type=SYSCALL msg=audit(09/14/2026 03:15:02.114:812) : ... auid=mkaya uid=root ... comm=useradd exe=/usr/sbin/useradd key=kimlik
Üstte sshd sertleştirmesi, ortada auditd kuralları, altta kurala takılan olay. auid alanı ilk giriş yapan hesabı gösterir.

İkinci durak auditd'dir. auditd çekirdek düzeyinde dosya erişimini ve sistem çağrılarını kaydeder. Hesap dosyalarını izleyen bir kural, useradd satırı auth.log'dan silinse bile değişikliği ayrı bir günlükte tutar.

-w bir dosyayı izlemeye alır, -p wa yazma ve öznitelik değişikliğini seçer, -k kurala arama anahtarı verir. Aynı anahtarla ausearch ilgili bütün kayıtları getirir; -i sayısal değerleri okunur ada çevirir. Çıktıdaki auid alanı özellikle değerlidir.

Kullanıcı sudo ile root olsa bile auid ilk giriş yapan hesabı korur. Kayıtta uid=root yazar ama auid=mkaya kalır. Kurallar /etc/audit/rules.d altına yazılır ve augenrules --load ile yüklenir.

Son adım olay notudur. Analistin işi satır saymak değildir, hikâyeyi kurmaktır. Satırları okurken saat, kaynak, hesap ve olay sütunlu küçük bir tablo tut. İç adresten gelen girişleri de tabloya yaz; saldırgan içeri girdikten sonra bütün hareketini iç adreslerden yapar.

Tablo bitince onu tek bir sonuç cümlesine indir. Vardiyayı devralan analist de yönetici de önce o cümleyi okur. Cümle kısa olsun: kim, nereden girdi, ne yaptı?

Saat (+03)   Kaynak          Hesap          Olay
03:04-03:12  198.51.100.77   çok sayıda     412 başarısız SSH parolası (T1110)
03:12:51     198.51.100.77   mkaya          Accepted password (T1078)
03:14:33     pts/0           mkaya>root     sudo ile apt install netcat
03:15:02     pts/0           root           UID=0 taşıyan svc_update hesabı (T1136.001)
03:15:10     pts/0           root           svc_update hesabına parola atandı

Sonuç: Dış adres mkaya hesabının parolasını tahmin etti, root oldu ve UID 0 taşıyan kalıcı bir hesap açtı.
Mini olay notu. Dağınık satırlar beş satırlık bir çizelgeye ve tek sonuç cümlesine iner.

Etkinlik 7 / 8

Doğru mu, yanlış mı?

Parola girişinin kapalı olması gereken bir sunucuda Accepted password satırı, iç adresten gelse de incelenecek bir bulgudur.

Bulguyu ortak bir dile çevirmek raporu güçlendirir. MITRE ATT&CK bu dili verir. Tek hesaba çok parola denemek T1110.001 Password Guessing, çok hesaba az sayıda yaygın parola denemek T1110.003 Password Spraying olarak geçer.

Ele geçen hesapla girmek T1078 Valid Accounts, yerel hesap açmak T1136.001, authorized_keys dosyasına anahtar eklemek ise T1098.004 olur. Eşlemeyle aynı saldırıyı başka ekiplerin raporlarıyla da karşılaştırırsın. Tespit kapsamındaki boşlukları da bu ortak dille ararsın.

Etkinlik 8 / 8

Gözlenen davranışı ATT&CK tekniğiyle eşleştir.

Soldan bir tane seç, sağdan eşini seç. Kullanılmış bir seçeneği yeniden seçersen yeni öğeye taşınır.

Bu derste bir hata mı gördün? Bildir