Broken Access Control Nedir?

ѕeleɴια

İstihbarat Tim
18 May 2018
2,042
20
Broken Access Control Nedir?

Erişim denetimi veya yetkilendirme. Broken Access Control Web uygulamalarında kimlik doğrulama ve oturum yönetimine bağlıdır. ( Credential Session) Kimlik doğrulamanın amacı kullanıcıyı doğrulamaktır. Oturum yönetimi ise aynı kullanıcı tarafından hangi HTTP istekleri yapılmış bunu tanımlar, bu durum bazen olumsuz sonuçlara sebebiyet verebiliyor. Erişim kontrolü ise kullanıcıların gerçekleştirmek istediği eyleme izin var mı yok mu buna bakar. Broken Access Control yani bozuk erişim kontrolleri yaygın olarak görülen ve çok tehlikeli olabilen kritik bir güvenlik açığıdır. Bu güvenlik açığı bir kullanıcının görmemesi gereken yerlerin ifşa edilmesini, verilerin çalınması, değiştirilmesi, imha edilmesi ve herhangi bir kullanıcı kılığına girebilmeye bunlara sebebiyet veren bir güvenlik açığıdır. Eğer bilgisayar korsanları bu erişim kontrollerini bir şekilde atlatır yani bypass ederlerse bu dediklerim yapılabilir.

FxcB.jpg


OWASP TOP 10

Bu güvenlik açığı OWASP tarafından TOP 10 yani en kritik on açık arasına kabul edilmiş bir güvenlik açığıdır.

Nasıl Bypass Edebilirler

Bilgisayar korsanları erişim kontrollerini atlatmak için veya bu açıktan direkt olarak yararlanmak için tipik yöntemler kullanırlar.
URL üzerinde yönetim sayfalarına erişmeye çalışmak (robots.txt'de buna örnektir) vb.
URL üzerinde bir kullanıcı adına sorgu yaratma çabası.
URL üzerinde istedikleri şeyi verecek sorgu yaratma.
HTML sayfası (incele) üzerinde oynamalar.
API saldırı aracı kullanmak.

Bu yöntemlere örnektir.


Basit Örnekler

>> Doğrulanmamış veri kullanan uygulamanın Sql sorgusu gösterdiğim gibidir.

psmt.setString(1, request.getParameter("acct"));
ResulSet results = psmt.executeQuery();

Bu sorguda uygulama hesap bilgilerine erişen doğrulanmamış veriler kullanıyor. Bilgisayar korsanı bu sorgudaki acct parametresi istedikleri hesap numarasını gönderecek şekilde editler ve böylelikle doğrulama bozuk gerçekleşir. Bu durumda bilgisayar korsanı herhangi bir kullanıcının hesabına erişim sağlayabilir.

>> URL'den erişim

Robots.txt, admin giriş sayfaları, admine özel sayfaların URL yoluyla ulaşılmasından bahsetmekteyim.
Örneğin www.x.com Web sitesinde www.x.com/robots.txt yazınca eğerki robots.txt'yi açıyorsa bu bir güvenlik kusuru olarak kabul edilebilir. Tabi robots.txt artık eskide kaldı yerine daha güncel durumlar bulunmakta, ama hala robots.txt üzerinden çeliği bilgiler elde edilebiliyor. Web sayfasının doğrulamadığı yani bir ziyaretçi şeklinde Web sayfasına uğrayıp bu bilgilere erişim sağlanması bir güvenlik kusuru olmaktadır.


y0AMNF8j.jpg


Bu Kusurlar Nasıl Önlenir?

Bu güvenlik açığı Broken Authentication ile aynı mantığa sahip olduğundan dolayı eski bir konumdan kesiti buraya yazağım.

>> Oturum yönetimini güncel tutmak.
>> Multi-Factor Authentication (MFA) sistemini kullanmak.
>> Zayıf şifrelere izin vermeyen sistem kullanmak.
>> Şifreleri açık metin olarak (db)
>> Eski oturumu silme sistemi session_regenerate_id(true)

Bu yöntemler bu güvenlik açığınıda engellemek için kullanılabilir.


 
Son düzenleme:
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.