Register Now

Login

Lost Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Login

Register Now

Canyoupwn.me ~

TR | Linux Bash History Formatı

Bash Nedir ?

Bash GNU işletim sistemi için bir kabuk ya da başka bir deyişle komut dili yorumlayıcısıdır. Bourne-Again SHell sözcüklerinde türetilmiş bir kısaltmadır. Unix altında, bash kabuğu diğer benzerlerine nazaran daha fazla özelliğe ve işleve sahiptir. Linux işletim sistemi için de derlenen bash ise hem tcsh, hem de ksh‘dan özellikler taşır.

echo_shell

Linux terminali içinde echo $SHELL yazdığımız taktirde, işletim sistemi altında default olarak çalışan shell’i(kabuğu) görebiliriz.

/bin/bash  Bu şekilde bir çıktı veriyor. Bin klasörü altında bash çalıştığını anlayabiliriz.

Bash ve bash shell scripting hakkında ayrıca araştırma yapılması faydalı olacaktır. Bu yazıda asıl konumuz olan Bash History ve bunun sıkılaştırması ve gerekli sıkılaştırma işlemleri yapılmadığı taktirde saldırganın bunu ne amaçlarla kullanabileceğini üzerinde duracağız.

Bash History

Bash history /home/user ( ~ ) dizini altında bulunan ve gizli klasör olan .bash_history dosyasının içerisine kaydolmaktadır.

ls-la

cat .bash_history  komutu ile geçmişte yazılmış olan bash komutlarını okumak mümkün iken, bash ekranında direk olarak history  komutuda kaydedilmiş komutları vermektedir.

echo $HISTSIZE  komutu ile ekrana kaç adet geçmiş komut bastırabildiğimizi görebilir ve istersek bunu değiştirebiliriz.

BASH HISTORY KOMUTLARI

  • echo $BASH : Kullanılan kabuk ve dosya yolu.
  • echo $HISTSIZE : .bash_history dosyasının kaç kayıt tuttuğunun çıktısını verir.
  • history | tail : Son 10 komutu listeler.
  • history | more : Birden başlayarak listeler.
  • history n  : “n” değeri yerine yazılan sayı kadar sondan başlayarak komut listeler.
  • CTRL + R : İstediğimiz komutu aramak için arama ekranı açar.
  • history | grep value : “value” değeri yerine girdiğiniz değeri history içerisinde arayıp, değerin gectiği bütün geçmiş komutları getirir.
  • !10 : 10. komutu çalıştırır.
  • !! : Son çalıştırılan komutu tekrar çalıştırır.
  • history -c : Historyi temizler. Burada önemli bir ayrıntı vardır. history -c  komutu shell ekranında history  yazdığınızda gelen çıktıları temizler. Dolayısıyla geçmiş komutlar .bash_history  dosyası altında tutulmaya devam eder.

 

BASH HİSTORYSIZE DEĞİŞTİRİLMESİ

echo $HISTSIZE  komutu ile bash listesinde tutulan toplam komut sayısını öğrenildiğinden bahsetmiştik. Bu komut home/user (~)  dizini altında bulunan .bashrc  dosyası altında bulunmaktadır. Dolayısıyla bu dosyaya girerek değişiklik yapmamız mümkündür.

BASH HISTORYNİN YARARLARI VE ZARARLARI

Bir tehdit açısından ele aldığımızda bash historysinin bazı yararları ve zararları bulunmaktadır.

Avantajları ve Sıkılaştırması

Olası saldırı durumlarında, öncesinde ve sonrasında saldırganın sisteminizdeki izini sürmenize yardımcı olur. Hangi dizinleri erişim sağlanmış, veri kaybı olmuş mu, hangi izinler değiştirilmiş gibi bir çok etkenden haberdar olmuş oluyorsunuz. Özellikle (“Bu komutları ben girmedim”) dediğiniz komutlar mevcut ise sisteminizde bir ziyaretçi bulunuyor olabilir.

Tabi bu yararlardan verimli faydalanabilmek için bazı önlemler alınması gerekmektedir.

ls,la,profile

chattr +a /home/user/.bash_history 
chattr +a /home/user/.bash_profile 
chattr +a /home/user/.bash_login 
chattr +a /home/user/.profile 
chattr +a /home/user/.bash_logout 
chattr +a /home/user/.bashrc

chatter +a  komutu ile sadece ekleme yapılabilir özelliğini veriyoruz. Böylelikle root kullanıcısı dışında her hangi bir silme düzenleme işlemi yapılamaz hale gelecektir.

Dezavantajları

Bash History bütün komutları sakladığı için plain-text şifreler, önemli gizli dosyalar gibi bir çok dosyada listelenecektir.


About Mert Gücü

Researcher | Syp3x |#InformationShouldBeFree

Follow Me