MDB veritabanı nedir? Web sitesi üretiminde biraz deneyimi olan herhangi bir ağ yöneticisi, "IIS+ASP+ACCESS" kombinasyonunun bir web sitesi oluşturmanın en popüler yolu olduğunu bilir ve çoğu küçük ve orta ölçekli internet sitesi bu "paketi" kullanır, ancak bununla birlikte gelen güvenlik sorunları giderek daha belirgin hale gelmektedir. Saldırganlara en savunmasız durumlardan biri, MDB veritabanının yasa dışı indirilmesidir.
Davetsiz misafir mdb veritabanına giden yolu tahmin edip taradığı sürece, bir indirme aracı kullanarak yerel sabit diske kolayca indirebilir ve ardından brute force kırma araçları veya süper kırma araçlarıyla birleştirerek veritabanı dosya içeriğini kolayca görebilirsiniz ve işletmenin gizliliği ile çalışanların şifresi artık güvende değildir. MDB veritabanının güvenliğini güçlendiremez miyiz? Sadece az miktarda verimiz olsa bile, sqlserver veyakahinÖyle mi? Cevap hayır, bu makalede yazar size güvenli bir MDB veritabanı dosyası oluşturmanın benzersiz sırrını anlatacaktır.
1. Krizin nedenleri:
Genel olarak, ASP üzerine inşa edilen web sitesi programları ve forumlarının veritabanının genişletilmesi varsayılan olarak mdb olarak kullanılır ki bu çok tehlikelidir. Veritabanı dosyasının konumunu tahmin edip tarayıcının adres çubuğuna URL'sini girerek dosyayı kolayca indirebilirsiniz. Veritabanına bir şifre eklesek ve içindeki yöneticinin şifresi de MD5 tarafından şifrelense bile, yerel olarak indirdikten sonra kolayca kırılır. Sonuçta, MD5 zaten şiddetle kırılabilir. Bu nedenle, veritabanı indirildiği sürece veritabanı hiç güvenli değildir.
2. Yaygın kullanılan çözüm yöntemleri:
Şu anda, veritabanı dosyalarının yasa dışı indirilmesini önlemek için yaygın olarak kullanılan birkaç yöntem bulunmaktadır.
(1) Veritabanının adını değiştirin ve derin bir dizinin altına yerleştirin. Örneğin, veritabanı adını Sj6gf5.mdb olarak değiştirip çok katmanlı bir dizine yerleştirmek, saldırganın veritabanının yerini tahmin etmesini zorlaştırır. Elbette, bunun dezavantajı ise, ASP kod dosyası sızdırılırsa, ne kadar derin olursa olsun işe yaramaz olmasıdır.
(2) Veritabanının uzantısını ASP veya ASA olarak değiştirin ve veri sorgusunu etkilemeyen diğer isimler. Ancak bazen ASP veya ASA olarak değiştirdikten sonra hâlâ indirilebilir; örneğin, ASP olarak değiştirdikten sonra doğrudan IE'nin adres çubuğuna ağ adresi giriyoruz, ancak indirme isteği yok, ancak tarayıcıda çok sayıda bozuk karakter beliriyor. FlashGet veya Video Conveyor gibi profesyonel bir indirme aracı kullanıyorsanız, veritabanı dosyasını doğrudan indirebilirsiniz. Ancak bu yöntemin belli bir körlüğü var; sonuçta saldırgan dosyanın mutlaka MDB veritabanı dosya değiştirme uzantısı olduğunu garanti edemez; ancak yeterince enerjisi ve zamanı olan istilacılar tüm dosyaları indirip uzantıyı tahmin edecek şekilde değiştirebilirler. Bu yöntemin koruma seviyesi büyük ölçüde azalacaktır.
3. Yazarın tarafındaki kapısı:
Yazarın sınavı sırasında ASP ve ASA dosyalarının da indirileceği sorunuyla karşılaştım, bu yüzden araştırmadan sonra aşağıdaki yöntemi buldum.
Veritabanı dosyasını isimlendirirken veritabanı dosyasına "#admin.asa" adını verirseniz, IE ile indirmeyi tamamen engelleyebilirsiniz, ancak vandal veritabanının yolunu tahmin ederse FlashGet ile başarıyla indirebilir ve indirilen dosyayı "admin.mdb" olarak yeniden adlandırabilirsiniz, böylece web sitesi sırrı açığa çıkar. Bu yüzden FlashGet'in indirilmemesini sağlamak için bir yol bulmamız gerekiyor, ama onu indirilmez şekilde nasıl yapabiliriz? Muhtemelen önceki unicode güvenlik açıkları nedeniyle, web siteleri unicode kodu içeren bağlantıları işlemez. Yani hedeflerimize ulaşmak için unicode kodlamasını kullanabiliriz (örneğin, "<" yerine "%3C" kullanabiliriz). Ancak FlashGet, unicode kod içeren bağlantıları işlediğinde, "akıllıca" unicode kodlama işlemini yapar; örneğin "%29"un unicode kodlama formunu otomatik olarak (", yani FlashGet'e http://127.0.0.1/xweb/data/%29xadminsxx.mdb indirme bağlantısı gönderirsiniz, ancak FlashGet'te bunu http: // şeklinde yorumlar; 127.0.0.1/xweb/data/(xadminsxx.mdb, yukarıdaki URL'ye ve altındaki yeniden adlandırılmış yere bakın, FlashGet "%29xadminsxx.mdb"yi "(xadminsxx.mdb" olarak yorumluyor ve "OK" butonuna tıkladığımızda "(xadminsxx.mdb" adlı bir dosya arıyor. Yani, FlashGet bizi yoldan çıkarmaya teşvik ediyor ve tabii ki onu bulamıyor, bu yüzden yönlendirme başarısız oluyor.
Ancak indirme başarısız olursa, saldırgan kesinlikle harekete geçmek isteyecektirDiğersaldırı yöntemi. Bundan başka bir önleme yöntemi kullanabiliriz; FlashGet "(xadminsxx.mdb" adlı dosyayı bulmak için bir dosya hazırlayabiliriz, "(xadminsxx.mdb" adlı simüle edilmiş bir veritabanı oluştururuz, böylece izinsiz giren dosyayı indirmek istediğinde veritabanını geri indirir, ancak veritabanı faylı yanlış veya boş olur, gizlice sevinir, Aslında, nihai zafer bizimdir.
Özet:
MDB veritabanı dosyalarını koruma yönteminin bu tanıtımıyla iki güvenlik önlemini netleştirebiliriz: biri kafa karıştırıcı yöntemdir; yani hackerın almak istediklerini değiştirmek, örneğin dosya adını veya MDB dosyasının uzantısını değiştirmek; İkincisi ise alternatif yöntemdir; yani hackerın elde etmek istediklerini gizleyip yerine pratik anlamı olmayan bir şeyle değiştirir; böylece hacker başarılı bir şekilde saldırsa bile yanlış bir bilgi alır ve saldırının başarılı olduğunu düşünüp bir sonraki saldırıyı durdurur.
|
|