
kullanici-erisim-bilgileri
Kullanıcı erişim bilgileri (Access Token) Windows işletim sistemindeki işlemlerin (process) ve iş parçacıklarının (thread) güvenlik bilgilerinin saklandığı veri yapılarıdır. Bir erişim bilgisi içinde, ilgili olduğu işlem veya iş parçacığının hangi kullanıcı hesabı ve kullanıcı grubu ile bağlantılı olduğu ve hangi ayrıcalıklara sahip olduğu bilgisi bulunur.
İşletim sistemi, bir işlem veya iş parçacığının herhangi bir nesneye erişip erişemeyeceğini ve hangi nesnede hangi tür işlemleri yapıp yapamayacağını, erişim bilgisi içindeki o işlem veya iş parçacığının hangi kullanıcı hesabıyla çalıştığı ve bu kullanıcının hangi gruplara üye olduğu bilgisine bakarak karar vermektedir. Mesela herhangi bir dosya veya registry anahtarına ulaşıp okuma veya yazma yapmaya çalıştığınızda sahip olduğunuz erişim bilgisindeki kayıtlar ile nesne üzerindeki bilgiler eşleştirilmekte ve bunun sonucunda istediğiniz yetkiyi alıp alamayacağınıza karar verilmektedir. Bunun yanında erişim bilgisi içindeki ayrıcalıklar listesi ile işletim sistemi, erişim bilgisinde belirtilen kullanıcının işlem veya iş parçacığının hangi özel sistem işlemlerini yapıp yapamacağını da belirler. Bu ayrıcalıkların içinde “Take Ownership” yani herhangi bir nesnenin sahibi olabilme yetkisi ve “Debug programs” yani herhangi bir işlemde hata ayıklama yapabilme yetkisi gibi çok önemli sistem işlemleri bulunmaktadır.
Kötü niyetli bir yazılımın da çekirdeğe ulaşabilmesi için önce bir açıklık tespit etmesi ve bunu kullanabilmesi (exploit edebilmesi) gerekmektedir.
İşletim sisteminin çekirdeğinde çalıştırılan iş parçacıklarının ve işlemlerin bilgileri “EPROCESS” ve “ETHREAD” yapılarıyla tanımlanan çekirdek nesnelerinde tutulmaktadır. Bu nesneler aynı zamanda işlem veya iş parçacığının sahip olduğu erişim bilgilerinin adres bilgisini de tutmaktadır.
Bir işlem nesnesinin 0×208′inci baytında işlemin erişim bilgisi nesnesinin adresini içeren EX_FAST_REF yapısı bulunmaktadır.
EX_FAST_REF yapısı haddizatında sadece 8 baytlık bir işaretleyicidir (pointer). Fakat bu işaretleyicinin son 4 biti bu nesneye yapılan referansların sayısını tutmak için ayrılmıştır. Bu nedenle EX_FAST_REF yapısından gerçek adresi bulmak için son 4 bit sıfırlanmalıdır.
Ayrıcalık Yükseltme
Bir kullanıcının sahip olduğu ayırcalıkların neler olduğunu erişim bilgisi nesnesinin baştan 0×40′ıncı baytında ki SEP-TOKEN-PRIVELEGES yapısında bulunmaktadır.


Aralık 10th, 2011
admin
Posted in
Tags: