Kali vs Root - Şifre Değiştirme

[*] Bu yazı ve 'Hacking' kategorisi altında bulunan yazılar, gösterilen yöntemler ve geri kalan her şey yalnızca eğitim için oluşturulmuştur. Yasa dışı bir faaliyette bulunanların bizimle ilgisi kesinlikle yoktur. Olası yasa dışı bir faaliyette site admini herhangi bir sorumluluk kabul etmeyecektir.

Bu yazımızda Kali ve Root kullanıcıları arasındaki farklardan ve Kali makinemizin şifresini değiştirmekten bahsedeceğiz. Hemen başlayalım.

IP Adresi, DNS Adresi ve MAC Adresi Değiştirme adresli blogumuzda da bahsettiğimiz gibi 'root' kullanıcısı tam yetkili kullanıcıdır. Bu kullanıcıya sahip olduğunuzda terminal ekranında 'root@root' tarzında bir ifade görürsünüz. 'Kali' kullanıcısı ise sıradan bir kullanıcıdır ve yetkileri sınırlıdır. Kali kullanıcısında olduğunuz zaman ise terminal ekranında 'kali@kali' tarzında bir ifade görürsünüz. Bu hiyerarşi genellikle sistem kullanıcıları arasında olur ve yetkisiz kişinin yetki gerektiren, özel dosyalara erişmesi engellenir. Bunun dışında, 'sudo' komutunu görmüştük. 'sudo' komutunun, 'superuser do' anlamına gelen ve yetki gerektiren birçok komutu çalıştırmamıza olanak sağlayan bir komut olduğunu söylemiştik; 'sudo' komutumuzu birçok komut satırının başına ekleyerek kullanıyorduk. Şimdi, nasıl root olabileceğimizi görelim.

Yukarıdaki görselde, kırmızı kutu ile işaretlediğim ilk komutumuz, root olmak için gereken bir kullanımdır ve şu şekilde yazılır: 'sudo su'. 'sudo' komutunun ne olduğunu zaten biliyoruz fakat 'su' ne demek? 'su', İngilizce'deki 'switch user' yani 'kullanıcı değiştir' anlamına gelir. Bu komutu girdiğimizde bizden makinemizin parolasını isteyecektir. Parolayı girmeden önce 'setxkbmap tr' komutunu girip klavye ayarlarını Türkçe'ye çevirmeyi unutmayalım çünkü kullanıcı adımız 'kali' ve parolamız 'kali' şeklindeydi. Bu yüzden 'i' harfine bastığınız zaman kesme işareti çıkacaktır ve yanlış olarak sayılacaktır.

Komutumuzu girdikten sonra hemen yeni bir komut satırı açılacaktır ve bu sefer 'kali@kali' veya 'cyberworm@kali' değil, 'root@root' şeklinde bir ifade bizi karşılayacaktır. Artık root yani kök kullanıcıyız; artık komutların başına 'sudo' koymanız gerek yoktur.

Hemen eski komutlarımız ile 'Desktop' yani 'Masaüstü' klasörümüze gidip neler olduğuna bakalım. 'Desktop' klasörüne eriştikten sonra oraya 'mkdir' komutu ile 'deneme' adında bir klasör oluşturalım ve gördüğünüz gibi masaüstümüzde sağ alt köşesinde kilit ikonu bulunan bir klasörümüz oluşmuş oldu. Bu kilit ikonunun ne olduğunu birazdan anlayacaksınız.

Bunu yaptıktan sonra 'cd' komutu ile oluşturduğumuz klasörün içerisine girelim: 'cd deneme'. Gördüğünüz gibi 'ls' çalıştırdığımızda içerisinde hiçbir şey olmadığını görüyoruz. Hemen içini dolduralım; mor kutucuk içerisine bakalım. Önce 'touch' komutu ile 'test.txt' adında bir dosya oluşturalım. Daha sonra oluşturduğumuz bu '.txt' dosyasının içine 'echo' komutu ile 'Cyber Worm' yazdıralım: 'echo > test.txt "Cyber Worm"' Bunu yaptıktan sonra da 'cat' komutu ile 'test.txt' dosyamızın içerisinde ne yazdığına bakalım: 'cat test.txt'. 

Buraya kadar olan kısım, bir önceki blog yazılarımızdan hâkim olmanız gereken kısımlardı. Şimdi, root kullanıcısı ile bir klasör ve o klasörün içerisine bir adet dosya oluşturduk. Daha sonra dosyanın içerisine 'Cyber Worm' şeklinde bir ifade yazdık. Dilerseniz şimdi, root kullanıcısından kali kullanıcısına dönelim:

Kırmızı kutu ile işaretlediğim kısımda gördüğünüz gibi root kullanıcısından kali kullanıcısına geri dönebilmek için 'exit' komutunu giriyoruz. Böylece hemen 'kali@kali' kullanıcısı bizi karşılıyor. Daha sonra kök dizinde olduğumuz için tekrar 'Desktop' klasörüne adım adım gidiyoruz. 'cd' ile 'deneme' klasörümüzün içine giriyoruz ve gerçekten de 'test.txt' klasörümüz orada duruyor. Bu dosyanın içeriğini okuyabiliriz ama herhangi bir değişiklik yapamayız. 'Hani hiyerarşi? Okuyabiliyorsak ne anlamı kaldı?' diyebilirsiniz. Bu konuda çeşitli izin atamaları yapabiliyoruz ve bu, şu an ele alacağımız bir konu değil. Şu an sadece aralarındaki farkı öğreniyoruz.

En aşağıda, mor kutu ile gösterdiğim kısma bakın. 'echo' komutu ile, bir dosyanın içerisine dilediğimizi yazdırabiliyorduk ama burada hata aldık. Hata; 'permission denied' şeklinde geldi ve anlamı, 'izin reddedildi' şeklindedir. Buradan anlayacağımız şey, root kullanıcısının oluşturduğu herhangi bir klasör, herhangi bir dosya silinemez, değiştirilemezdir.

Şimdi, yukarıdaki gibi 'sudo su' komutu ile tekrar root olalım ve bu şekilde dosya ile oynamaya çalışalım. Yeşil kutuya baktığımızda, root iken 'echo' komutunu kullanıp dosyanın içerisine yazdırabildiğimizi görebiliyoruz. Dosyayı 'cat' ile okuduğumuzda gerçekten 'Cyber Worm' yazısı, 'Cyber Worm İkinci Yazı' olarak değiştirilmiş. Şimdi, tekrar 'exit' komutunu çalıştırıp 'kali@kali' kullanıcısına dönelim.

Yukarıdaki görselde, kali kullanıcısında olduğumuzu görüyoruz. Kali kullanıcısındayken 'deneme2' adında yeni bir klasör, o klasörün içine de 'test2.txt' adında bir dosya oluşturalım; bütün komutları görüyorsunuz. Şimdi, en alt tarafta kırmızı ile işaretlediğim kısma bakalım. 'echo' komutu ile 'test2.txt' dosyasına "Bu dosyaya root istediğini yapabilir." şeklinde bir yazı yazdırdık. Unutmayın, bu klasörü ve dosyayı kali kullanıcısı oluşturmuş oldu. Şimdi, 'sudo su' komutu ile tekrar root olalım.

Evet, tekrar root olduk. Az önce root kullanıcının oluşturduğu 'deneme' klasörü içerisindeki 'test.txt' klasörüne, kali kullanıcısı hiçbir şey yapamadı; sadece okuyabildi. Ayrıca dediğimiz gibi; root kullanıcı ile istersek okuma yetkisini bile elinden alabiliriz. Şimdi, tam tersini deneyelim; kali kullanıcısının oluşturduğu dosyada, root kullanıcı ile değişiklik yapmaya çalışalım. 'sudo su' komutunu verip root kullanıcı olduktan sonra kali kullanıcısının oluşturduğu 'deneme2' klasörünün içine giriyoruz. Daha sonra kırmızı kutuda da gördüğünüz gibi 'echo' komutu ile kali kullanıcısının oluşturduğu 'test2.txt' dosyanın içine "Ben root'um ve dosyana istediğimi yapabildim." yazdırdık. 'cat' ile dosyayı okuduğumuzda içeriğin değiştiğini görüyoruz; işlem başarılı. Şimdi, 'exit' diyerek kali kullanıcısına dönelim ve kali kullanıcısı içerisindeyken dosyayı tekrar 'cat' ile okuyalım (mor kutu); evet, değişmiş.

Peki, root kullanıcının oluşturduklarını kali kullanıcı silebilir mi? Elbette ki hayır. Görelim:

Şimdi, bilmediğimiz bir komut mevcut; 'rm', 'rm -r', 'rm -rf'. Burada 'rm' komutu, dosya silmemize yarar ve kullanımı şöyledir: 'rm <dosya.txt>'. 'rm -f' ise yine dosya silmek için kullanılır ama oradaki '-f' komutu "ne olursa olsun sil" anlamına gelir ve İngilizce'deki force kelimesinden gelir. 'rm -r' ise klasör silmek için kullandığımız bir komuttur. 'rm -rf' demek, "bu klasörü ne olursa olsun sil" demektir. Bu komutları, konularımız ilerledikçe 'Kali'yi Tanıyalım' ve 'Kali Linux Terminal Komutları Listesi' adlı blog yazılarımızda toplayacağız. Şimdi, konumuza geri dönelim.

Şu an kali kullanıcısı içerisindeyiz ve ilk kırmızı kutumuzda 'rm -r deneme' diyerek root kullanıcının oluşturduğu 'deneme' klasörünü silmeyi deniyoruz. Bizi uyaracaktır: "Sen Kali'sin, bu dosyayı silemezsin" gibi bir uyarı veriyor. Bu noktada 'yes' yazarak onay verebilirsiniz. Daha sonra diyor ki: "deneme klasorü içerisinde test.txt diye bir dosya var onu da mı sileceksin?". Biz buna da 'yes' diyoruz fakat onay vermemize rağmen dosyayı silmiyor ve 'permission denied' uyarısını veriyor. Peki, zorla silsek?

İkinci kırmızı kutuya baktığımızda bu sefer, zor kullandığımızı görüyoruz: 'rm -rf deneme' şeklinde bir komut veriyoruz ve buna rağmen 'permission denied' mesajını alıyoruz. Peki kali, kendi dosyalarını silebilir veya değiştirebilir mi? Elbette, hemen görelim.

'deneme2' klasörünü ve o klasörün içerisindeki 'test2.txt' klasörünü kali oluşturduğu için bunları kendisi silebilir.

Peki, bizim 'sudo' komutumuz vardı; onu kullanırsak root kullanıcının oluşturduğu klasör ve dosyaları silebilir miyiz? Bilmem, görelim:

Yukarıda, kırmızı kutuda gördüğünüz gibi kali kullanıcısı, root kullanıcının oluşturduğu dosya veya klasörleri silebiliyor. Fakat komutu girmeden önce dikkat ederseniz bizden parolamızı istiyor. Evet, şimdi gelelim siber güvenlik kısmına...

Birazdan, bir makineyi kalıcı olarak root yapmayı öğreneceğiz ama sanal makineyi neden root olarak kullanmamalısınız biliyor musunuz? Çünkü makineniz hacklenirse ve makine root konumundaysa makineyi ele geçiren hacker o makinede dilediği her şeyi yapabilir. Hatta aşağıdaki komutu yazarak makine içerisindeki bütün dosyaları silip makinenizi kullanılmaz hâle getirebilir:

Bunun yanında gerçekten dalgın olduğunuz bir zamanda yanlış bir komut girerseniz makineyi delik deşik edebilirsiniz ve yöneticileriniz size biraz kızabilir. Zaten dosyalara girdiğiniz zaman bize turuncu kutu içerisinde bir uyarı verdiğini göreceksiniz: "Uyarı: Root hesabını kullanıyorsunuz. Sisteminize zarar verebilirsiniz.".

Makineyi kali olarak kullanıyor olabilirsiniz ama parolanız eğer hâlâ 'kali' ise dikkat etmenizde yarar var çünkü Dünya'daki bütün kali makinelerinin parolası varsayılan olarak kali'dir. Bunu değiştirmemiz lazım.

Parola Değiştirme

Şimdi, parolayı değiştirmeden önce uyarımı yapmak istiyorum.

[*] Birazdan Kali bizden yeni bir parola oluşturmamızı isteyecek. Bu noktada parolanızın içinde Türkçe karakter olmamasına özen gösterin. Hatırlayın, Kali'nin açılışında 'i' harfine bastığınızda kesme işareti çıkıyordu. İşte bu gibi durumların önüne geçebilmek için parolanız kesinlikle Türkçe karakter içermemeli.

[*] Bununla birlikte Kali bizden parolamızı istediğinde siz parolayı yazarken karakterler görünmeyecektir. Görünmeyecek ama yazıyor olacaksınız. Bu yüzden ne yazdığınıza dikkat edin lütfen. Bu olaya 'shadowing (gölgeleme)' veya 'hiding (gizleme)' denir.

[*] Eğer dediklerime uymazsanız giriş yapamayabilirsiniz ve yeni bir makine kurmak zorunda kalabilirsiniz.

Parolamızı, yukarıdaki gibi değiştiriyoruz. 'sudo passwd' komutunu girdikten hemen sonra 'New Password:' kısmı açılacaktır; burada yeni parolanızı girmelisiniz. Dediklerimi unutmayın lütfen. Daha sonra 'Retype new password:' kısmı gelecektir. Bu kısım, yeni parolanızı tekrar girmenizi ister; dikkatli bir şekilde girin. Parola değiştirme işlemi başarılıysa 'passwd: password updated successfully' mesajını görürsünüz. Şimdi, Kali Linux içerisinde sağ üst köşedeki kilit ikonuna tıklayıp makineyi kilitleyin ve yeni şifreniz ile giriş yapmayı deneyin. 

Makineyi kalıcı bir şekilde root yapmak

Yukarıda, tehikelerinden bahsettim; lütfen unutmayın.

Bunu, yukarıdaki gibi yapıyoruz. İlk önce 'sudo passwd root' komutunu giriyoruz. Az önceki gibi bizden yeni parolamızı ve yeni parolamızı tekrar girmemizi isteyecek. Eğer işlem başarılı ise alacağımız mesaj şudur: 'passwd: password updated successfully'. Bunu yaptıktan sonra tekrar makineyi kilitliyoruz ve giriş yapıyoruz AMA

Bu sefer 'kali' - '<yeni şifre>' şeklinde değil, 'root' - '<yeni şifre>' şeklinde giriş yapmak zorundayız çünkü kullanıcıyı kalıcı olarak root hâline getirdik. Şimdi, kalıcı bir şekilde root olan makinemizi tekrar kali kullanıcısına çevirelim.

Bunu yaparken yine aynı komutu yazıyoruz. Tek farkı; 'root' yerine 'kali' yazmamız gerekiyor: 'sudo passwd kali'. Yeni parola kısmına eski parolanızı da yazabilirsiniz. Daha sonraki işlemler aynı şekildedir.

[*] Bu yazı ve 'Hacking' kategorisi altında bulunan yazılar, gösterilen yöntemler ve geri kalan her şey yalnızca eğitim için oluşturulmuştur. Yasa dışı bir faaliyette bulunanların bizimle ilgisi kesinlikle yoktur. Olası yasa dışı bir faaliyette site admini herhangi bir sorumluluk kabul etmeyecektir.


Yayınlanma Tarihi: 2022-07-18 21:55:04

Son Düzenleme Tarihi: 2022-08-22 21:38:49