2.5 · Seviye 0 · Dijital Dünyanın Temelleri
Süreçler ve izinler
çalışan program, kullanıcı hesabı ve yönetici yetkisinin farkı
Siber Güvenlik Akademisi — M02, Bilgisayar Nasıl Çalışır · 1.901 kelime · 4 saha durumu · ≈ 9 dk okuma · 13 dk dinleme
Saha durumlarındaki kişiler ve kurumlar kurgusaldır; kaynaklar gerçektir. Bu akademi savunma odaklıdır: saldırılar mekanizma düzeyinde anlatılır, adım adım saldırı tarifi verilmez. Uygulamalar yalnız kendi cihazında, kendi hesabında ya da yalıtılmış bir laboratuvarda yapılır; başkasının sistemine izinsiz erişim suçtur. Dersler hukuki danışmanlığın yerini tutmaz.
Açılış
Eskişehir'deki bürodaki altı bilgisayardan beşinde aynı şey olmuştu. Bir çalışan, müşteriden gelen belgeleri birleştirmek için internette bulduğu ücretsiz bir PDF dönüştürücüyü indirip kurmuştu. Program işini yapıyordu, ama yanında tarayıcılara bir eklenti, başlangıca bir reklam programı ve sistemin her kullanıcısı için bir arama ayarı da getirmişti. Dış destek firmasının teknisyeni temizlik için geldiğinde bir şey fark etti: bu bilgisayarların hepsinde çalışanlar günlük işlerini yönetici hesabıyla yapıyordu. Birkaç yıl önce biri "her kurulumda parola sormasın, kolay olsun" diye öyle ayarlamıştı.
Altıncı bilgisayar stajyerindi ve geçen ay yeni kurulmuştu. Stajyer aynı programı indirmeye çalışmış, ama kurulum yönetici parolası istemişti. Parolayı bilmediği için kıdemli çalışana sormuş, o da programın ne olduğunu sorup kurmamıştı. Aynı dosya, aynı gün, aynı büroda; beş bilgisayarda bütün sisteme yayılmış, birinde kapıda durmuştu.
Fark programda değil, programı çalıştıran hesaptaydı. Bu ders o farkı açıklıyor: bir programın neye dokunabileceğini neyin belirlediğini ve günlük işi neden yönetici hesabıyla yapmamak gerektiğini.
Tek fikir
Bilgisayarda çalışan her program, onu başlatan hesabın yetkisini taşır. Yönetici hesabıyla açılan bir program, kötü niyetli olsa bile, bütün sisteme yönetici gibi dokunabilir; günlük işi standart bir hesapla yapmak, bir hatanın ya da bir saldırının ulaşabileceği yeri baştan daraltır.
Nasıl çalışır
Her erişimi bir hakemin denetlediğini ve hakemin gücünü çekirdeğin ayrıcalıklı kipinden aldığını gördük. Hakem bir kararı neye bakarak verir? Programın kendisine değil, programın kimin adına çalıştığına.
Her süreç bir kullanıcı hesabına bağlıdır. Sen oturum açtığında işletim sistemi seni tanır ve senin adına başlatılan her süreç, senin kimliğini ve senin yetkilerini taşır. Süreç bir dosyaya uzandığında hakemin sorusu şudur: bu süreci çalıştıran hesabın bu dosyaya izni var mı? Bir süreç başka bir süreç başlattığında da yeni süreç çoğu zaman aynı kimliği devralır. Bu yüzden bir e-posta ekini açan belge programı, sonra bir başka programı başlatırsa, o program da senin yetkinle çalışır.
Hesaplar aynı yetkide değildir.
Bürodaki beş bilgisayarda olan buydu: dönüştürücü programı yönetici yetkisiyle çalıştığı için, sistemin her yerine dokunabildi. Stajyerin bilgisayarında aynı kurulum, standart hesabın sınırına çarptı ve bir insanın karar vermesini bekledi.
Ama yönetici hesabı kullananlar her an yönetici gibi mi çalışır? Modern işletim sistemleri bu soruya hayır cevabı vermeye çalışır.
Bu belgenin söylediği önemli bir şey var: yönetici hesabıyla oturum açmış birinin önüne gelen onay penceresi, yalnız "evet" ya da "hayır" sorar. Parola sormaz. Bir kullanıcı her gün bu pencereyi görüp düşünmeden "evet" demeye alışırsa, pencere bir kapı olmaktan çıkar, bir alışkanlığa dönüşür. Standart hesapta ise pencere bir yönetici parolası ister ve bu, Defne Hanım'ın stajyerinin yaşadığı gibi, araya ikinci bir insanı ve bir soruyu sokar.
Sahada
Savunma
Bu dersin savunması tek bir ilkeye dayanır ve uygulaması şaşırtıcı derecede basittir: günlük işi standart bir hesapla yap.
Kişisel bilgisayarlarda bu, iki hesap demektir. Bir standart hesap, bütün günlük işler için: e-posta, tarayıcı, belgeler. Bir yönetici hesabı, yalnız program kurmak ya da sistem ayarlarını değiştirmek gerektiğinde ve güçlü, ayrı bir parolayla. Böylece bir e-posta ekinden ya da bir web sitesinden gelen kötü niyetli bir program, senin standart yetkinle sınırlı kalır ve sisteme yerleşmek için senden bir parola ister. O parola istendiğinde durup sormak, savunmanın kendisidir: bu programı ben mi kurmak istedim?
Kurumlarda bu ilke daha da önemlidir. Çalışanların yerel yönetici yetkisini kaldırmak, en etkili tekil önlemler arasında sayılır ve bunu Seviye 5'teki uç nokta korumasında ayrıntılı ele alacağız. Yönetici yetkisi gereken işler için ayrı yönetici hesapları kullanılır ve bu hesaplar e-posta okumak ya da internette gezinmek için kullanılmaz. Ortak hesaplar kaldırılır; her işlem bir kişiye bağlanabilmelidir.
Sunucularda ve uygulamalarda ilke aynıdır: her hizmet, yalnız kendi işine yetecek izinleri olan ayrı bir hesapla çalışır. Selin'in ekibinin yaptığı gibi, bir zafiyet ortaya çıktığında ilk sorulacak soru "saldırgan neye ulaşabilir" sorusudur ve bu sorunun cevabını hizmet hesabının yetkisi belirler.
Son olarak yetki yükseltme pencerelerini ciddiye almak gerekir. Bu pencereler gürültü değil, bir programın sistemin her yerine dokunmak istediğini söyleyen bir uyarıdır. Beklemediğin bir anda ya da bir web sitesini açtıktan hemen sonra çıkıyorsa, hayır de ve nedenini araştır.
Uygulama
Bu uygulamada kendi bilgisayarında çalışan süreçlerin kimin adına çalıştığına ve günlük hesabının yetkisine bakacaksın. Adımlar yalnız okuma yapar.
Günlük hesabın yönetici ise bunu bir karar olarak not et. Şimdi değiştirmek zorunda değilsin; ama aynı bilgisayarda ayrı bir standart hesap açıp günlük işini oraya taşımak bu modülde öğreneceğin, maliyeti neredeyse sıfır ama getirisi büyük önlemlerden biridir. Bunu yapacaksan önce dosyalarının yedeğini al ve yönetici hesabının parolasını unutmayacağın bir yere, defterin acil durum sayfasında belirttiğin yere kaydet.
Defter: Bilgisayarların envanter satırlarına bir sütun daha: günlük hesabın türü (standart ya da yönetici) ve yönetici yetkisi isteyen beklenmedik bir süreç gördüysen adı. Günlük hesap yöneticiyse, standart hesaba geçme kararın ve hedef tarih.
Hata köşesi
Yaygın yanlış"Yönetici hesabı kullanırsam her şeyi daha rahat yaparım, risk yok çünkü onay penceresi zaten soruyor."
Yönetici hesabında onay penceresi yalnız evet ya da hayır sorar; düşünmeden evet denmeye alışılmış bir pencere, kötü niyetli bir programın da önünü açar. Standart hesap ise bir yönetici parolası ister ve araya bir duraklama ve gerektiğinde ikinci bir insan sokar.
Yaygın yanlış"Kötü amaçlı yazılım zaten her şeye erişir, hesabın türü fark etmez."
Bir süreç, onu başlatan hesabın yetkisini taşır. Standart hesapla çalışan bir kötü amaçlı yazılım, sistem ayarlarını değiştirmek, sürücü kurmak ya da diğer kullanıcıların dosyalarına ulaşmak için ayrıca bir yetki yükseltme yolu bulmak zorundadır. Bu, saldırıyı durdurmasa bile yavaşlatır, sınırlar ve tespit için zaman kazandırır.
Yaygın yanlış"Ortak bir hesap herkes için daha pratik."
Ortak hesap, kimin ne yaptığını bilmeyi imkânsız kılar ve parolası herkesin elinde olduğu için kimseye ait olmaz. Bora'nın danışmasındaki gibi, bir hata ya da kötüye kullanım olduğunda iz sürülemez. Her kişiye kendi hesabı, her işleme bir ad.
Etik ve sınırlar
Yönetici yetkisi, bir bilgisayardaki herkesin dosyalarına ve ayarlarına dokunabilme gücüdür. Bir aile bilgisayarında ya da bir işyerinde yönetici parolasını bilmek, diğer kullanıcıların dosyalarına bakma iznin olduğu anlamına gelmez; yetki bir iş için verilir ve o işle sınırlıdır. Bir kurumda yönetici yetkisine sahipsen, bunu yalnız görevinin gerektirdiği işler için kullanırsın ve yaptığın işlemler kayıt altında olmalıdır; kendi yetkini kendine yükseltmek ya da başkasının hesabına geçmek, kurumun açık izni olmadan yapılamaz ve bilişim suçlarına ilişkin hükümler kapsamında değerlendirilebilir. Bir yakınının bilgisayarında yönetici parolasını sen tutuyorsan, Ece'nin yaptığı gibi, ona kararları açıklayarak ve onun dosyalarına bakmadan yardım edersin.
Kapanış
- Bilgisayarda çalışan her süreç onu başlatan hesabın kimliğini ve yetkisini taşır ve başlattığı süreçlere de devreder; işletim sistemi erişime bu kimliğe bakarak karar verir.
- Yönetici hesabıyla çalışan bir program sistemin her yerine dokunabilir; standart hesap bir hatanın ya da saldırının ulaşabileceği yeri baştan daraltır.
- Günlük iş standart hesapla, yönetici işi ayrı ve güçlü parolalı bir hesapla yapılır; yetki yükseltme pencereleri gürültü değil uyarıdır ve ortak hesap yerine her kişiye kendi hesabı verilir.
Üç soru
- Aynı kurulum dosyası bir bilgisayarda bütün sisteme yayılırken öbüründe neden kapıda kaldı?
- Bir kelime işlemci belgesinin bir komut satırı süreci başlatması neden şüphelidir ve başlatılan süreç hangi yetkiyle çalışır?
- Danışmadaki bilgisayarlarda ortak bir yönetici hesabı kullanmanın iki ayrı güvenlik sorunu nedir?
Yanıtlar
- Beş bilgisayarda çalışanlar yönetici hesabı kullanıyordu; kurulum yönetici yetkisiyle çalıştığı için tarayıcı eklentisi, başlangıç programı ve sistem geneli ayarlar ekleyebildi. Stajyerin bilgisayarında hesap standarttı; kurulum yönetici parolası istedi, stajyer parolayı bilmediği için durdu ve karar, programı sorgulayan ikinci bir kişiye geçti.
- Belge programlarının normal işi komut satırı başlatmak değildir; bu, belgenin içine gömülü kötü niyetli bir içeriğin çalışmış olabileceğinin işaretidir. Başlatılan süreç, belgeyi açan kullanıcının kimliğini ve yetkisini devralır; kullanıcı yönetici ise zincir sistemin geri kalanına da ulaşabilir.
- Birincisi hesap verebilirliğin kaybıdır: bütün işlemler aynı adla kaydedildiği için bir hatayı ya da kötüye kullanımı kimin yaptığı bilinemez. İkincisi aşırı yetkidir: hesap yönetici olduğu için o bilgisayarlarda açılan her kötü niyetli içerik bütün sisteme dokunabilir. Her çalışana kendi standart hesabını vermek ikisini birden çözer.
Sonraki derse köprü
Bu derste bir programın yetkisini onu çalıştıran hesabın belirlediğini gördük. Ama programın kendisi nasıl yapılıyor? Bir yazılımcının yazdığı satırlar nasıl çalışan bir sürece dönüşüyor ve o satırlardaki küçük bir hata nasıl olup da birinin sınırları aşmasına yol açabiliyor? Sıradaki ders yazılım nasıl çalışır sorusunu soruyor: kaynak kod, derleme ve yorumlama ile bir hatanın zafiyete dönüştüğü noktayı ele alıyor.
Anlamadığın bir yer mi var?
Mentor yalnız bu dersin metnine dayanarak cevap verir. Metinde geçmeyen bir şey sorarsan uydurmaz, geçmediğini söyler.