BUG: Μήνυμα λάθους "Μη διαθέσιμη εφαρμογή διακομιστή" από το ASP.NET μετά την εγκατάσταση της ενημερωμένης έκδοσης ασφαλείας MS03-032

Συμπτώματα

Η Microsoft έχει εντοπίσει ένα σφάλμα στην πρόσφατη ενημερωμένη έκδοση ασφαλείας MS03-32 για την ενημερωμένη έκδοση κώδικα ασφαλείας του Internet Explorer κατά την εφαρμογή της ενημερωμένης έκδοσης κώδικα σε έναν υπολογιστή που εκτελεί τα Microsoft Windows XP και έχει εγκατεστημένη Microsoft ASP.NET 1.0. Αυτή η ενημερωμένη έκδοση κώδικα μπορεί να εγκατασταθεί με μη αυτόματο τρόπο ή αποκτώντας πρόσφατες κρίσιμες ενημερωμένες εκδόσεις από την τοποθεσία Windows Update στο Web.

Μετά την εγκατάσταση της ενημερωμένης έκδοσης κώδικα, λαμβάνετε το ακόλουθο μήνυμα λάθους, όταν πραγματοποιείται μια αίτηση για το ASP.NET:
Μη διαθέσιμη εφαρμογή διακομιστή
Αυτό το σφάλμα επηρεάζει μόνο τους υπολογιστές που εκτελούν την υπηρεσία ASP.NET 1.0 σε Windows XP. Δεν επηρεάζει υπολογιστές που λειτουργούν με Microsoft Windows 2000 ή Microsoft Windows Server 2003. Αυτό το σφάλμα επίσης δεν επηρεάζει τους υπολογιστές που εκτελούν τα Windows XP και έχουν εγκατεστημένο το ASP.NET 1.1.

Ο παρακάτω πίνακας παραθέτει τα λειτουργικά συστήματα και τις εκδόσεις του Microsoft .NET Framework που επηρεάζονται από αυτό το σφάλμα:
Έκδοση του .NET frameworkΛειτουργικό σύστημαΕπηρεάζονται
1.0Windows 2000 ProfessionalΌχι
1.0Windows 2000 ServerΌχι
1.0Windows XP ProfessionalΝαι
1.0Windows Server 2003Όχι
1.1Windows 2000 ProfessionalΌχι
1.1Windows 2000 ServerΌχι
1.1Windows XP ProfessionalΌχι
1.1Windows Server 2003Όχι

Εναλλακτικός τρόπος αντιμετώπισης

Για να επιλύσετε αυτό το σφάλμα, εκτελέστε το αρχείο δέσμης που περιγράφεται στην ενότητα "Αρχείο δέσμης" αυτού του άρθρου. Αυτό το αρχείο δέσμης κάνει τα εξής:
  1. Διακόπτει τις υπηρεσίες IIS και οι υπηρεσίες κατάστασης ASP.NET.
  2. Διαγράφει και, στη συνέχεια, δημιουργεί εκ νέου το λογαριασμό ASPNET χρησιμοποιώντας γνωστά προσωρινό κωδικό πρόσβασης.
  3. Χρησιμοποιεί την εντολή runas των Windows για να ξεκινήσετε ένα εκτελέσιμο αρχείο που δημιουργεί ένα προφίλ χρήστη ASPNET. Ένα προφίλ χρήστη ASPNET λειτουργεί γύρω από το θέμα.
  4. Reregisters ASP.NET. Αυτό το βήμα δημιουργεί ένα νέο τυχαίο κωδικό πρόσβασης για το λογαριασμό και εφαρμόζει προεπιλογή ASP.NET ρυθμίσεις ελέγχου πρόσβασης για το λογαριασμό.
  5. Γίνεται επανεκκίνηση της υπηρεσίας Microsoft Internet Information Services (IIS).
Το αρχείο δέσμης ενεργειών περιέχει μια μόνιμη προσωρινός κωδικός πρόσβασης του "1pass@word". Θα σας ζητηθεί να εισαγάγετε αυτόν τον κωδικό πρόσβασης για την εντολή runas , όταν εκτελείται το αρχείο δέσμης. Μετά την ολοκλήρωση της εντολής runas , τον κωδικό πρόσβασης του λογαριασμού ASPNET δημιουργείται ξανά, χρησιμοποιώντας μια τυχαία τιμή ισχυρή.

Σημαντικές σημειώσεις

  • Το αρχείο δέσμης ενεργειών μπορεί να αποτύχει, εάν ο κωδικός πρόσβασης σχεδιασμένου δεν πληροί τις απαιτήσεις πολυπλοκότητας κωδικού πρόσβασης στο περιβάλλον σας. Εάν συμβεί αυτό, μπορείτε να αλλάξετε τον κωδικό πρόσβασης με μια άλλη τιμή που είναι κατάλληλη για το περιβάλλον σας.
  • Εάν έχετε προσθέσει ρυθμίσεις ελέγχου πρόσβασης προσαρμοσμένα ή δικαιώματα λογαριασμού βάσης δεδομένων για το λογαριασμό ASPNET, πρέπει να δημιουργήσετε ξανά αυτές τις ρυθμίσεις ή τα δικαιώματα μετά την ολοκλήρωση αυτού του αρχείου δέσμης. Αυτό συμβαίνει επειδή ένα νέο αναγνωριστικό ασφαλείας (SID) αντιστοιχίζεται σε αυτόν το λογαριασμό όταν ο λογαριασμός δημιουργείται ξανά.
  • Εάν εκτελείται η διαδικασία εργασίας ASP.NET με χρήση ενός προσαρμοσμένου λογαριασμού που είναι διαφορετικός από το λογαριασμό ASPNET, μην εκτελέσετε αυτό το αρχείο δέσμης. Αντί για αυτό, πρέπει να συνδεθείτε στον υπολογιστή αλληλεπιδραστικά ή πρέπει να χρησιμοποιήσετε την εντολή runas με αυτόν το λογαριασμό προσαρμοσμένη. Αυτή η διαδικασία δημιουργεί ένα προφίλ χρήστη για το λογαριασμό προσαρμοσμένη.
Για να χρησιμοποιήσετε το αρχείο δέσμης, ακολουθήστε τα εξής βήματα.

Σημείωση Ο λογαριασμός σας πρέπει να είναι μέλος της ομάδας Administrators.
  1. Ξεκινήστε το Σημειωματάριο (Notepad). Βεβαιωθείτε ότι Το Word Wrap είναι απενεργοποιημένη.
  2. Επικολλήστε τον κώδικα του αρχείου δέσμης στο Σημειωματάριο (Notepad).
  3. Αποθηκεύστε το αρχείο ως
    c:\fixup.cmd.
  4. Κάντε κλικ στο κουμπί Έναρξηκαι στη συνέχεια κάντε κλικ στο κουμπί
    Εκτέλεση.
  5. Πληκτρολογήστε cmd.exeκαι, στη συνέχεια, πιέστε το πλήκτρο ENTER.
  6. Στη γραμμή εντολών, πληκτρολογήστε
    c:\fixup.cmdκαι, στη συνέχεια, πιέστε το πλήκτρο ENTER.
  7. Όταν σας ζητηθεί για έναν κωδικό πρόσβασης, πληκτρολογήστε
    1pass@word.

    Εμφανίζεται ένα δεύτερο παράθυρο γραμμής εντολών.
  8. Αφού εφαρμόσετε την ενημερωμένη έκδοση κώδικα, πληκτρολογήστε exitστο δεύτερο παράθυρο εντολών και κατόπιν πιέστε το πλήκτρο ENTER.
  9. Εάν έχετε ρυθμίσει προηγουμένως ρυθμίσεις ελέγχου πρόσβασης προσαρμοσμένα ή δικαιώματα λογαριασμού βάσης δεδομένων για το λογαριασμό ASPNET, πρέπει τώρα να εφαρμόσετε αυτές τις ρυθμίσεις.

Αρχείο δέσμης

REM Start Batch FileREM 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 έχει επιβεβαιώσει ότι πρόκειται για ένα σφάλμα στα προϊόντα της Microsoft που παρατίθενται στην αρχή αυτού του άρθρου.
Ιδιότητες

Αναγνωριστικό άρθρου: 827641 - Τελευταία αναθεώρηση: 17 Ιαν 2017 - Αναθεώρηση: 1

Σχόλια