Microsoft hat einen Bug im Sicherheitsupdate MS03-32 für Internet Explorer festgestellt. Das Problem tritt auf, wenn Sie den Patch auf einem Windows XP-Computer installieren, auf dem Microsoft ASP.NET 1.0 installiert ist. Dieser Patch kann manuell oder durch Abrufen der neuesten kritischen Updates von der Windows Update-Website installiert werden.
Nach der Installation dieses Patches wird bei einer Anforderung an ASP.NET möglicherweise die folgende Fehlermeldung angezeigt:
Die Serveranwendung ist nicht verfügbar
Dieser Bug betrifft nur Windows XP-Computer, auf denen ASP.NET 1.0 ausgeführt wird. Computer, auf denen Microsoft Windows 2000 oder Microsoft Windows Server 2003 ausgeführt werden, sind nicht betroffen. Nicht betroffen sind außerdem Windows XP-Computer, auf denen ASP.NET 1.1 ausgeführt wird.
In der folgenden Tabelle sind die Betriebssysteme und die Versionen von Microsoft .NET Framework aufgelistet, die von diesem Fehler betroffen sind:
Tabelle minimierenTabelle vergrößern
| .NET Framework-Version | Betriebssystem | Betroffen |
|---|
| 1.0 | Windows 2000 Professional | Nein |
| 1.0 | Windows 2000 Server | Nein |
| 1.0 | Windows XP Professional | Ja |
| 1.0 | Windows Server 2003 | Nein |
| 1.1 | Windows 2000 Professional | Nein |
| 1.1 | Windows 2000 Server | Nein |
| 1.1 | Windows XP Professional | Nein |
| 1.1 | Windows Server 2003 | Nein |
Führen Sie die im Abschnitt "Batchdatei" dieses Artikels beschriebene Batchdatei aus, um dieses Problem zu umgehen. Die Batchdatei führt die folgenden Aktionen aus:
- Beenden der IIS- und ASP.NET-Statusdienste.
- Löschen des ASPNET-Kontos und Neuerstellen des Kontos mithilfe eines bekannten temporären Kennworts.
- Verwenden des Windows-Befehls runas zum Starten einer ausführbaren Datei, die ein ASPNET-Benutzerprofil erstellt. Mithilfe eines ASPNET-Benutzerprofils kann das Problem umgangen werden.
- Erneute Registrierung von ASP.NET. Durch diesen Schritt wird ein neues Zufallskennwort für das Konto erstellt, und die standardmäßigen ASP.NET-Zugriffskontrolleinstellungen für das Konto werden angewendet.
- Neustarten des Microsoft Internet Information Services (IIS)-Dienstes.
Die Batchdatei enthält das hartcodierte temporäre Kennwort "1pass@word". Sie werden bei Verwendung des Befehls
runas zur Eingabe dieses Kennworts aufgefordert, um die Batchdatei auszuführen. Wenn die Ausführung des Befehls
runas abgeschlossen ist, wird das Kennwort für das ASPNET-Konto unter Verwendung eines Zufallswerts neu erstellt.
Wichtige Hinweise
- Die Ausführung der Batchdatei schlägt eventuell fehl, wenn das hartcodierte Kennwort nicht die notwendigen Kennwortkomplexitätsanforderungen für Ihre Umgebung erfüllt. Falls dieses Problem auftritt, ändern Sie das Kennwort in einen anderen, für Ihre Umgebung geeigneten Wert.
- Wenn Sie benutzerdefinierte Zugriffskontrolleinstellungen oder Datenbankkontoberechtigungen für das ASPNET-Konto hinzugefügt haben, müssen Sie diese Einstellungen bzw. Berechtigungen nach der Ausführung dieser Batchdatei neu erstellen. Dies liegt daran, dass dem Konto bei der Neuerstellung ein neuer Sicherheitsbezeichner (SID) zugewiesen wird.
- Wenn Sie den ASP.NET-Workerprozess nicht über das ASPNET-Konto, sondern über ein benutzerdefiniertes Konto ausführen, sollten Sie diese Batchdatei nicht anwenden. Führen Sie stattdessen eine interaktive Anmeldung auf dem Computer durch, oder verwenden Sie den Befehl runas in Verbindung mit dem benutzerdefinierten Konto. Durch diesen Prozess wird ein Benutzerprofil für das benutzerdefinierte Konto erstellt.
Gehen Sie wie folgt vor, um die Batchdatei zu verwenden.
Hinweis: Sie müssen Mitglied der Gruppe "Administratoren" sein.
- Starten Sie den Editor. Vergewissern Sie sich, dass die Option Zeilenumbruch deaktiviert ist.
- Fügen Sie den Code der Batchdatei im Editor ein.
- Speichern Sie die Datei als c:\fixup.cmd.
- Klicken Sie auf Start und anschließend auf Ausführen.
- Geben Sie cmd.exe ein, und drücken Sie die [EINGABETASTE].
- Geben Sie an der Eingabeaufforderung c:\fixup.cmd ein, und drücken Sie anschließend die [EINGABETASTE].
- Geben Sie 1pass@word ein, wenn Sie zur Eingabe des Kennworts aufgefordert werden.
Ein zweites Eingabeaufforderungsfenster erscheint. - Geben Sie nach der Installation des Patches an der zweiten Eingabeaufforderung exit ein, und drücken Sie die [EINGABETASTE].
- Falls Sie für das ASPNET-Konto benutzerdefinierte Zugriffskontrolleinstellungen oder Datenbankkontoberechtigungen konfiguriert haben, müssen Sie diese Einstellungen erneut anwenden.
Batchdatei
REM Start Batch File
REM This batch file addresses issues that exist with the MS03-32
REM Security Update when you run ASP.NET 1.0 on Windows XP.
REM If you have any other configuration, do not run this file.
@echo off
if exist %SystemRoot%\microsoft.net\framework\v1.1* goto v11_installed
REM Change to the .NET Framework installation directory.
cd /d %SystemRoot%\microsoft.net\framework\v1.0.3705
echo "Stopping IIS."
iisreset /stop
echo "----------------------"
echo "Stopping the ASP.NET state service if it is running."
net stop aspnet_state
echo "----------------------"
echo "Deleting the ASPNET account."
net user ASPNET /delete
echo "----------------------"
echo "Creating a new ASPNET account with a temporary password."
net user ASPNET 1pass@word /add
echo "----------------------"
echo "Launching runas to create a profile."
echo "You see a command window being created."
echo "Type 1pass@word when you are prompted for the temporary password."
runas /profile /user:ASPNET cmd.exe
echo "----------------------"
echo "Reregistering ASP.NET and the ASPNET account."
aspnet_regiis -i
echo "A new random password has been autocreated for the ASPNET account."
echo "----------------------"
echo "Restarting IIS."
iisreset /start
echo "----------------------"
echo "The workaround has been applied."
echo "Try to access an ASP.NET page."
echo "If you have any custom access controls settings for the ASPNET account,"
echo "you must re-create them."
echo "If you were running the ASP.NET state service, you must restart it."
goto done
:v11_installed
echo "Version 1.1 appears to be installed. Do not run this file."
:done
REM End of batch file.
Microsoft hat bestätigt, dass es sich hierbei um ein Problem bei den in diesem Artikel genannten Microsoft-Produkten handelt.
Artikel-ID: 827641 - Geändert am: Mittwoch, 24. März 2004 - Version: 3.2
Die Informationen in diesem Artikel beziehen sich auf:
- Microsoft ASP.NET 1.0, wenn verwendet mit:
- Microsoft Windows XP Professional
Microsoft stellt Ihnen die in der Knowledge Base angebotenen Artikel und Informationen als Service-Leistung zur Verfügung. Microsoft übernimmt keinerlei Gewährleistung dafür, dass die angebotenen Artikel und Informationen auch in Ihrer Einsatzumgebung die erwünschten Ergebnisse erzielen. Die Entscheidung darüber, ob und in welcher Form Sie die angebotenen Artikel und Informationen nutzen, liegt daher allein bei Ihnen. Mit Ausnahme der gesetzlichen Haftung für Vorsatz ist jede Haftung von Microsoft im Zusammenhang mit Ihrer Nutzung dieser Artikel oder Informationen ausgeschlossen.