Arkadaşlar daha önce Oracle Padding olarak bilinen ve özel verileri decrypt eden bir sistem vardı.
Geçtiğimiz hafta Arjantin'de bir konferansta bu yöntemin hemen hemen aynısının ASP.NET tabanlı sistemlere (.NET Framework farkı gözetmeksizin) uygulanabileceği Microsoft'un ve site sahiplerinin önlem almasına fırsat vermeden katılımcılara anlatıldı.
Şu an ASP.NET tabanlı internet sitelerinin büyük bölümü tehlike altında. Bu açık, yaklaşık 3-5 gündür biliniyor. Bu nedenle website sahiplerinin henüz haberi olmamış olabilir.
Önlem almak isteyenler aşağıdaki yazıyı inceleyebilir.
http://www.microsoft.com/technet/sec...y/2416728.mspx
http://weblogs.asp.net/scottgu/archi...erability.aspx
Scott'un bloğunda önlem için ne yapılması gerektiği İngilizce olarak anlatılıyor. Benim şu an vaktim olmadığı için çeviremedim. Orada bir visual basic scripti var, bu scripti sunucunuzda çalıştırarak tehlike altındaki sitelerinizi görebilirsiniz.
Özellikle ASP.NET tabanlı alışveriş siteleri ve büyük siteler saldırganların hedefinde olacaktır.
Önlem almak isteyen ancak konuya hakim olmayan site/sunucu sahiplerine makul ücretle yardımcı olabilirim. Zira açığı kapatmak site sayısına göre bir hayli zaman alacağa benziyor.
ASP.NET Tabanlı Websitesi Olanlar Mutlaka Okusun
5
●3.378
- 21-09-2010, 09:29:36
- 23-09-2010, 23:23:15ASP.Net 1.0 <> ASP.Net 3.5 versiyonlar için
<customErrors mode="On" defaultRedirect="~/error.html" />
ASP.Net 3.5 SP1 ve ASP.Net 4.0 için
<customErrors mode="On" redirectMode="ResponseRewrite" defaultRedirect="~/error.aspx" />
C#
error.aspx Oluşturp içini doldurun....
<%@ Page Language="C#" AutoEventWireup="true" %>
<%@ Import Namespace="System.Security.Cryptography" %>
<%@ Import Namespace="System.Threading" %>
<script runat="server">
void Page_Load() {
byte[] delay = new byte[1];
RandomNumberGenerator prng = new RNGCryptoServiceProvider();
prng.GetBytes(delay);
Thread.Sleep((int)delay[0]);
IDisposable disposable = prng as IDisposable;
if (disposable != null) { disposable.Dispose(); }
}
</script>
<html>
<head runat="server">
<title>Error</title>
</head>
<body>
<div>
An error occurred while processing your request.
</div>
</body>
</html>
Zaten açık bir şekilde anlatılmış. - 23-09-2010, 23:29:22Ayriyeten bu tip saldırının sisteme yapılıp yapılmadıgını. Sunucunun Application Event Log'una bakarak anlayabilirsiniz.
"The publicly disclosed exploit would cause the web server to generate thousands (or more likely tens of thousands) of HTTP 500 and 404 error responses to requests from a malicious client"
loglarınızda çok fazla HTTP 500 ve 404 hatası alındığını göreceksiniz
Event code: 3005 Event message: An unhandled exception has occurred. Event time: 11/11/1111 11:11:11 AM Application information: Application domain: c1db5830-1-129291000036654651 Application Virtual Path: / Exception information: Exception type: CryptographicException Exception message: Padding is invalid and cannot be removedAyriyeten web.config dosyanızı şifrelemenizde önerilmiş. 10 gündür var bu açık büyük ihtimal yama çıkmıştır veya çıkmak üzeredir. - 24-09-2010, 00:19:53açığın etkilendiği uygulamalardan biri olan DNN'de güncelleme paketi yayınlandı.
http://www.trdnn.com/dotnetnuke-blog..._Onlemler.aspx
http://www.trdnn.com/dotnetnuke-blog...ayinlandi.aspx - 24-09-2010, 01:39:51DOTNET NUKE açıklık teknik yazılım hatasından kaynaklanan sorundan dolayı olmuş diye okumuştum. yani tam bu exploit yüzünden değil.
Aslında piyasada henüz böyle bir exploit de yok ama çıkacak diyorlar.
var olan exploit in çalışması için web sayfanızda iki tane hata mesajı yakalaması gerekiyor bunuda customerrors ile aşıyorsunuz tabi ilerleyen günlerde ne olur bilinmez.