Doplnění 1.10.: Teprve před půlnocí z 30.9. na 1.10. Microsoft zveřejnil patche na Windows Update, resp. Microsoft Update, resp. WSUS. Ruční instalace byla pěkná pruda, protože bylo nutné stáhnout hotfixy pro všechny .NET Framework instalace, které se na konkrétním serveru nacházely. Nyní je to tedy daleko jednodušší.
Microsoft včera večer vydal hotfix pro závažnou ASP.NET zranitelnost. Security Bulletin MS10-070 je zde. Článek v MSKB 2418042 pak tady. Tento dokument pak popisuje bohužel též “Known issues”, takže doporučuji před instalací pročíst (a samozřejmě zálohovat). O problému podrobně informoval Scott Guthrie, jeho článek o vydání hotfixu je zde. Jeho článek obsahuje přímé odkazy na patch soubory pro jednotlivé OS a .NET FW verze (i když je doporučeno aktualizovat přes Microsoft Update/WSUS).
Týmy zodpovědné za Sharepoint i Exchange potvrdily “nezávadnost” tohoto patche. No uvidíme.
Po provedení patche je možné odstranit všechny obezličky, které se provizorně nasazovaly (úpravy ve web.config souborech, modul Michala Valáška, nasazení URLScan nebo IIS 7.5 Request Filtering).
Jelikož je týden známá chyba pořád bez hotfixu, je pro všechny servery s libovolným ASP.NET vystaveným do Internetu velmi doporučeno aplikovat všechny dostupné obezličky, jak případný útok ztížit, zpomalit, detekovat.
Pravidelně sleduji novější informace a průběžně aktualizuji původní článek. Nově je do obrany před útokem začleněna instalace a konfigurace URLScan nebo Request Filtering feature v případě IIS 7.5.
Doplnění 29.9.2010 – včera večer vydal Microsoft mimořádný ASP.NET hotfix. Více info zde. Všechny níže uvedené postupy, jak se případnému útoku bránit, již nejsou potřeba. Pozor ale na známé problémy tohoto patche.
Doplnění 25.9.2010 – Scott Guthrie na svém blogu publikoval další informace, jak před vydáním hotfixu minimalizovat potenciální riziko. Tentokrát jde o instalaci a konfiguraci nástroje URLScan. Tato úprava probíhá na serverové úrovni (nikoliv po jednotlivých aplikacích) a je časově i technicky nenáročná. Pokud máte IIS 7.5, lze místo URLScan použít Request Filtering feature dle instrukcí uvedených ve Workarounds tohoto článku, případně dle tohoto minimalistického návodu – nainstaluj fíčuru a spusť:
appcmd set config /section:requestfiltering /+denyQueryStringSequences.[sequence='aspxerrorpath=']
Doplnění 21.9.2010 – Microsoft revidoval Security Advisory 2416728 s tím, že již mu jsou hlášeny ojedinělé aktivní útoky prostřednictvím níže popisované zranitelnosti. Před chvílí jsem byl upozorněn, že Michal Valášek napsal modul do IIS 7.x, který zjednodušuje současnou dostupnou obranu proti případnému útoku. Bližší info zde – Modul pro jednoduchý workaround bezpečnostní chyby v ASP.NET.
V noci z pátku na sobotu byl na nějaké bezpečnostní konferenci demonstrován kód, který umožňuje dekryptovat data zaslaná ze serverové ASP.NET stránky na klienta (třeba ViewState data). To je sice hloupé, ale týkalo by se to vždy pouze jednoho konkrétního uživatele. Objevená chyba však umožňuje daleko horší věc – stáhnout ze serveru libovolné soubory, k nimž má identita aplikačního poolu, v němž daný web běží, právo přístupu. A to už je blbé, hodně blbé. Útočník si tak může stáhnout třeba soubor web.config, v němž jsou často uloženy connection strings do databází včetně jmen, hesel, definice používaných webových služeb se jmény a hesly, definice IP restrikcí, definice omezení přístupů do částí webu jen pro konkrétní uživatele nebo jejich skupiny – tohle jsou informace, které rozhodně nejsou určené nikomu nepovolanému. Více...
Před půlnocí jsem dokončil převod blogovacího software z verze 1.2 na 1.4. Verzi 1.2 jsem používal od října 2007 k plné spokojenosti. K 1.3 jsem se na přelomu roku nemohl dopracovat, poté se objevila kritická bezpečnostní chyba, takže jsem se nakonec rozhodl vyčkat na příští verzi. 29. června byl BlogEngine.NET 1.4 vydán. V průběhu dvou večerů jsem provedl upgrade, převedl do nové verze všechna svá vylepšení, dodělal chybějící lokalizaci. Co nového přináši BE.NET 1.4? Více...
Vcelku pravidelně se potkávám s tím, že v případě, kdy ASP.NET aplikace využívá webovou službu, chybí ve výchozím nastavení právo Modify lokální skupiny IIS_WPG na adresář c:\windows\temp\. Pokud si dobře vzpomínám, byla to dokonce i otázka v beta zkoušce MCP 70-501 TS: Microsoft Windows Server 2003 Hosted Environments, Configuring, and Managing. Více...
Po instalaci Windows 2003 Serveru, na kterém mají běžet ASPX stránky, je dobré zkontrolovat práva na dvou adresářích. V případě, že nejsou práva nastavena správně, je zapotřebí spustit ASP.NET IIS Registration Tool. Níže uvedený postup samozřejmě předpokládá, že účet, který je použit v Application Pool, je členem lokální skupiny IIS_WPG. Více...
Tohle je už lehce obsolete, ale pořád se najdou případy, kdy není možné na Windows Server 2003 nainstalovat ASP.NET 2.0 (ať žije MPS).
1) instalace .NET beze změny IIS mapování Dotnetfx.exe /c:"install /noaspupgrade”
2) namapování webové aplikace na specifickou verzi .NET C:\WINDOWS\Microsoft.NET\Framework\vX.X.XXXX\aspnet_regiis
–s sets the script map in the path and in its child directories
–sn sets the script map in the path only
Aspnet_regiis.exe –s W3SVC/1/ROOT/Portal Více...
Výběrem vhodného blogovacího nástroje jsem strávil docela hodně času. Požadavky byly jasné - ASP.NET, freeware, lokalizovaný do češtiny, podporující databázi MS SQL Server 2005. Více...