Sisteme yapılmış bir saldırıyı tespit etmek Saldırıya müdahale etmenin ilk adımıdır. Saldırıya tepki vermek konusu geniş bir konudur ama küçük adımlarla başlamak gerekir.
Saldırıya müdahale ederken şüpheli sistemlere ve alanlara öncelik vermeliyiz.
Saldırıya müdahalenin amacı canlı bir ameliyattan farksızdır.
bu araştırma bir dijital kanıt oluşturmamızı sağlayabilir.
bu yazının odak noktası bir linux sistemindeki bir saldırıya nasıl tepki vermemiz gerektiğidir.
Linuxu açalım ve bu komutları uygulayalım.
İçerik
* Saldırıya müdahale nedir
* Kullanıcı hesapları
* Günlük girişleri
* Sistem kaynakları
* Süreç
* Hizmetler
* Dosyalar
* Ağ
Saldırıya müdahale nedir?
Saldırıya müdahale bir sistem veya bir ağ güvenliğiyle ilgili bir olay meydana geldiğinde yapılması gereken şeylerdir. Saldırıya müdahaleci olarak, nelerin sistemde olması ve nelerin olmaması gerektiğini bilmeniz gerekli.
bir Saldırgan tarafından güvenlik olaylarının oluşmasına sebep olacak şeyler:
* İşlenen süreçleri anlamak
* Sistemin hafızasının içeriği hakkında fikir sahibi olmak.
* Ana bilgisayar adı, ip adresi, işletim sistemleri gibi şeyleri öğrenip sistemin bilgilerini öğrenmek.
* Sistemdeki kullanıcıları belirleyerek.
* Ağ bağlantıları, açık portları ve herhangi bir ağ hareketini inceleyerek.
* Bulunan dosyaları belirleyerek.
Kullanıcı hesapları
Saldırı müdahalecisi olarak kullanıcı hesaplarının aktivitelerini sorgulamak çok önemlidir.
Oturum açmış kullanıcıları, mevcut kullanıcıları, olağan ve olağandışı oturum açmaları, başarısız oturum açma girişimlerini, izinleri , sudo erişimi gibi şeyleri anlamanıza yardımcı olur.
kullanıcı hesabı aktivitesini kontrol etmek için çeşitli komutlar:
Sisteminizde şüpheli görenebilecek bir hesap olup olmadığını bilmek için cat komutunu kullanabilirsiniz.
cat komutu kullanıcı hesabıyla ilgili tüm bilgileri gösterir bunu yapmak için şunu yazın.
Kod:
cat /etc/passwd
Linuxtaki 'Setuid' komutu dosyalara erişim izni sağlamaya yarar. bunu kullanarak bir linux sisteminde kullanıcının şifresini 'passwd' komutunu kullanarak değiştirebilir.
root hesabı setuid olduğundan geçici izin alabilirsiniz.
Kod:
passwd -S [Kullanıcı_Adı]
Grep komutu normal bir ifadeyle eşleşen satırlar için düz metin ararken kullanılır.
/etc/passwd odsyasındaki 'UID 0' dosyalarını görüntülemek için kullanılır.
Kod:
grep :0: /etc/passwd
saldırganın saldırmak için herhangi bir kullanıcı oluşturup oluşturmadığını belirlemek ve görmek için bunu yazınız.
Kod:
find / -nouser -print
/etc/shadow şifrelenmiş parolayı, parolalarla ilgili ayrıntıları içerir ve yalnızca root kullanıcılar tarafından erişilebilir
Kod:
cat /etc/shadow
grup dosyası kullanıcı tarafından kullanılan grupların bilgilerini gösterir. ayrıntıları görmek için bunu yazınız.
Kod:
cat /etc/group
Günlük girişleri
Belirli bir kullanıcının veya Linux sistemindeki tüm kullanıcıların en son oturum açma raporlarını görüntülemek için şunu yazabilirsiniz,
Kod:
lastlog
Sistemde merak uyandıran herhangi bir SSH ve telnet oturum açma veya kimlik doğrulamasını belirlemek için /var/log/ dizinine gidebilir ve ardından şunu yazabilirsiniz.
Kod:
tail auth.log
Kullanıcının yazdığı komutların geçmişini görüntülemek için,"history with less" yazabilir veya en son yazdığınız komut sayısına kadar belirtebilirsiniz. Geçmişi görüntülemek için bunu yazınız.
Kod:
history | less
Sistem kaynakları:
Sistem kaynakları, sistem günlüğü bilgileri, sistemin çalışma süresi, bellek alanı ve sistemin kullanımı vb. hakkında size çok şey söyleyebilir.
Linux sisteminizin fazla mesai yapıp yapmadığını öğrenmek veya sunucunun ne kadar süredir çalıştığını, sistemdeki mevcut saati, şu anda kaç kullanıcının oturum açtığını ve sistemin yük ortalamalarını görmek için bunu yazabilirsiniz.
Kod:
uptime
Linux'ta sistemin bellek kullanımını, sistemde kullanılan fiziksel ve takas belleği ve ayrıca çekirdek tarafından kullanılan arabellekleri görüntülemek için şunu yazabilirsiniz,
Kod:
free
Bir saldırı müdahale görevlisi olarak, sistemdeki ram, kullanılabilir bellek alanı, arabellekler ve takas bilgilerinin ayrıntılı bilgilerini kontrol etmek için bunu yazabilirsiniz.
Kod:
cat /proc/meminfo
Bir saldırı müdahalecisi olarak, sisteminizde bilinmeyen bir dayanak olup olmadığını kontrol etmek sizin sorumluluğunuzdadır, sisteminizde mevcut olan montajı kontrol etmek için bunu yazabilirsiniz.
Kod:
cat /proc/mounts
Süreçler
Bir olay müdahalecisi olarak, sisteminiz tarafından üretilen çıktıya bakarken her zaman merak etmelisiniz. Merakınız, sistemde çalışmakta olan programları, çalıştırılması gerekip gerekmediğini ve çalışıyor olması gerekip gerekmediğini, bu işlemler tarafından CPU kullanımını vb.
Linux sisteminde çalışan tüm süreçlerin dinamik ve gerçek zamanlı bir görselini, sistem bilgilerinin özetini ve Linux Kernel tarafından yönetilen süreçlerin ve bunların ID numaralarının veya iş parçacıklarının listesinin alınmasını sağlayabilirsiniz.
Kod:
top
Linux'unuzun işlem durumunu ve şu anda çalışan işlemler sistemini ve PID'yi görmek için. Linux sistemindeki herhangi bir kötü amaçlı etkinliği gösterebilecek anormal süreçleri belirlemek için şunları kullanabilirsiniz:
Kod:
ps aux
Belirli bir işlem hakkında daha fazla ayrıntı görüntülemek için şunları kullanabilirsiniz,
Kod:
lsof –p [pid]
Hizmetler
Linux sistemindeki hizmetler, sistem ve ağ hizmetleri olarak sınıflandırılabilir. Sistem hizmetleri, hizmetlerin durumunu, cron'u vb. içerir ve ağ hizmetleri, dosya aktarımını, alan adı çözümünü, güvenlik duvarlarını vb. içerir. Bir olay müdahalecisi olarak, hizmetlerde herhangi bir anormallik olup olmadığını belirlersiniz.
Anormal çalışan servisleri bulmak için şunları kullanabilirsiniz:
Kod:
service --status-all
Saldırıya müdahale eden kişi, şüpheli zamanlanmış görev ve işleri aramalıdır. Zamanlanmış görevleri bulmak için şunları kullanabilirsiniz,
Kod:
cat /etc/crontab
DNS yapılandırma sorunlarını çözmek ve çeşitli çözümleyici bilgilerini sağlayan değerlere sahip bir anahtar sözcük listesi elde etmek için şunları kullanabilirsiniz:
Kod:
more /etc/resolv.conf
Web sitesinde veya SSL kurulumunda yapılan değişiklikleri test etmek için yararlı olan ana bilgisayar adlarını veya alan adlarını IP adreslerine çeviren dosyayı kontrol etmek için şunu kullanabilirsiniz:
Kod:
more /etc/hosts
Linux sistemlerinde IPv4 paket filtrelemesini ve NAT'ı kontrol etmek ve yönetmek için iptables kullanabilir ve aşağıdakiler gibi çeşitli komutlardan yararlanabilirsiniz:
Kod:
iptables -L -n
Dosyalar
Bir olay müdahale görevlisi olarak, sisteminizdeki anormal görünümlü dosyaların farkında olmalısınız.
Sisteminizdeki aşırı büyük dosyaları ve bunların hedefleriyle birlikte izinlerini belirlemek için şunları kullanabilirsiniz:
Kod:
find /home/ -type f -size +512k -exec ls -lh {} \;
SUID bitinin ayarlandığı herhangi bir komut çalıştığında, etkin UID'si o dosyanın sahibi olur. Bu nedenle, SUID bitini tutan tüm dosyaları bulmak istiyorsanız, komutu yazarak geri alabilirsiniz.
Kod:
find /etc/ -readable -type f 2>/dev/null
Saldırı müdahalecisi olarak sistemde 2 gündür var olan anormal bir dosyayı görmek isterseniz şu komutu kullanabilirsiniz:
Kod:
find / -mtime -2 -ls
Ağ ayarları
Bir Saldırı müdahalecisi olarak, Ağ etkinliğine ve ayarına keskin bir göz atmalısınız. Bir sistem ağının genel resmini ve sağlığını belirlemek son derece önemlidir. Ağ etkinliği bilgilerini almak için çeşitli komutları kullanabilirsiniz.
Ağ arayüzlerinizi sistem üzerinde görmek için bunu kullanabilirsiniz.
Kod:
ifconfig
Portları dinleyen tüm işlemleri PID'leri ile listelemek için kullanabilirsiniz.
Kod:
lsof -i
Ağ kullanımındaki tüm dinleme bağlantı noktalarını görüntülemek için
Kod:
netstat -nap
Sistem ARP önbelleğini görüntülemek için şunu yazabilirsiniz:
Kod:
arp -a
$PATH, shelle hangi dizinlerin yürütülebilir dosyaları arayacağını söyleyen bir dizin listesi görüntüler. yolunuzdaki dizinleri kontrol etmek için bunu kullanabilirsiniz.
Kod:
echo $PATH
Saldırıya müdahale ederken şüpheli sistemlere ve alanlara öncelik vermeliyiz.
Saldırıya müdahalenin amacı canlı bir ameliyattan farksızdır.
bu araştırma bir dijital kanıt oluşturmamızı sağlayabilir.
bu yazının odak noktası bir linux sistemindeki bir saldırıya nasıl tepki vermemiz gerektiğidir.
Linuxu açalım ve bu komutları uygulayalım.
İçerik
* Saldırıya müdahale nedir
* Kullanıcı hesapları
* Günlük girişleri
* Sistem kaynakları
* Süreç
* Hizmetler
* Dosyalar
* Ağ
Saldırıya müdahale nedir?
Saldırıya müdahale bir sistem veya bir ağ güvenliğiyle ilgili bir olay meydana geldiğinde yapılması gereken şeylerdir. Saldırıya müdahaleci olarak, nelerin sistemde olması ve nelerin olmaması gerektiğini bilmeniz gerekli.
bir Saldırgan tarafından güvenlik olaylarının oluşmasına sebep olacak şeyler:
* İşlenen süreçleri anlamak
* Sistemin hafızasının içeriği hakkında fikir sahibi olmak.
* Ana bilgisayar adı, ip adresi, işletim sistemleri gibi şeyleri öğrenip sistemin bilgilerini öğrenmek.
* Sistemdeki kullanıcıları belirleyerek.
* Ağ bağlantıları, açık portları ve herhangi bir ağ hareketini inceleyerek.
* Bulunan dosyaları belirleyerek.
Kullanıcı hesapları
Saldırı müdahalecisi olarak kullanıcı hesaplarının aktivitelerini sorgulamak çok önemlidir.
Oturum açmış kullanıcıları, mevcut kullanıcıları, olağan ve olağandışı oturum açmaları, başarısız oturum açma girişimlerini, izinleri , sudo erişimi gibi şeyleri anlamanıza yardımcı olur.
kullanıcı hesabı aktivitesini kontrol etmek için çeşitli komutlar:
Sisteminizde şüpheli görenebilecek bir hesap olup olmadığını bilmek için cat komutunu kullanabilirsiniz.
cat komutu kullanıcı hesabıyla ilgili tüm bilgileri gösterir bunu yapmak için şunu yazın.
Kod:
cat /etc/passwd
Linuxtaki 'Setuid' komutu dosyalara erişim izni sağlamaya yarar. bunu kullanarak bir linux sisteminde kullanıcının şifresini 'passwd' komutunu kullanarak değiştirebilir.
root hesabı setuid olduğundan geçici izin alabilirsiniz.
Kod:
passwd -S [Kullanıcı_Adı]
Grep komutu normal bir ifadeyle eşleşen satırlar için düz metin ararken kullanılır.
Kod:
grep :0: /etc/passwd
saldırganın saldırmak için herhangi bir kullanıcı oluşturup oluşturmadığını belirlemek ve görmek için bunu yazınız.
Kod:
find / -nouser -print
/etc/shadow şifrelenmiş parolayı, parolalarla ilgili ayrıntıları içerir ve yalnızca root kullanıcılar tarafından erişilebilir
Kod:
cat /etc/shadow
grup dosyası kullanıcı tarafından kullanılan grupların bilgilerini gösterir. ayrıntıları görmek için bunu yazınız.
Kod:
cat /etc/group
Günlük girişleri
Belirli bir kullanıcının veya Linux sistemindeki tüm kullanıcıların en son oturum açma raporlarını görüntülemek için şunu yazabilirsiniz,
Kod:
lastlog
Sistemde merak uyandıran herhangi bir SSH ve telnet oturum açma veya kimlik doğrulamasını belirlemek için /var/log/ dizinine gidebilir ve ardından şunu yazabilirsiniz.
Kod:
tail auth.log
Kullanıcının yazdığı komutların geçmişini görüntülemek için,"history with less" yazabilir veya en son yazdığınız komut sayısına kadar belirtebilirsiniz. Geçmişi görüntülemek için bunu yazınız.
Kod:
history | less
Sistem kaynakları:
Sistem kaynakları, sistem günlüğü bilgileri, sistemin çalışma süresi, bellek alanı ve sistemin kullanımı vb. hakkında size çok şey söyleyebilir.
Linux sisteminizin fazla mesai yapıp yapmadığını öğrenmek veya sunucunun ne kadar süredir çalıştığını, sistemdeki mevcut saati, şu anda kaç kullanıcının oturum açtığını ve sistemin yük ortalamalarını görmek için bunu yazabilirsiniz.
Kod:
uptime
Linux'ta sistemin bellek kullanımını, sistemde kullanılan fiziksel ve takas belleği ve ayrıca çekirdek tarafından kullanılan arabellekleri görüntülemek için şunu yazabilirsiniz,
Kod:
free
Bir saldırı müdahale görevlisi olarak, sistemdeki ram, kullanılabilir bellek alanı, arabellekler ve takas bilgilerinin ayrıntılı bilgilerini kontrol etmek için bunu yazabilirsiniz.
Kod:
cat /proc/meminfo
Bir saldırı müdahalecisi olarak, sisteminizde bilinmeyen bir dayanak olup olmadığını kontrol etmek sizin sorumluluğunuzdadır, sisteminizde mevcut olan montajı kontrol etmek için bunu yazabilirsiniz.
Kod:
cat /proc/mounts
Süreçler
Bir olay müdahalecisi olarak, sisteminiz tarafından üretilen çıktıya bakarken her zaman merak etmelisiniz. Merakınız, sistemde çalışmakta olan programları, çalıştırılması gerekip gerekmediğini ve çalışıyor olması gerekip gerekmediğini, bu işlemler tarafından CPU kullanımını vb.
Linux sisteminde çalışan tüm süreçlerin dinamik ve gerçek zamanlı bir görselini, sistem bilgilerinin özetini ve Linux Kernel tarafından yönetilen süreçlerin ve bunların ID numaralarının veya iş parçacıklarının listesinin alınmasını sağlayabilirsiniz.
Kod:
top
Linux'unuzun işlem durumunu ve şu anda çalışan işlemler sistemini ve PID'yi görmek için. Linux sistemindeki herhangi bir kötü amaçlı etkinliği gösterebilecek anormal süreçleri belirlemek için şunları kullanabilirsiniz:
Kod:
ps aux
Belirli bir işlem hakkında daha fazla ayrıntı görüntülemek için şunları kullanabilirsiniz,
Kod:
lsof –p [pid]
Hizmetler
Linux sistemindeki hizmetler, sistem ve ağ hizmetleri olarak sınıflandırılabilir. Sistem hizmetleri, hizmetlerin durumunu, cron'u vb. içerir ve ağ hizmetleri, dosya aktarımını, alan adı çözümünü, güvenlik duvarlarını vb. içerir. Bir olay müdahalecisi olarak, hizmetlerde herhangi bir anormallik olup olmadığını belirlersiniz.
Anormal çalışan servisleri bulmak için şunları kullanabilirsiniz:
Kod:
service --status-all
Saldırıya müdahale eden kişi, şüpheli zamanlanmış görev ve işleri aramalıdır. Zamanlanmış görevleri bulmak için şunları kullanabilirsiniz,
Kod:
cat /etc/crontab
DNS yapılandırma sorunlarını çözmek ve çeşitli çözümleyici bilgilerini sağlayan değerlere sahip bir anahtar sözcük listesi elde etmek için şunları kullanabilirsiniz:
Kod:
more /etc/resolv.conf
Web sitesinde veya SSL kurulumunda yapılan değişiklikleri test etmek için yararlı olan ana bilgisayar adlarını veya alan adlarını IP adreslerine çeviren dosyayı kontrol etmek için şunu kullanabilirsiniz:
Kod:
more /etc/hosts
Linux sistemlerinde IPv4 paket filtrelemesini ve NAT'ı kontrol etmek ve yönetmek için iptables kullanabilir ve aşağıdakiler gibi çeşitli komutlardan yararlanabilirsiniz:
Kod:
iptables -L -n
Dosyalar
Bir olay müdahale görevlisi olarak, sisteminizdeki anormal görünümlü dosyaların farkında olmalısınız.
Sisteminizdeki aşırı büyük dosyaları ve bunların hedefleriyle birlikte izinlerini belirlemek için şunları kullanabilirsiniz:
Kod:
find /home/ -type f -size +512k -exec ls -lh {} \;
SUID bitinin ayarlandığı herhangi bir komut çalıştığında, etkin UID'si o dosyanın sahibi olur. Bu nedenle, SUID bitini tutan tüm dosyaları bulmak istiyorsanız, komutu yazarak geri alabilirsiniz.
Kod:
find /etc/ -readable -type f 2>/dev/null
Saldırı müdahalecisi olarak sistemde 2 gündür var olan anormal bir dosyayı görmek isterseniz şu komutu kullanabilirsiniz:
Kod:
find / -mtime -2 -ls
Ağ ayarları
Bir Saldırı müdahalecisi olarak, Ağ etkinliğine ve ayarına keskin bir göz atmalısınız. Bir sistem ağının genel resmini ve sağlığını belirlemek son derece önemlidir. Ağ etkinliği bilgilerini almak için çeşitli komutları kullanabilirsiniz.
Ağ arayüzlerinizi sistem üzerinde görmek için bunu kullanabilirsiniz.
Kod:
ifconfig
Portları dinleyen tüm işlemleri PID'leri ile listelemek için kullanabilirsiniz.
Kod:
lsof -i
Ağ kullanımındaki tüm dinleme bağlantı noktalarını görüntülemek için
Kod:
netstat -nap
Sistem ARP önbelleğini görüntülemek için şunu yazabilirsiniz:
Kod:
arp -a
$PATH, shelle hangi dizinlerin yürütülebilir dosyaları arayacağını söyleyen bir dizin listesi görüntüler. yolunuzdaki dizinleri kontrol etmek için bunu kullanabilirsiniz.
Kod:
echo $PATH
Bu içeriği görmek için giriş yapın.