linux arşivleri • CanYouPwnMe! - For Cyber Security Researchers https://canyoupwn.me cypm! Mon, 17 Aug 2020 10:12:21 +0000 tr hourly 1 https://wordpress.org/?v=6.0 https://canyoupwn.me/wp-content/uploads/2016/02/cropped-Başlıksız-1-32x32.png linux arşivleri • CanYouPwnMe! - For Cyber Security Researchers https://canyoupwn.me 32 32 TR | Dirtycow https://canyoupwn.me/tr-dirtycow/ https://canyoupwn.me/tr-dirtycow/#respond Mon, 13 Mar 2017 06:30:53 +0000 https://canyoupwn.me/?p=6494 CanYouPwnMe! - For Cyber Security Researchers CanYouPwnMe! - For Cyber Security Researchers - cypm!

TR | DIRTYCOW Hakkında Dirtycow Linux sistemlerde hak yükseltme zafiyeti olarak bilinmektedir. Dirtycow olarak adlandırılmış ve resmi olarak CVE-2016-5195 etiketini almıştır. Bu zafiyet android sistemlerde dahil olmak üzere tüm linux tabanlı işletim sistemlerini etkilemektedir. Zafiyetin tespiti Red-Hat firmasının araştırmaları sonucu ortaya çıkmıştır. İsmini ise linux çekirdek mekanizmasındaki Copy-On-Write sisteminden almıştır(COW). Çekirdeğin bellek yönetimi esnasında alt sistemlerinde yazma […]

TR | Dirtycow Murat TORAMAN

]]>
CanYouPwnMe! - For Cyber Security Researchers CanYouPwnMe! - For Cyber Security Researchers - cypm!

TR | DIRTYCOW

Hakkında

Dirtycow Linux sistemlerde hak yükseltme zafiyeti olarak bilinmektedir. Dirtycow olarak adlandırılmış ve resmi olarak CVE-2016-5195 etiketini almıştır. Bu zafiyet android sistemlerde dahil olmak üzere tüm linux tabanlı işletim sistemlerini etkilemektedir. Zafiyetin tespiti Red-Hat firmasının araştırmaları sonucu ortaya çıkmıştır. İsmini ise linux çekirdek mekanizmasındaki Copy-On-Write sisteminden almıştır(COW). Çekirdeğin bellek yönetimi esnasında alt sistemlerinde yazma sırasında kopyalama işlemini gerçekleştirirken yarış koşullarından yaralanılarak(bkz : race condition , kernel race condition) yetki yükseltme işleminin gerçekleşmesi hatasıdır. Bu hatayı Phil Oester keşfetmiştir. Fakat Linus Torvalds bu açığı daha önceden bildiğini ve düzeltmeye çalıştığını bunun üzerine başarısız olduğunu , bulunduğu zaman dilimi içerisinde bunun zor olduğunu ve o şekilde bıraktığını itiraf etmiştir.

Tarihçe

Zafiyetin Eylül 2007 de piyasaya sürülen 2.6.22 sürümünden bu yana Linux çekirdeğinde bulunduğu belirtilmektedir. Ayrıca bu zafiyetin Ekim 2016 tarihine kadar sömürüldüğüne dair iddialar bulunmaktadır. Sürecin bu kadar uzun olması ve zafiyetin bu süreç içerisinde düzeltilmemesi saldırganlar için velinimet olması aşikardır. Bu zafiyetin 4.8.3 , 4.7.9 , 4.4.26 ve daha yeni çekirdek sürümlerinde düzeltildiği belirtilmektedir. Bu yüzden kendi çekirdek sürümümüzü (bkz: kernel version) güncellememiz gerekmektedir. Bir başka konuya değinmek gerekirse bu da android sistemlerdeki zafiyettir. Kendi çekirdeğimizi güncellemek daha kolay olabilir fakat android sistemlerde gerek güncellemelerin alınması gerek bu güncellemelerle çekirdek versiyonun yükseltilmesi ne kadar mümkün tartışılabilir. Ayrıca büyük şirketler bazı eski cihazlardan desteğini çekmesi gibi bir konuda mevcut. Bu bilgiler ışığında piyasada bu zafiyete sahip birçok android cihazın bulunduğunu öngörmek çokta yanlış değildir.

Açıklama

Bu zafiyeti incelerken neler yapacağız belirtmek gerekirse Copy-On-Write özelliğinde ki hatayı kullanarak sadece okuma yetkisi verilmiş bir dosyaya herhangi bir root yetkisinde olmayan bir kullanıcı yetkisi ile bir şeyler yazmaya çalışacağız. İlk olarak bu dosyaya bir şeyler yazmayı denediğimizde ‘permission denied’ hatasını alacağız. Ve bu hatayı Dirtycow zafiyetini kullanarak aşmaya çalışacağız. Daha sonra ise root yetkisine erişmeyi deneyeceğiz. Benim bu zafiyeti test etmek için kullandığım sistem Ubuntu 14.04 LTS işletim sistemidir. Bu işletim sistemi kernel versiyonu ise 4.4.0-31-generic sürümüdür. Şimdi ekran görüntüleriyle bu zafiyeti uygulamalı olarak inceleyelim.

İnceleme

İlk olarak kullanıcı yetkimizi ve kernel sürümüzü görelim. Bunun için aşağıdaki komutları kullanabiliriz.

id
uname -r

  • id  ile canyoupwnme kullanıcısının bilgilerini görmekteyiz.
  • Şimdi uname -r ile çekirdek sürümümüzü kontrol edelim.

  • Böylece çekirdek sürümümüzün 4.4.0-31-generic olduğunu görmekteyiz.

Şimdi gerçekleştireceğimiz test işlemlerine geçelim. İlk olarak aşağıda vereceğim siteyi incelemenizi öneriyorum.

https://dirtycow.ninja/

Burada Dirtycow hakkında bilgi alabilirsiniz ve yazılan exploiti indirebilirsiniz. View Exploit kısmına tıklarsanız sizi Dirtycow exploitinin bulunduğu github reposuna yönlendirmektedir. Buradan Dirtycow exploitini indirelim.

Ayrıca aşağıda vereceğim link üzerinden de ulaşabilirsiniz.

https://github.com/dirtycow/dirtycow.github.io

  • Burada dirtycow sitesinin anasayfasını görmekteyiz. View Exploit diyelim veya yukarıda verdiğimiz bağlantıya tıklayalım.

  • Bu kısımda gördüğünüz dosyalardan dirtyc0w.c isimli exploit dosyasını kullanacağız. Bu dosyayı değişik yollardan sisteme indirebiliriz ben wget kullanacağım. Ayrıca bu repo üzerinden exploitin kaynak kodlarını inceleyebilirsiniz.

 

  • Kullandığım komut :
  • wget dirtycow.github.io/dirtyc0w.c
  • Böylelikle exploitimizin yazıldığı .c uzantılı dosyamızı indirmiş olduk.

 

  • Dosyamızı indirdikten sonra yapacağımız işlem bu dosyayı derlemek. Bu bir c dosyası olduğundan dolayı gcc ile derleyerek çalıştırılabilir dosya haline getirelim.
  • Dosyamızı derlemek için kullanacağımız komutu aşağıda verelim.
  • gcc -pthread dirtyc0w.c -o canyoupwnme

     

  • Dosyamız derlendikten sonraki ekran görüntüsünü görelim.

  • Böylelikle exploitimizi çalıştırılabilir dosya haline getirdik. Şimdi ise yazma yetkisi olmayan bir dosya içine birşeyler yazmayı uygulamalı olarak gösterelim.
  • Bunun için bir text dosyası oluşturalım ve izinlerini ayarlayalım.
  • Komutlar:
  • echo CanyoupwnmeDeneme > cypwntest.txt
    
  • chmod 0404 cypwntest.txt  komutu ile dosyamıza sadece okuma izni verelim.

  • Bu dosyanın izinlerini görelim.

  • Görüldüğü üzere dosyamız sadece okuma yetkisine sahiptir. Biz yinede nano metin editörü ile bu dosyaya bir şeyler yazalım ve kaydetmeyi deneyelim.
  • nano cypwntest.txt komutu ile dosyamızın içine bir şeyler yazalım.
  • Daha sonra kaydetmek istediğimizde ekran görüntüsü aşağıdaki gibi olacaktır. Ve ‘Permission Denied’ hatası alacağız. Çünkü dosyaya yazma iznimiz yoktur.

Exploit Aşaması

  • Görüldüğü üzere yazma yetkimiz olmadığı için hatayla karşılaştık. Şimdi zafiyeti exploit ederek dosya içine birşeyler yazalım.
  • ./canyoupwnme cypwntest.txt Möööööööö  komutu ile dosya içerisine ‘Möööööööö’ yazdıralım.

  • Komutumuzu çalıştırdıktan sonra işlem tamamlandığında bu ekranı görmekteyiz. Şimdi dosyamızı okuyalım bakalım değişiklik olmuş mu ? Daha önceden dosya içerisinde CanyoupwnmeDeneme yazdığını biliyorduk.

  • Görüldüğü üzere zafiyeti kullanarak sadece okuma yetkisine sahip bir dosya üzerinde yazma işlemini uygulamış olduk. Bunu root yetkisi olmadan sistem açıklığından faydalanarak gerçekleştirdik. Bunu saldırganlar sistem dosyaları ve önemli dosyalarımız üzerinden kullanarak zarar vermeye çalışabilir. Bu yüzden çekirdek sürümümüzü güncellememiz gerçekten önem arz etmektedir.
  • Şimdide sistemde zafiyeti kullanarak root yetkisi elde etmeyi deneyelim.
  • Bunun için aşağıdaki linkten c0wroot.c dosyasını sistemimize indirelim. Ve daha sonra zip içerisinden çıkaralım.
  • https://gist.github.com/rverton/e9d4ff65d703a9084e85fa9df083c679

 

  • Buradan Download ZIP kısmından dosyamızı zip olarak indirebiliriz. İndirip çıkartalım.

 

  • Zip içerisinde c0wroot.c dosyamızı görmekteyiz. Çıkardıktan sonra tekrar derleme işlemlerini yapıp exploiti çalıştırmayı ve root olmayı deneyelim.

 

  • Görüldüğü gibi dosyamızı derledik. Bu işlemi şu komutla gerçekleştirebiliriz:
  • gcc -pthread c0wroot.c  -o cypwnROOT
  • Root olmak için exploit kaynak kodunu derleyerek çalıştırılabilir dosya haline getirdik. Şimdi dosyamızı çalıştıralım ve sonuçlarını görelim. Ayrıca çalıştırmadan önce ve sonraki id değerlerine göz atalım.

  • Görüldüğü üzere exploitimizi çalıştırdıktan sonra root yetkisine erişmekteyiz.

Sonuç

Bu yazımızda  Dirtycow zafiyeti ile sadece okuma yetkisine sahip bir dosya üzerinde yazma işlemi gerçekleştirdik. Ve ayrıca root yetkisine erişmiş olduk. Bu zafiyetten kurtulmak için çekirdek sürümümüzü yükseltmemiz önemlidir. Ayrıca geliştirilmekte olan işletim sistemleri için öncelikli güvenlik tavsiyesi güncelleştirmeleri takip etmektir. İşletim sistemimizi her zaman güncel tutmamız tavsiye edilmektedir.

 

 

 

 

TR | Dirtycow Murat TORAMAN

]]>
https://canyoupwn.me/tr-dirtycow/feed/ 0
TR | Linux Kullanıcı Güvenliği https://canyoupwn.me/tr-linux-kullanici-guvenligi/ https://canyoupwn.me/tr-linux-kullanici-guvenligi/#respond Thu, 26 Jan 2017 06:20:33 +0000 https://canyoupwn.me/?p=5359 CanYouPwnMe! - For Cyber Security Researchers CanYouPwnMe! - For Cyber Security Researchers - cypm!

Parola Güvenliği Parola güvenliği, kullanıcı güvenliğinin en önemli unsurlarındandır. Bilgisayar sistemlerinde ilk karşımıza çıkan güvenlik önlemi parola sistemidir. Hem bizim hem de kullanıcılarımız için parola güvenliği çok büyük önem taşımaktadır. Yakın zamanda çıkan linux işletim sistemlerinde, passwd uygulama sistemi parola güvenliğini en üst seviyeye çıkarmayı amaçlamıştır. Bu yüzden işletim sistemlerimizin güncel olmasına önem göstermeliyiz. Parola […]

TR | Linux Kullanıcı Güvenliği CanYouPwnMe

]]>
CanYouPwnMe! - For Cyber Security Researchers CanYouPwnMe! - For Cyber Security Researchers - cypm!

Parola Güvenliği

Parola güvenliği, kullanıcı güvenliğinin en önemli unsurlarındandır. Bilgisayar sistemlerinde ilk karşımıza çıkan güvenlik önlemi parola sistemidir. Hem bizim hem de kullanıcılarımız için parola güvenliği çok büyük önem taşımaktadır. Yakın zamanda çıkan linux işletim sistemlerinde, passwd uygulama sistemi parola güvenliğini en üst seviyeye çıkarmayı amaçlamıştır. Bu yüzden işletim sistemlerimizin güncel olmasına önem göstermeliyiz. Parola belirlerken kaba kuvvet gibi saldırı yollarıyla kırılması zor parolalar seçmeliyiz. Nasıl parola seçmemiz gerektiği  TR | Parola Güvenliği başlığında anlatılmıştır.

Parola Yenileme

Kullanıcıların belirli aralıklarla parolalarını değiştirmelerini sağlamalıyız. Bu sayede kullanıcı güvenliğini artırmış oluruz. Parola değiştirecekleri tarihleri ve ne kadar süre kullanacakları gibi ayarları belirlerken chage  komutu kullanılmaktadır. chage –l username  komutu ile kullanıcımızın parolasına ait bilgileri görmekteyiz.

Parametreleri inceleyelim;
-m  : Kullanıcının parola değiştirdikten sonra tekrar değiştirebilmesi için, en az geçmesi gereken süreyi belirtmemizi sağlar.
-M  parametresi: Belirleyeceğimiz gün geçtikten sonra kullanıcının parolayı tekrar değiştirmesini sağlar.
-E  parametresi: Kullanıcının hesabı son kullanma tarihini belirlememize olanak sağlar. Verilen tarihte hesap kapatılır. Kullanımı “YYYY-AA-GG” şeklindedir.
-I  parametresi: Kullanıcı oturuma belirttiğimiz süre içerisinde giriş yapmazsa, oturum otomatik olarak kilitlenecektir.
-W  parametresi: Kullanıcıya parolasının zamanının dolması ne kadar süre kaldığı hakkında uyaracaktır.

Örnek kullanımı; sudo chage -E 2016-12-29 -M 100 -m 10 -I 5 -W 5 user  şeklindedir.

Yanlış Parola Giriş

Kullanıcının yanlış parola giriş sayısını sınırlandırmalıyız. Kullanıcılar 3 defadan fazla yanlış deneme yaptığında hesabı geçici olarak kapatılmalıdır.  Bu sayede saldırganların, kaba kuvvet gibi saldırılarını önlemiş oluruz. Bu sınırlandırma faillog  komutu ile yapılmaktadır.

Yukarıda ki komutta user kullanıcısının, yanlış parola giriş sayısını 3 deneme ile sınırlamış olduk.
sudo faillog –all  komutu ile bütün kullanıcıların faillog kayıtlarını görebiliriz.
Burada Failures  sütununda kullanıcının yanlış girdiği parola sayısı gözükmektedir. Buradan çok fazla yanlış deneme yapan kullanıcı, passwd –l username  komutu ile hesabı kapatılabilir.

Parolası Olmayan Hesapların Tespiti

Kullanıcıların parolalarını boş bırakmamaları gerekmektedir. Güncel linux sistemleri parolaların boş bırakılmamasına izin vermemektedir.
awk -F: ‘($2== “”) {print}’ /etc/shadow  komutu ile parolası olmayan kullanıcıların tespiti yapılmaktadır.
passwd –l username  komutu ile parolası olmayan kullanıcılar kitlenir.

Kullanıcı UID Değeri 0 olan Kullanıcıların Tespiti

UID sadece root hesabının 0 olması gerekmektedir. UID değeri 0 olan kullanıcıları tespit etmeli ve hesaplarını silmeliyiz veya bu izni bizim verdiğimizden emin olmalıyız. Güncel linux dağıtımlarında, sistem root harici kullanıcıların UID değerinin 0 olmasına izin vermemektedir
awk -F: ‘($3 == “0”) {print}’ /etc/passwd  komutu ile UID si 0 olan kullanıcıları görürüz.

Burada root hariç UID’si 0 olan kullanıcı var ise, passwd –l username  komutu ile hesabı kapatılmalıdır.

Kullanıcıların CPU VE RAM Kullanımlarının Sınırlandırılması

Kullanıcılar herhangi bir kaynak limiti belirlenmediği zaman, sistemi kırmak için sistemi meşgul eden programlar kullanabilirler. Bu sebeple kullanıcıların çalıştıracağı maximum, process sayısını ve kullanacakları RAM boyutunu ayarlamalıyız.

  • En fazla RAM kullanan kullanıcıların tespiti
ps axo %mem,comm,pid,euser | sort -nr | head -n 10

  • En fazla CPU kullanan kullanıcıların tespiti
ps axo pcpu,comm,pid,user | sort -nr | head -n 10

  • Detaylı bilgi
ps -eo pcpu,pid,user,args,pmem | sort -k 1 -r | head -10

/etc/security/limits.conf  dosyasına aşağıdaki satırları ekleyerek, kullanıcının maximum  açabileceği process’i ve kullanacığı bellek boyutunu belirleyebiliriz.

hard core 0 
hard rss 4000 
hard nproc 10

Kullanıcı maximum 10 tane process açabilecek ve 4MB bellek kullanabilecektir.
Bu özellikleri aktif hale getirmek için, /etc/pam.d/login  dosyası aşağıdaki gibi olmalıdır.

#%PAM-1.0 
auth required /lib/security/pam_securetty.so 
auth required /lib/security/pam_pwdb.so shadow 
auth required /lib/security/pam_nologin.so 
account required /lib/security/pam_pwdb.so 
password required /lib/security/pam_cracklib.so 
password required /lib/security/pam_pwdb.so nullok 
session required /lib/security/pam_pwdb.so 
session required /lib/security/pam_limits.so

Kullanıcıların ne zaman sisteme giriş yaptıklarına dikkat etmeliyiz.

Oturum açma girişlerini kaydetmek için /var/log/wtmp  dosyası olmalıdır, yoksa oluşturulmalıdır.
last -a  en son giriş ve çıkış yapmış olan kullanıcıların terminal ismi, tarih, saat, tam istemci adı gibi bilgileri gösterir. Bu komut /var/log/wtmp  dosyasının içini okur.

Kullanıcıların sisteme yanlış giriş denemelerini kaydetmeliyiz.

Yanlış giriş denemeleri kaydetmek için /var/log/btmp  dosyası olmalıdır, yoksa oluşturulmalıdır.
lastb  başarısız oturum açma girişimlerini gösterir. Bu komut /var/log/btmp  dosyasının içerisindeki kayıtları okur ve bize çıktı sunar.

Kullanılmayan Hesapların Kapatılması

UID değeri 500’ün altında olan hesaplar kontrol edilmeli, kullanılmayan hesaplar kapatılmalıdır. Çünkü bu hesaplar saldırganların girmesi için birer kapıdır. Hesabı silmek için userdel UserName  komutunu kullanmalıyız.

Bilgisayarımız herkesin kullandığı bir yerde ise;

/etc/lilo.conf  dosyasını açıyoruz ve aşağıdaki satırı yazıyoruz.

timeout=00 restricted password="belirlediğimiz parola " timeout

Bu satır makine açılırken, LILO’nun beklememesini sağlar, bu sayede LILO’ya parametre verilmesini engellenir. Restricted satırı makinanın single modda açılması gerektiğini belirtir. Kullanıcı girerken belirttiğimiz parola ile giriş yapar.

Yetkiler gruplara verilmeli, kullanıcılar gruplara dahil edilmelidir.

Yeni hesap açan kullanıcıların asgari ihtiyaçlarını karşılayacak minimum yetkinin verildiğinden emin olmalıyız.
Grup hesaplarının oluşturulması için groupadd  komutu kullanılır.

Gruba kullanıcı eklemek için;

usermod –g <grupAdı> -G <diğerGrupAdı> <kullanıcıAdı>

Grup Ön Yükleyicisinin Şifreli Hale Getirilmesi

Yetkisiz erişimlerin önlenmesi amacıyla, ön yükleyicinin şifreli hale getirilmesi sağlanmalıdır.
Bu amaçla, iki dosya üzerinde düzenlemeler yapacağız. Önce bu iki dosyanın her ihtimale karşı yedeklemesini yapmalıyız.

Daha sonra gedit editörü ile /etc/grub.d/10_linux  dosyasını açıyoruz ve en alt satıra ,

cat <<EOF
set superusers="root"
password root p@ssW0rd123* 
EOF

komutlarını ekliyoruz.

Parolayı belirledikten sonra yeni grub.cfg dosyasını oluşturmak için, grub-mkconfig–output=/boot/ grub/grub.cfg  komutunu kullanıyoruz. Daha sonra sunucumuzu yeniden başlatıyoruz.

İşletim sistemi açılırken, kullanıcı adı ve parola soran bir ekranla karşılaşırız. Buradan grub ön yükleyici ekranına giriş olanağı sağlanır.

Şimdi sıra parola güvenliğimizi artırmak için parolamızı şifrelemeye geldi. Parolamızı şifrelemek için grub-mkpasswd-pbkdf2  komutunu kullanıyoruz.

Daha sonra şifrelenmiş kısmı daha öncede kullanmış olduğumuz aşağıdaki kodda password kısmına yapıştırıyoruz.

cat <<EOF
set superusers="root"
password_pbkdf2 root
grub.pbkdf2.sha512.10000.******
EOF

Parola şifrelendikten  sonra tekrar  yeni grub.cfg dosyasını oluşturuyoruz. Bunun için, grub-mkconfig–output=/boot/ grub/grub.cfg  komutunu kullanıyoruz. Daha sonra sunucumuzu yeniden başlatıyoruz.

 


 

TR | Linux Kullanıcı Güvenliği CanYouPwnMe

]]>
https://canyoupwn.me/tr-linux-kullanici-guvenligi/feed/ 0
TR | Scalpel ile Dosya Kurtarma https://canyoupwn.me/linuxta-scalpel-ile-silinmis-dosya-kurtarma/ https://canyoupwn.me/linuxta-scalpel-ile-silinmis-dosya-kurtarma/#respond Fri, 09 Dec 2016 06:30:05 +0000 https://canyoupwn.me/?p=4744 CanYouPwnMe! - For Cyber Security Researchers CanYouPwnMe! - For Cyber Security Researchers - cypm!

Scalpel sisteminizden, harici disklerinizden her hangi bir nedenle silinen dosyalarınızı kurtarmanızı sağlayabilen küçük, hızlı ve kullanışlı bir araçtır. Bu yazımda kurulumu ve nasıl kullanıldığını anlatmaya çalışacağım. Öncelikle  sudo apt-get install scalpel komutu ile sistemimize kuruyoruz. Paket depoları dağıtımtan dağıtıma farklılık gösterir debian tabanlı bir dağıtım kullanmıyorsanız paket yöneticisi farklı olacaktır. Scalpel i sistemimize kurduktan sonra […]

TR | Scalpel ile Dosya Kurtarma Ahmet Gürel

]]>
CanYouPwnMe! - For Cyber Security Researchers CanYouPwnMe! - For Cyber Security Researchers - cypm!

Scalpel sisteminizden, harici disklerinizden her hangi bir nedenle silinen dosyalarınızı kurtarmanızı sağlayabilen küçük, hızlı ve kullanışlı bir araçtır. Bu yazımda kurulumu ve nasıl kullanıldığını anlatmaya çalışacağım.
  • Öncelikle
 sudo apt-get install scalpel

komutu ile sistemimize kuruyoruz. Paket depoları dağıtımtan dağıtıma farklılık gösterir debian tabanlı bir dağıtım kullanmıyorsanız paket yöneticisi farklı olacaktır.

1

Scalpel i sistemimize kurduktan sonra

sudo vim /etc/scalpel /scalpel.conf

 diyerek scalpel in ayar dosyasını açıyoruz.

2
Ben ayar dosyasını vim ile açtım siz vi, nano, gedit gibi editörler ilede açabilirsiniz. vim kurulu olarak gelmemekte bir live cd ile çalıştığınızda vim i kurmadıysanız bu komut hata verecektir.
3
  • Şimdi scalpel in ayar dosyasında bolca # (diyez) işareti görmekteyiz. Bunlarda yorum satırı olarak algılanıp çalışmamaktadır. Kurtarmak istediğiniz dosya formatının önündeki #(diyez) işaretlerini kaldırarak arama esnasında o uzantılı dosyayı arayıp kurtarmasını sağlayacağız. Ayar dosyasında gördüğünüz y nin yanındakiler bytes olarak dosyanın büyüklüğüdür. Daha büyük dosyaları aramayacaktır onuda değiştirmek elinizdedir. Son olarak #(diyez) i kaldırıp vim in :wq komutu ile dosyayı kaydetip ve çıktım. Bundan sonrası istediğimiz disk, kurtarılcak alanı gösterip dosylarımızı kurtarmaya kaldı.
4
sudo scalpel /dev/sda1 -o /home/ahmet-gurel/Desktop/output

diyerek scalpel i sda1 disk bölümündeki .jpg ve .png uzantılı silinmiş dosyaları arayarak kurtardığı dosyaları  masaüstünde output adlı bir klasöre kaydetmiştir. Diskin büyüklüğüne göre tarama ve kurtarma işlemi uzayacaktır ben deneme amaçlı 100 mb lık küçük bir alanı taradım genel anlamda kullanımı bu şekildedir.  -o parametresinden sonraki kısım kurtarılan dosyaların nereye kaydedileciğini göstermektedir istediğiniz gibi bir yol klasör verebilirsiniz.

TR | Scalpel ile Dosya Kurtarma Ahmet Gürel

]]>
https://canyoupwn.me/linuxta-scalpel-ile-silinmis-dosya-kurtarma/feed/ 0
TR | Linux Disk Güvenliği https://canyoupwn.me/tr-linux-disk-guvenligi/ https://canyoupwn.me/tr-linux-disk-guvenligi/#respond Mon, 24 Oct 2016 10:48:49 +0000 https://canyoupwn.me/?p=4288 CanYouPwnMe! - For Cyber Security Researchers CanYouPwnMe! - For Cyber Security Researchers - cypm!

Linux sistemlerde disk güvenliğini sağlamak için alınması gereken önlemlerden ilki klavyenizi başkasına teslim etmemek olmalıdır. Bilgisayarınıza fiziksel erişim sağlanırsa ne kadar sağlam bir password’e sahip olursanız olun saldırgan  hard diskinizi başka bir bilgisayara takarak da erişim sağlayabilir. Disk yani veri güvenliği için kişisel bilgisayarın fiziksel güvenliğinin tüm teknik önlemlerden önce geldiği unutulmamalıdır. Sonrasında ise disk […]

TR | Linux Disk Güvenliği CanYouPwnMe

]]>
CanYouPwnMe! - For Cyber Security Researchers CanYouPwnMe! - For Cyber Security Researchers - cypm!

Linux sistemlerde disk güvenliğini sağlamak için alınması gereken önlemlerden ilki klavyenizi başkasına teslim etmemek olmalıdır. Bilgisayarınıza fiziksel erişim sağlanırsa ne kadar sağlam bir password’e sahip olursanız olun saldırgan  hard diskinizi başka bir bilgisayara takarak da erişim sağlayabilir. Disk yani veri güvenliği için kişisel bilgisayarın fiziksel güvenliğinin tüm teknik önlemlerden önce geldiği unutulmamalıdır.

crypto_image

Sonrasında ise disk şifreleme teknolojisi kullanılarak verilerinizi izinsiz erişimlerden koruyabilirsiniz. Disk encryption, network üzerinden gelen saldırılara karşı bir korunma yöntemi değildir. İnternete bağlı olduğumuz her an zararlı bir yazılım indirebilir veya zararlı bir siteye giriş yapabiliriz. Yani diski şifrelemek aslında verileri sadece fiziksel erişimlere karşı korur. Disk parolasını oluştururken yapay zeka yardımıyla tahmin edilemez, güçlü ve aynı zamanda akılda kalıcı olmasına dikkat edilmelidir. Tüm güvenlik önlemlerini aldınız ve diskinizi sağlam bir parola ile koruyorsunuz. Acil bir durum olduğunda ve bilgisayarınızın başından kalkmanız gerektiğinde belli bir süre sonra aktifleşen bir ekran kilidiniz yoksa aldığınız tüm önlemleri çöpe attınız demektir.

Disk encryption, çeşitli side channel attack’lara karşı zafiyetlidir. Örneğin bilgisayar kapatıldığında kısa süreliğine RAM içinde bulunan bilgilere RAM’inizi fiziksel olarak ele geçiren birisi başka bir bilgisayara takarak ulaşabilir. Bu işlemi RAM içindeki verinin kaybolma süresini uzatmak için RAM’i fiziksel olarak dondurarak gerçekleştirdiğinden saldırı cold boot attack olarak adlandırılır.

Linux sistemlerde disk encryption işlemi sistem kurulumunda veya sonrasında yapılabilir. Kurulum aşamasında disk encryption yapmak için usb stick veya dvd’den boot işlemini başlattıktan sonra kurulum talimatlarını takip ederek kolaylıkla yapılabilirsiniz.

k-key

k-encryption

Kurulum esnasında diski şifrelediğimizde işletim sistemi çalışmadan önce doğru encryption key girilerek diski aktif hale getirilir. Kurulum tamamlandıktan sonra disk unlocked olmadan önce bilgisayar çalışmayacaktır.

enter-key

Kurulum sırasında yapmayı unuttup sonradan fikrinizi değiştirdiyseniz de Linux tabanlı işletim sistemleriyle gelen Linux Unified Key Setup (LUKS)’tan faydalanabilirsiniz.

Linux makinelerde disk şifreleme işlemi için dm-crypt (device-mapper crypto target) özelliğini LUKS ile birlikte kullanacağız. Dm-crypt, aygıtların şifrelenmesini kernel crypto API kullanarak sağlar.

LUKS yardımıyla şifreleme yapmak için cryptsetup yardımcı programını indirelim.

Debian/Ubuntu kullanıcıları için;

apt-get install cryptsetup

Disk üzerinde herhangi bir işlem yapmadan önce sistemin yedeğini almayı unutmayalım. Yedek aldıktan sonra /dev/sdb diskini şifreleyelim.

sudo cryptsetup -y -v luksFormat /dev/sdb

encrypt-disk

luksOpen, doğru password girildiği takdirde şifrelenmiş disk bölümünü açar ve verilen yeni isim ile bir mapping oluşturur.

open-disk

ls -l /dev/mapper/cryptdisk

komutu ile oluşturduğunuz mappingi görebilirsiniz.

Dosya sistemini oluşturup diğer sistemlerde olduğu gibi diski mount ediyoruz.

mkfs.ext4 /dev/mapper/cryptdisk

ext4-disk

mount /dev/mapper/cryptdisk /data

mount-disk

Son olarak şifrelenmiş diski luksClose ile kapatabilirsiniz.

cryptsetup luksClose /dev/mapper/cryptdisk

close-disk

Linuc sistemlerde disk güvenliğini sağlamak için ekstra bir güvenlik önlemi için fstab biçimlendirme dosyasını kullanabiliriz. Fstab işletim sisteminizin değiştirilebilir bir dosya sistemi tablosudur. Sabit disk bölümlerini sisteme bağlama (mount) işleminin otomatik olarak gerçekleşmesini sağlayan ayar dosyasıdır. Mount işlemi, diskteki bir bölümün dosya sisteminde oluşturulan başka bir dizine bağlanma işlemidir. Böylece disk bu dizin üzerinden erişime açılmış olur.

etc_fstab_output

fstab dosyasında belirtilen bağlanma noktası diskin varsayılan bağlanma noktasıdır. Yani herhangi bir bağlanma noktası verilmeden mount komutu çalıştırılırsa dosya içinde tanımlı olan bağlantı noktası geçerli olur.

Bağlama işlemini alışılmışın dışında başka bir dizine yaptığımızda ilk denemede ele geçirilememiş olacaktır. Böylece ekstra bir güvenlik önlemi almış ve zaman kazanmış oluruz. Kullanıcıların home dizinini bir disk bölümüne bağlamak için fstab dosyasına /dev/sdc /home ext4 defaults,nosuid,noexec 1 2 satırını ekleyelim.

/dev/sdc : aygıt ismi

/home : bağlanma noktası

ext4 : bağlanacak dosyanın türü

defaults, nosuid, noexec : nosuid ile home dizinine suid erişimine izin verilmez. noexec ile binary dosyaların çalışması engellenir.

1 : dump alanı. 1 ve 0 değerlerini alır. Yedekleme yapılıp yapılmayacağını belirtir.

2 : yeniden başlatılan sistemlerde denetimdeleri belirler. 0 denetim yapmaz. 1 root için, 2 ise diğer dizinler içindir.

echo "/dev/sdc2 /home ext4 defaults,nosuid,noexec 1 2 " >> /etc/fstab 

daha sonra

mount - a

 

komutu ile diski bağlayabilirsiniz.


TR | Linux Disk Güvenliği CanYouPwnMe

]]>
https://canyoupwn.me/tr-linux-disk-guvenligi/feed/ 0
TR | Doorman https://canyoupwn.me/tr-doorman/ https://canyoupwn.me/tr-doorman/#respond Mon, 03 Oct 2016 07:00:15 +0000 https://canyoupwn.me/?p=4379 CanYouPwnMe! - For Cyber Security Researchers CanYouPwnMe! - For Cyber Security Researchers - cypm!

Doorman Kurulum Ve Kullanım Hakkında Doorman parolalarınızı , metinlerinizi , metinlerinizden istediğiniz bölümleri ve kod parçacıklarınızı gizli tutmaya yarayan bir yazılımdır. Açık kaynaklı bir yazılım olan doorman kaynak kodlarını kurulum ve kullanım önergelerini aşağıda vereceğim linklerden de inceleyebilirsiniz. https://github.com/halitalptekin/doorman https://pypi.python.org/pypi/doorman Kurulum Ve Kullanım Aşaması Python dili kullanılarak tasarlanan bu yazılım nasıl kurulur ve kullanılır ekran […]

TR | Doorman Murat TORAMAN

]]>
CanYouPwnMe! - For Cyber Security Researchers CanYouPwnMe! - For Cyber Security Researchers - cypm!

Doorman Kurulum Ve Kullanım

Hakkında

Doorman parolalarınızı , metinlerinizi , metinlerinizden istediğiniz bölümleri ve kod parçacıklarınızı gizli tutmaya yarayan bir yazılımdır.

Açık kaynaklı bir yazılım olan doorman kaynak kodlarını kurulum ve kullanım önergelerini aşağıda vereceğim linklerden de inceleyebilirsiniz.

  • https://github.com/halitalptekin/doorman
  • https://pypi.python.org/pypi/doorman

Kurulum Ve Kullanım Aşaması

Python dili kullanılarak tasarlanan bu yazılım nasıl kurulur ve kullanılır ekran görüntüleriyle inceleyelim.

Kurulum

  • Başlangıç olarak yazılımı pip ile sistemimize kuruyoruz.
pip install doorman

doorman-1

 

  • Daha sonra aşağıdaki doorman komutu ile yazılımı çalıştıralım.
doorman

doorman-2

 

  • Kurulumu tamamladık ve yazılımı çalıştırdık.Şimdi kullanım aşamasına geçelim.

Kullanım

  • Kullanım aşamasında adım adım sosyal medya parolalarını saklama , metin dosyaları için saklama ve kod parçacıkları için saklama kısımlarını inceleyeceğiz.
  • İlk olarak sosyal medya parolalarını nasıl gizleyip tutabileceğimizi inceleyelim.
  • Bu işlemler için aşağıdaki dizindeki konfigürasyon dosyasını düzenlememiz gerekmektedir.Eğer bu dizinde belirttiğimiz dosya yoksa aynı uzantıya sahip konfigürasyon dosyasını kendimiz oluşturarak düzenleyebiliriz.
~/.config/doorman/doorman.yml
  • Dosyamızın bulunduğu dizine ulaştık veya yoksa oluşturduktan sonra düzenleme aşamasını inceleyelim.

doorman-3

 

nano doorman.yml
  • komutu ile konfigürasyon dosyamızın içine saklamak istediğimiz belgelerin bilgilerini yazalım.Deneme için masaüstüne oluşturacağım dosyaları birazdan inceleyeceğiz.İlk olarak sosyal medya parolalarımızı gizli tutmak için gereken ayarlarımızı yapalım.
  • Masaüstüne twitter.rb adında bir dosya oluşturdum.Daha sonra bu dosyayı bir metin düzenleyici ile açarak düzenleyelim.

doorman-6

 

  • twitter.rb dosyamızı resimdeki gibi düzenledik.Şimdi düzenlediğimiz dosya içerisindeki twitter password bilgilerimizi gizleyelim.Bu işlem için önce daha önce dizinine ulaştığımız doorman.yml dosyamızı düzenleyelim.

doorman-5

 

  • doorman.yml konfigürasyon dosyası içerisine belirttiğimiz bilgileri girdik.Konfigürasyon dosyamıza gizlemek istediğimiz kısımları belirtiyoruz.
/Desktop/twitter.rb

bu metin ile işlem yapacağımız dosyamızı ve yolunu belirtiyoruz.

twitter_password: bHc0yz
private_key: 1VpzKbLDTqC1vXb

metni ile twitter parolamızı ve özel anahtarı gizlemek istediğimizi belirtmiş olduk.

  1. Şimdi twitter.rb dosyası içerisindeki gizlemek istediğimiz kısımları gizleme işlemine geçelim.
  2. Bunun için şu komutu kullanıyoruz:
doorman -s

Komutumuzu terminal ekranına yazdıktan sonra twitter.rb dosyamızın içeriğine bir göz atalım ve neler değişmiş görelim.

doorman-7

  1. Görüldüğü gibi twitter parolası ve özel anahtarımız gizlenmiş bulunmaktadır.
  2. Bir örnek daha ekleyelim.Bu dosyamızda bir klasörün içindeki githup projemizdeki dosyamız olsun.Bunun içinede örnek github parolamızı yazalım ve gizleyelim.

doorman-8

  • Masaüstünde pythoncodes isimli bir klasör oluşturduk ve bu klasörün içinede githubapi.py dosyamızı oluşturduk.Yine bir metin düzenleyici ile bu dosyamızın içine belirtildiği şekilde github parolamızı kaydettik.Şimdi konfigürasyon dosyamızda githubapi.py dosyamızın içeriğini gizlemek istediğimizi belirtelim.

doorman-10

  • Üstte belirttiğimiz şekilde dosya yolunu giriyoruz ve resimdeki şekilde github_password bilgimizi giriyoruz.
  • Yine aşağıdaki komut ile dosyalarımızın içeriğini gizliyoruz.
doorman -s

Şimdi github parolamızı içeren dosyamızı kontrol edelim neler değişmiş görelim.

doorman-11

  • Görüldüğü gibi github password bilgilerimizde gizlenmiş oldu.

Şimdide metin dosyalarımız içerisindeki istediğimiz kısımları gizleme işlemlerini gerçekleştirelim.

  • Masaüstünde secret.conf isminde bir metin dosyası açalım.Ve içine örnek bir metin yazalım.Daha sonra doorman.yml konfigürasyon dosyamızı düzenleyelim.Metnin içinde geçen CanYouPwnMe kısmını gizlemek istiyoruz.Ayarlarımızı aşağıdaki ekran görüntüsündeki gibi düzenleyip kaydedelim.

doorman-12

  • Daha sonra tekrar doorman -s komutu ile içeriğimizi gizleyelim.

doorman-13

  • Görüldüğü gibi CanYouPwnMe kısmını gizlemek istedik ve gizleme işlemini tamamladık.
  • Şimdide kod parçacıklarını gizlemeyi inceleyelim.
  • Herhangi bir kod bloğunda gizlemek istediğimiz kısmı doorman.yml konfigürasyon dosyamızda belirtiyoruz.Masaüstünde örnek olarak my_settings.py adında python dosyası açıyoruz ve içeriğini aşağıdaki ekran görüntüsü gibi düzenliyoruz.

doorman-14

  • Python dosyamızın yolunu ve gizlemek istediğimiz kod parçacığını konfigürasyon dosyamızda belirttik.Yine doorman -s komutu ile gizleme işlemini gerçekleştiriyoruz.Ve sonucu aşağıda görelim.

doorman-15

  • Kod parçacığımızı gizlemeyide inceledik.Bundan sonra gizlediğimiz kısımmları tekrar nasıl görünebilir hale getirebiliriz o aşamayı inceleyelim.Bunun için aşağıdaki kodu kullanıyoruz.
doorman -u

Bu kod ile gizlediğimiz dosyaların içeriğini görünür yapabiliriz.

doorman-16

  • Dosyalarımızın içeriğini gizlemeyi ve tekrar nasıl görünür hale getirilmesini inceledik.
  • Son olarak hangi dosyalarımızda içerik gizleme işlemini uyguladık görelim.
  • Bunun için şu kodu kullanıyoruz.
doorman -v
  • İçeriklerini gizlediğimiz dosyaları ekran görüntüsündeki gibi görebiliyoruz.

Böylelikle doorman yazılımını dosyalarımızın içeriklerini gizlemeyi incelemiş olduk.Böylelikle parolalarınızı,metin dosyalarınızın içeriklerini,kod parçacıklarınızı saklı tutabilirsiniz.

Kodlarımızı özet olarak açıklamasıyla aşağıda gösterelim.

doorman -s
  • Dosyalarımızda istediğimiz kısımları gizlemek için kullanılır.
doorman -u
  • İçeriklerini gizlediğimiz dosyaların içeriklerini tekrar görünür hale getirmek için kullanılır.
doorman -v
  • Hangi dosyalarda gizleme işlemi yaptığımızı görmek amacıyla kullanılır.
doorman -h

Doorman için gerekli açıklamaları görmek ve yardım için kullanılır.

Kaynak linkleri:

https://github.com/halitalptekin/doorman

https://pypi.python.org/pypi/doorman

TR | Doorman Murat TORAMAN

]]>
https://canyoupwn.me/tr-doorman/feed/ 0
TR | Linux PAM Modülü https://canyoupwn.me/tr-linux-pam-modulu/ https://canyoupwn.me/tr-linux-pam-modulu/#respond Thu, 29 Sep 2016 06:30:25 +0000 https://canyoupwn.me/?p=4221 CanYouPwnMe! - For Cyber Security Researchers CanYouPwnMe! - For Cyber Security Researchers - cypm!

PAM (Pluggable Authentication Modules), servislere göre farklı kimlik denetleme yöntemleri belirleyebilmeyi sağlayan bir sistemdir. Linux dağıtımlarında kullanıcı bilgisi /etc/passwd dosyasında saklanır. Bu metin dosyasında kullanıcının kullanıcı adı, şifrelenmiş parolası, benzersiz sayısal kullanıcı kimliği (uid), sayısal grup kimliği (gid), seçimlik yorum alanı (kullanıcının gerçek adı, telefon numarası vb. bilgiler), ev dizini ve tercih ettiği kabuk bilgileri bulunur. Bir […]

TR | Linux PAM Modülü CanYouPwnMe

]]>
CanYouPwnMe! - For Cyber Security Researchers CanYouPwnMe! - For Cyber Security Researchers - cypm!

PAM (Pluggable Authentication Modules), servislere göre farklı kimlik denetleme yöntemleri belirleyebilmeyi sağlayan bir sistemdir.

Linux dağıtımlarında kullanıcı bilgisi /etc/passwd dosyasında saklanır. Bu metin dosyasında kullanıcının kullanıcı adı, şifrelenmiş parolası, benzersiz sayısal kullanıcı kimliği (uid), sayısal grup kimliği (gid), seçimlik yorum alanı (kullanıcının gerçek adı, telefon numarası vb. bilgiler), ev dizini ve tercih ettiği kabuk bilgileri bulunur.

Bir sistemde gölgelenmiş parolalar aktif edildiğinde  /etc/passwd  dosyasındaki parola alanına x yazılır.

passwd

 

Kullanıcının gerçek şifrelenmiş parolası  /etc/shadow  dosyasında saklanır.

shadow

Login veya su gibi programlar parolaları nasıl doğrulayacaklarını nereden bildiğini veya sistemdeki parolaların saklanma biçimini değiştirirseniz neler olacağını öğrenmek için PAM e bakalım.

PAM belirli programların kullanıcı kimlik kanıtlaması yapamayacağı, sadece belirli kullanıcıların kimlik kanıtlaması yapabileceği, bazı programlar kimlik kanıtlaması yapmak istediğinde uyarı verecek şekilde ve hatta tüm kullanıcıları oturum açma ayrıcalıklarından mahrum bırakacak şekilde yapılandırılabilir.

PAM, iki bileşenden oluşmaktadır:

  • Biri API ( Application Programming Interface – Uygulama Programlama Arayüzü ) sağlar.
  • Diğeri kimlik denetimini gerçekleştirir.

PAM modülleri 4 farklı görev için kullanılmaktadır. Bu görevler;

  • kimlik denetim yönetimi,
  • hesap yönetimi,
  • oturum yönetimi
  • şifre yönetimi.

Önemli pam modülleri ; pam_unix, pam_nologin, pam_ldap, pam_securetty, pam_limits, pam_access, pam_warn, pam_deny, pam_permit olarak sayabiliriz.

 

Pam_limits modülünü inceleyecek olursak;

limitconf

Kişi / Grup : @student – user

Kısıtlama : soft – hard

Kaynak : core – rss – nproc

Değer : 0 – 100000 – 20 – 50

Tanımlamalar ;

core : Core dosyasının boyutu (KByte)

data : Kullanıcının çağırdığı programlarda ayrılacak maksimum hafıza (KByte)

fsize : Kullanıcı en büyük kaç KB’lık dosya yaratabilir.

nofile : Aynı anda açılabilecek dosya sayısı.

nproc : Maksimum uygulama sayısı.

rss : KByte cinsinden hafıza kaplacak yer.

maxlogins : Sisteme aynı anda kaç kere login olabilir.

soft : kullanıcı kendine göre tanımlayabilir.

hard : son limitler, kullanıcılar değiştiremez.

NOT : @ işareti grubu ifade eder, “*” ise tümü demektir.

 

 PAM yapılandırması

  • Her servis için ayrı olan yapılandırma dosyaları /etc/pam.d dizini altında olmalıdır.etcpam

 

  • Tüm yapılandırma tek bir dosyada tutulur ve bu dosya  /etc/pam.conf dosyasıdır.etcpamconf

 

PAM SSH Servisi Konfigürasyon Örneği

PAM, sunucunuza erişimi zorlaştırmanın ve ekstra güvenlik kuralları sağlamanın yollarından biridir. Sunucunuza hangi kullanıcıların erişebileceğini belirlemek için alternatif bir çözümdür.

sshd

  1.  PAM Modül Tipi

  • Auth : Kullanıcı doğrulama, kimlik denetetimi yapar.
  • Account: Kullanıcının sisteme girebileceği saatlerin belirlenmesi, bir kullanıcının en fazla kaç oturum açabileceği gibi bilgileri kontrol eder. Kullanıcının servise erişmeye izni olup olmadığını, parolasının süresinin geçip geçmediğini tespit eder.
  • Session:Kullanıcının oturumu sırasında ve oturum sonrasında yapılması gereken rutin işlemleri kontrol eder. (şifre kaydetme, mount etme vs.)
  • Passwd:Kullanıcının kimlik denetimi verilerinin güncellenmesini denetler.

 

  1. PAM Kontrol Bayrağı – Denetim:

  • Required:PAM kimlik kanıtlamasını reddetmeden önce bu servis için listelenmiş diğer modülleri denemeye devam etse de; sonuç kimlik kanıtlamasının reddi ile başarısızlık olur.
  • Requisite:“required” seçeneğinden  farklı olarak, eğer bir modül başarısız olursa işlemin başarısız olduğu uygulamaya hemen bildirilir. Derhâl reddedilir.
  • Sufficient:“Sufficient”, kontrol bayrağına sahip bir modül başarılı olduğu takdirde, önceki modüllerde başarısız olsa bile, işlemin başarılı olduğu uygulamaya bildirilir.
  • Optional:“Optional” kontrol bayrağına sahip bir modülün başarısı veya başarısızlığı işlemin başarısını etkilememektedir.

 

  1. PAM Modül Dosyalarının Yeri:

  • PAM modülünün sistem içindeki yerini, dizinini belirtir. PAM, hangi modülü kullanacağını ve modülleri nerede bulacağını burada verilen yol sayesinde bilir. Çoğu yapılandırma sadece modülün adını içerir. Böyle durumlarda, PAM öntanımlı PAM modül dizinine bakar, bu normalde/usr/lib/security

 

  1. PAM Arguments (Modül Argümanları):

    Modüle gönderilecek olan argümanlar, modüllerin parametreleridir. Her modülün, kendi parametresi vardır. Örnek olarak; en çok kullanılan modüller şu şekilde sıralanabilir.

pam_unix.so temel kimlik kanıtlama modülüdür. Bu modüle “null ok” parametresi gönderilirse, boş parola geçerli anlamına gelir.
pam_warn.so sistem günlüklerine uyarı mesajı kaydeder.
pam_deny.so kimlik denetimini reddeder.
pam_rootok.so kimlik denetimi yapılırken kullanıcının root olup olmadığını kontrol eder.
pam_securetty.so  kullanıcının güvenli konsola oturum açtığından emin olmayı sağlar.
pam_lastlog.so  kullanıcının en son açtığı oturum ile ilgili bilgileri getiren modüldür.

 

Sudo Komutunun Engellenmesi

Linux işletim sistemlerinde root olarak eylem yapabilmeyi sağlayan sudo komutu /etc altındaki “sudoers” dosyasında yapılan değişikliklerle engellenebilir.

Sudoers dosyasının içerisindeki; sudo komutunun çalışmasını sağlayan satırın önündeki yorum işareti kaldırılırsa, sudo komutunu çalıştırma izni sadece “wheel” grubundaki kullanıcılara verilmiş olur.

# wheel    ALL=(ALL)    ALL

etcsudoers

NOT: Kullanılan linux dağıtımında böyle bir yorum satırı olmayabilir, böyle durumlarda satır dosyaya eklenmelidir.

 

Örnek Senaryo: Root hariç diğer kullanıcıların belirli zamanlarda login işlemini yapabilmelerine izin verelim.

Bu erişim yetkilendirme için bize zaman kısıtlamaları sunan pam_time modülünü kullanalım. Pam_time modülü yapılandırma dosyası /etc/security  altındaki  time.conf dosyasıdır.

Not: Başka yollar denemek isterseniz pam_time’a benzeyen pam_access ve  pam_listfile modüllerine bakabilirsiniz.

Aşağıda görüldüğü gibi time.conf dosyasında,

login ; tty* & !ttyp* ; !root ; !WdSu0000-2400

login islemi için root hariç diğer tüm kullanıcılar haftanın pazar günü hariç giriş yapılabilsin, demek istiyorum. Hangi gün istiyorsanız WdMo, WdSa  şeklinde Wd(weekend) ve günün ilk 2 harfi şeklinde veya tüm zamanlar için Al şeklinde yazabilirsiniz.

timeconf

Ayrıca /etc/pam.d altında login dosyasına ek olarak account satırı ekliyoruz.

tmmm

Ve komut satırından deneme kullanıcısı için login olmak istediğimizde erişim kısıtlamasıyla karşılaşıyoruz.

permissndenied

Kaynaklar:

http://linux.die.net/man/5/time.conf

http://linux.yorenet.com/?hn=483&kn=241&dil=tr&kw=Daha+Guvenli+SSH+Baglantilari

http://dincer.info/yazi/linux-pam-ile-kimlik-denetimi


TR | Linux PAM Modülü CanYouPwnMe

]]>
https://canyoupwn.me/tr-linux-pam-modulu/feed/ 0
TR | Linux Bash Aktivitelerinin Loglanması https://canyoupwn.me/tr-linux-bash-aktivite-loglanmasi/ https://canyoupwn.me/tr-linux-bash-aktivite-loglanmasi/#respond Thu, 01 Sep 2016 14:11:10 +0000 https://canyoupwn.me/?p=4155 CanYouPwnMe! - For Cyber Security Researchers CanYouPwnMe! - For Cyber Security Researchers - cypm!

Linux sunucumuzda birden fazla kullanıcı erişim yetkisine sahip ise bütün kullanıcıların aktivite kaydını tutmak isteyebiliriz. Evet  .bash_history altında kayıt ediliyor fakat yeteri kadar güvenli değil. Anında kayıt olmuyor ve sistem çöktüğünde ya da istenmeyen şekilde bash oturumu sona erese kayıtlara ulaşamayabiliriz. Bash aktivite loglarını olası bir istenmeyen durum karşısında incelemek için log sunucumuza göndermemiz daha […]

TR | Linux Bash Aktivitelerinin Loglanması Gökay Atar

]]>
CanYouPwnMe! - For Cyber Security Researchers CanYouPwnMe! - For Cyber Security Researchers - cypm!

Linux sunucumuzda birden fazla kullanıcı erişim yetkisine sahip ise bütün kullanıcıların aktivite kaydını tutmak isteyebiliriz.

Evet  .bash_history altında kayıt ediliyor fakat yeteri kadar güvenli değil. Anında kayıt olmuyor ve sistem çöktüğünde ya da istenmeyen şekilde bash oturumu sona erese kayıtlara ulaşamayabiliriz.

Bash aktivite loglarını olası bir istenmeyen durum karşısında incelemek için log sunucumuza göndermemiz daha sağlıklı olacaktır ve önce kaydımızı alıp sonra yazdığımız komutun işletilmesini sağlayacağız.

 

Herhangi bir metin düzenleme editorü  ile /etc/bash.bashrc  açalım. Ben direk düzenleme modu ile açıyorum.

sudo -e /etc/bash.bashrc

Daha sonra aşağıdaki satırı ekleyelim.

export PROMPT_COMMAND='RETRN_VAL=$?;logger -p local6.debug "$(whoami) [$$]: $(history 1 | sed "s/^[ ]*[0-9]\+[ ]*//" ) [$RETRN_VAL]"'

Ve kayıt edip çıkalım.

Screenshot from 2016-09-01 15-02-26

 

Şİmdi log dosyasını kayıt yolunu ve dosya adını ayarlayalım. /etc/syslog.conf   herhangi bir metin editörü ile açalım.

sudo -e /etc/syslog.conf

Ve aşağıdaki satırı ekleyelim

 local6.*                /var/log/bashaktivite.log

 

Screenshot from 2016-09-01 15-37-09

Ve kayıt edelim çıkalım.

Log dosyamızın kullanıcıların müdahale etmesini engellemek için izinleri değiştirmeyi unutmayalım

sudo chattr +a /var/log/bashaktivite.log

Son olarak log servisimizi yeniden başlatalım.

systemctl restart rsyslog.service

Her şey tamam şimdi /var/log/bashaktivite.log log dosyamızı açarak kayıtları görebiliriz.

cat /var/log/bashaktivite.log

Screenshot from 2016-09-01 15-49-54

 

 

Komutu tanıyalım

logger -p local6.debug "CMDAUDIT EVENT! $(whoami):[$(id -u)]:[$$]: $(history 1 | sed "s/^[ ]*[0-9]\+[ ]*//" ) [$RETRN_VAL]"

“PROMPT_COMMAND”   Adında ortam değikenimiz var. Bu değişken bash çıktısı vermeden önce işlemin yürütülmesini sağlıyor

RETRN_VAL=$?  Kodumuzu değişkene atıyoruz

$(whoami) işlemi yapan kullancı adı

[$$]  Mevcut shell PID. Eğer aynı kullanıcıya ait başka oturumlar varsa bunları ayırt edebiliriz.

$(history 1 | sed “s/^[ ]*[0-9]\+[ ]*//” )  Son çalıştırdığımız komutu sed ile index ve boşlukları silerek gösterir.

[$RETRN_VAL] Dönüş değerimiz.

Log dosyasını daha detaylı hale getirmek için loglanmasını istediğiniz değişkeni ekleyebilirsiniz.

 

Son olarak unutmadan sunucumuz kendi halinde değilse sürekli işlem yapıyorsak log dosyamız baya şişecektir bunun önüne geçmek için log rotate yapmamız gerek.

sudo -e /etc/logrotate.d/rsyslog

Açalım ve log dosyamızı buraya ekleyelim

Screenshot from 2016-09-01 16-28-03


TR | Linux Bash Aktivitelerinin Loglanması Gökay Atar

]]>
https://canyoupwn.me/tr-linux-bash-aktivite-loglanmasi/feed/ 0
TR | Linux Bash History Formatı https://canyoupwn.me/tr-linux-bash-history-formati/ https://canyoupwn.me/tr-linux-bash-history-formati/#respond Thu, 01 Sep 2016 06:00:24 +0000 https://canyoupwn.me/?p=4119 CanYouPwnMe! - For Cyber Security Researchers CanYouPwnMe! - For Cyber Security Researchers - cypm!

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. Linux terminali içinde […]

TR | Linux Bash History Formatı Mert Gücü

]]>
CanYouPwnMe! - For Cyber Security Researchers CanYouPwnMe! - For Cyber Security Researchers - cypm!

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.


TR | Linux Bash History Formatı Mert Gücü

]]>
https://canyoupwn.me/tr-linux-bash-history-formati/feed/ 0
TR | Mod Evasive ile DOS/DDOS Koruması https://canyoupwn.me/tr-mod-evasive-ile-dosddos-korumasi/ https://canyoupwn.me/tr-mod-evasive-ile-dosddos-korumasi/#respond Mon, 29 Aug 2016 17:46:13 +0000 https://canyoupwn.me/?p=4085 CanYouPwnMe! - For Cyber Security Researchers CanYouPwnMe! - For Cyber Security Researchers - cypm!

DOS/DDOS kavramını daha önceki yazımızda incelemiştik. Sunucularımızı bu saldırılardan korumamız için geliştirilen mod evasive yazılımının kurulumu ve konfigürasyonunu yapmaya başlıyalım. Test sistemimiz ubuntu server üzerinde apache çalışan bir sistem. Kurulum Kurulum için alttaki komutla mod evasive kurulumunu yapıyoruz. sudo apt-get install libapache2-mod-evasive Kurulum başarıyla tamamlanıp tamamlanmadığını kontrol etmek için; sudo apachectl -M | grep evasive […]

TR | Mod Evasive ile DOS/DDOS Koruması Mustafa Kaan Demirhan

]]>
CanYouPwnMe! - For Cyber Security Researchers CanYouPwnMe! - For Cyber Security Researchers - cypm!

DOS/DDOS kavramını daha önceki yazımızda incelemiştik. Sunucularımızı bu saldırılardan korumamız için geliştirilen mod evasive yazılımının kurulumu ve konfigürasyonunu yapmaya başlıyalım. Test sistemimiz ubuntu server üzerinde apache çalışan bir sistem.

Kurulum

  • Kurulum için alttaki komutla mod evasive kurulumunu yapıyoruz.
sudo apt-get install libapache2-mod-evasive

Ekran görüntüsü_2016-08-15_15-04-54

  • Kurulum başarıyla tamamlanıp tamamlanmadığını kontrol etmek için;
sudo apachectl -M | grep evasive

komutundan evasive20_module (shared)  çıktısını alıp almadığımızı kontrol edelim.

Ekran görüntüsü_2016-08-15_15-04-54

Konfigürasyon

  • Konfigürasyon için alttaki konumdaki dosyayı açıyoruz.
sudo nano /etc/apache2/mods-enabled/evasive.conf

Ekran görüntüsü_2016-08-15_15-04-54

  • Aktifleştirmek istediğimiz parametrelerin başından #  i kaldırıp gerekli düzenlemeleri yapmalıyız.

Ekran görüntüsü_2016-08-15_15-04-54

Parametreler

  • DOSHashTableSize: Kayıt kontrol sıklığı için tutulacak hash tablosu boyutu.
  • DOSPageCount: DOSPageInterval  parametresinde belirtilen zaman aralığında kaç istek yapılacağını belirler.
  • DOSSiteCount: DOSSiteInterval  parametresinde belirtilen zaman aralığında sayfadan çekilecek resim/css dosya limitlerini belirler.
  • DOSPageInterval: DOSPageCount  için zaman değeri.
  • DOSSiteInterval: DOSSiteCount  için zaman değeri.
  • DOSBlockingPeriod: Engellenen IP nin ne kadar süre engelleneceğini belirler.
  • DOSEmailNotify: Mail olarakbilgilendirme için mail adresi girilmelidir.
  • DOSLogDir: Logların tutulacağı dizini belirtir.

 

  • Gerekli konfigürasyonu kendi sistemimize göre ayarladıktan sonra ctrl+x  komutu ile dosyadan çıkıp dosyayı kaydediyoruz.
  • Ayarların geçerli olması için alttaki komutlardan biriyle apache yi yeniden başlatıyouz.
sudo service apache2 restart
sudo /etc/init.d/apache2 restart

Ekran görüntüsü_2016-08-15_15-04-54

Test

  • Kurulumumuzu test etmek için mod-evasive içerisinde gelen perl scripti çalıştırarak kurulumumuzu kontrol edebiliriz.
sudo perl /usr/share/doc/libapache2-mod-evasive/examples/test.pl

Ekran görüntüsü_2016-08-15_15-04-54

SS de görüldüğü üzere 403 dönüyor yani kurulumumuz başarıyla tamamlayıp test etmiş olduk.


TR | Mod Evasive ile DOS/DDOS Koruması Mustafa Kaan Demirhan

]]>
https://canyoupwn.me/tr-mod-evasive-ile-dosddos-korumasi/feed/ 0
TR | Linux Varnish https://canyoupwn.me/tr-linux-varnish/ https://canyoupwn.me/tr-linux-varnish/#respond Mon, 29 Aug 2016 09:16:25 +0000 https://canyoupwn.me/?p=3673 CanYouPwnMe! - For Cyber Security Researchers CanYouPwnMe! - For Cyber Security Researchers - cypm!

  Varnish Cache Nedir? Varnish bir http hızlandırıcı yazılımıdır.Peki bu http hızlandırıcı yazılımı nedir? Web application accelerator(Web uygulama hızlandırıcı) ziyaret ettiğimiz internet sayfalarına erişimi hızlandırmak amacıyla tasarlanmış sistemlerdir. Web sunucu,dinamik ve statik web sayfaları Bir internet sitesini ziyaret etmek istediğimizde o sitenin web sunucuna istekler göndermiş oluruz.Bu web sunucularında ise sitede yayınlanmak istenen sayfalar,resimler veya dökümanlar gibi metaların […]

TR | Linux Varnish Murat TORAMAN

]]>
CanYouPwnMe! - For Cyber Security Researchers CanYouPwnMe! - For Cyber Security Researchers - cypm!


varnish-1

 

Varnish Cache Nedir?

Varnish bir http hızlandırıcı yazılımıdır.Peki bu http hızlandırıcı yazılımı nedir? Web application accelerator(Web uygulama hızlandırıcı) ziyaret ettiğimiz internet sayfalarına erişimi hızlandırmak amacıyla tasarlanmış sistemlerdir.

Web sunucu,dinamik ve statik web sayfaları

Bir internet sitesini ziyaret etmek istediğimizde o sitenin web sunucuna istekler göndermiş oluruz.Bu web sunucularında ise sitede yayınlanmak istenen sayfalar,resimler veya dökümanlar gibi metaların tutulması sağlanır.Bir nevi sitelerin depoları olarak bilinebilir.Bu ziyaret etmek istediğimiz siteler dinamik ve statik olarak ayrılabilir.Statik web sitelerinin güncellenme sıklığı azdır.Yani uzun bir süre değişiklik olamadan yayın yapabilirler.Değişken bir yapı göstermezler.Dinamik web siteleri ise her bir ziyaretçiye özel olarak tasarlanabilir ve değişken bir yapı göstermektedir.Kullanıcı-üye içeren bir web sitesi ise her üyenin sayfası farklı içeriklere sahip olabilir.Örneğin Google anasayfasına erişmek isteyen her kullanıcı aynı içerik ile karşılaşabilir.Fakat birde facebook profil sayfasını ele alırsak her kullanıcının sayfası farklı olabilir.

Nasıl Çalışır?

         Varnish yazılımı ziyaret ettiğimiz statik web sitelerine istek gönderdiğimizde içerikleri web sunucusu üzerinden geri döndürmek yerine içerikleri kendi önbelleğinde var ise ordan döndürmektedir.Buda bize hız ve zaman kazancı olarak geri dönmektedir.Ayrıca web sunucusunu yormadığı için sunucunun daha sağlıklı çalışmasına neden olabilir.Statik web sitelerindeki html,css,jpg,png,pdf gibi içerikler önbelleğe alınabildiği gibi varnish dinamik web sitelerindeki bazı içerikleri de önbelleğine alabilmektedir. Varnish’in en büyük avantajlarından biri ise bu içeriklerin ne zaman dinamik olarak oluşturulup ne zaman statik olarak oluşturacağını bilmesidir.Bu olayı bildiğimiz bir olayla bağdaştırmak istersek şu örneği verebiliriz.Her gün ekmek aldığımız bakkala gitmek yerine ekmek isteğimizi kapıcıya iletiriz ve kapıcı da bize isteğimizi getirir.Böylece bakkala gitmek için harcadığımız zaman ve enerjiden kazanç elde ederiz. Varnishte de kazancımız büyük oranda hız kazancı olmaktadır.

  • Linux için kurulum aşamalarını ekran görüntüleriyle inceleyelim.

İlk olarak aşağıda vereceğimiz adresi ziyaret ederek işletim sistemimize uygun kurulum yönergelerini ve dosyalarını elde edebiliriz.

https://varnish-cache.org/releases/index.html

Ayrıca vereceğimiz varnish linkinden dokümantasyonlara,yeniliklere,versiyonlara göz atabilirsiniz.

https://varnish-cache.org
  • Bu adresteki kurulum yönergeleri ise şu kısımdadır.

varnish-2

  • Bizim inceleme yapacağımız sistemimiz Kali Linux – Debian sistem olduğu için  Installation on Debian  kısmına göz atalım.

varnish-3

  • apt-transport-https  paketini yükleyerek kuruluma başlayalım.

varnish-4

varnish - 5

  • Daha sonra kendi depo adresini ekleyelim.
curl https://repo.varnish-cache.org/GPG-key.txt | apt-key add - echo "deb https://repo.varnish-cache.org/debian/ jessie varnish-4.1"\

varnish-6

  • Daha sonra girdi kısmına
/etc/apt/sources.list.d/varnish-cache.list

yazalım

varnish-7

  • Şu şekilde bir ekran görmekteyiz devam edelim.

varnish-8

  • Herhangi bir hata durumunda /etc/apt/sources.list dosyasına kendimiz depo adresini ekleyebiliriz.Bunun için aşağıdaki adımları takip edelim.
nano /etc/apt/sources.list
  • Komutu ile kaynak depo dosyamıza yazmak için nano  metin editörü ile açalım.
deb https://repo.varnish-cache.org/debian/ jessie varnish-4.1
  • Yeni bir satıra bu kodu ekleyerek kaydedip kapatalım.
apt-get update

ile depomuzu güncelleyelim.

apt-get install varnish
  • Komutu ile varnish’i kuralım.

varnish-9

varnish-10

  • Ve aşağıdaki ekran ile kurulumu tamamlamış bulunmaktayız.

varnish-11

  • Kurulum işlemimizi tamamladık şimdi Varnish konfigürasyon ayarlarımızı yapalım.
nano /etc/default/varnish

komutu ile varnish dosyamızı düzenleyelim.

varnish-12

  • Daha sonra Alternative 2 kısmında DAEMON_OPTS = “-a:80 \  kısmını yazdığımız şekilde değiştirelim.

varnish-13

  • “-a: 80 \” kısmını değiştirdikten sonra kaydedip çıkalım.
  • Daha sonra default.vcl dosyamızı düzenleyelim.

varnish-14

backend default{ .host = “127.0.0.1”; .port = “8080”; }
  • “backend default” kısmını belirtildiği gibi düzenleyelim.Kaydedip çıkalım.

varnish-15

  • Varnish dosyalarımızın konfigürasyon ayarlarını da tamamladık.
  • Şimdide apache2 ayarlarımıza göz atalım.
nano /etc/apache2/ports.conf

komutu ile apache2 port ayarlarını düzenleyelim.

varnish-16

  • Ports.conf dosyasının içerisine şu satırları ekleyelim:
 NameVirtualHost 127.0.0.1:8080
 Listen 127.0.0.1:8080

varnish-17

  • Daha sonra
nano /etc/apache2/sites-available/default

komutu ile default dosyamızı düzenleyelim.

varnish-18

  • default içerisine <VirtualHost 127.0.0.1:8080>  ekliyoruz ve kaydedip kapatıyoruz.

varnish-19

  • Apache2 konfigrasyon ayarlarımızıda tamamladık.Şimdi apache2 ve varnish servislerimizi yenileyelim.
service apache2 restart
service varnish restart

varnish-20

  • Ayarlarımızı tamamladık şimdi ayarlarımızı kontrol etmek için test edelim.
  • Apache2 servisini :8080 portuna ayarlamıştık.Varnish yazılımını kullanarak ise :80 portundan ulaşacağız görelim.
  • İlk olarak varnish’i kullanmadan erişmeyi deneyelim.Bunun için 8080 portunu kullanıyoruz.
ab –n 6000 –c 1 http://127.0.0.1:8080/

komutu ile çıktılarımızı inceleyelim.

varnish-21

  • Şimdide Varnish üzerinden erişelim ve sonuçları görelim.

varnish-22

  • Varnish üzerinden erişimimizin sonuçlarınıda böylece görmüş olduk.

Yazımızda Varnish kurulum,konfigürasyon ayarları ve apache-Varnish test eylemleri ile Varnish yazılımını inceledik.


TR | Linux Varnish Murat TORAMAN

]]>
https://canyoupwn.me/tr-linux-varnish/feed/ 0