indianapolis
Goto Top

Windows 2003 R2 Enterprise IIS 6.0 weist ein ASP Delay beim First Run einer Homepage auf

Hallo zusammen

Beim im Titel genannten Server besteht beim IIS 6.0 und application Pool ein Delay Problem, beim ersten
Aufruf einer Homepage.

Das Problem kommt daher, weil der Application Pool und Web-Dienst nach einer gewissen Zeit beendet werden.
Wird die Homepage aufgerufen, muss der Webservice, Application Pool und andere im Hintergrund laufende Processe
in den Speicher geladen werden, was die Zeitverzögerung von 6 Sekunden verursacht.

Ein Link im Web beschreibt das gleiche Problem, allerdings für Windows Server 2012 und höher.
Link zum Artikel

Von einer internen Quelle habe ich erfahren, dass dies ein bekanntes Problem unter dieser Windows und IIS Version war.
Es gabe hierzu eiine Umgehungs-Lösung. Kennt jemand womöglich eine solche Umgehungslösung? Damit die
Web-Prozesse im Speicher erhalten bleiben?

Gruss René

Content-Key: 350859

Url: https://administrator.de/contentid/350859

Printed on: April 26, 2024 at 18:04 o'clock

Member: BassFishFox
BassFishFox Oct 05, 2017 at 10:24:58 (UTC)
Goto Top
Member: wiesi200
wiesi200 Oct 05, 2017 at 13:05:27 (UTC)
Goto Top
Hallo,

das "Warum Up Script" von dem ich schon geschrieben hab?
Wo du dachtest das es Session Abhängig ist?
Member: Indianapolis
Indianapolis Oct 05, 2017 at 14:07:58 (UTC)
Goto Top
Hallo Wiesi200

Ich habe die zweite Anfrage eingestellt, weil sich die zuerst vermutete Ursache, ASP / DB-Verbindungs Problem, als falsch herausgestellt hat und es eigentlich ein IIS 6.0 / Windows Server 2003 Enterprise Problem ist.

Ja nur das dies unter dem angegebenen Link bei einem Windows Server 2008 IIS 7.5 angewendet wird.
Bei mir jedoch ist immer noch IIS 6.0 gegeben.
Bei mir tritt auch kein Delay von 30 Sekunden auf, wie dies im Artikel bei Stackoverflow erwähnt wird, sondern
nur ca. 5-6 Sekunden Verzögerung. Diese ist Browser-Session abhängig. Bedeutet, wenn ich den Browser
schliesse und wieder öffne, besteht das gleiche Problem. Auch wenn parallel ein Zweitbrowser geöffnet wird, können im Erstfenster Unterseiten normal geöffnet werden.

Da die einte Session noch besteht und die Sub-Seite auch problemlos läuft, zeitgleich im zweiten Browserfenster jedoch der gleiche Effekt auftritt, glaube ich kaum, dass ein Script auf dem Server, welches den Web Application Pool und alle anderen Dienste global auf dem Server starten soll, die Lösung sein kann, da ja die Processe bereits durch das erste Fenster am Laufen sind. Die Homepage wird nebst den eigenen Tests auch recht gut besucht. Es kann daher gut sein, dass wärend meines Tests ein weiterer User aus dem Internet auf der Homepage war.

Das Script öffnet im Grunde lediglich einen Browser im Hintergrund, mit einer Website. Das löst jedoch das Problem nicht, den es ist keine globale Ursache, sondern im Rahmen jeder neuen Session, die geöffnet wird. Ist diese mal offen, läuft alles wie geschmiert.
Ich hoffe, ich habe das jetzt plausibel genug beschrieben.

Gruss, René
Member: Indianapolis
Indianapolis Oct 07, 2017 updated at 19:06:06 (UTC)
Goto Top
Hallo zusammen

Ich habe den Tip mit dem Warmup Script ausprobiert.
Den Scheduler so konfiguriert, dass dieser alle 5 Minuten feuert.
Im Eventlog geprüft, ob das Eventlog einen Fehler enthält, um sicher zu gehen, dass dieser mit dem Script richtig funktioniert.
Dieses Script löst jedoch das Problem nicht. Es wird zwar ausgeführt ohne Fehlermeldung, generiert aber, wie mit einem normalen Browseraufruf eine gewöhnliche Session. Jeder Browser Client, der auf die Homepage zugreift, bekommt einen eigene Session zugewiesen, wie das auch sein muss. Wie schon erwähnt, kann das Phänomen sehr gut mit 2 untercshiedlichen Browsern reproduziert werden. Initialaufruf der Homepage im ersten Browser, ca. 6 Sekunden warten, danach funktionieren Unterseiten normal. Parallel im zweiten Browser Initialaufruf der Homepage, gleiches Verhalten, obwohl im ersten Browser alles wie es eigentlich sollte, funktioniert. Es muss also in erster Linie mit der Session zusammenhängen.

Eine Browserclient basierte Lösung über ein Script-Aufruf nützt da wenig, wenn das Speichermanagement des Application Pools auf globaler Ebene die Ursache ist. Es müsste wenn schon auf Registry Ebene oder gelöst werden können, bzw. eine Lösung geben, oder durch ein ehemaliges Patch von Microsoft. Ich bin mir auch nicht wirklich sicher, ob der Application Pool das Problem ist. Den auch ohne diesen tritt das Problem auf. (Kann im IIS Manager eingestellt werden.) Möglicherweise ist einfach der gesammte IIS Dienst mit allen Prozessen bei dieser Windows Version 2003 R2 Enterprise Server ein ### Produkt von Microschrott.

Kennt wirklich niemand eine Lösung für das Problem?
Member: wiesi200
wiesi200 Oct 07, 2017 at 21:07:03 (UTC)
Goto Top
Schmeis den 2003 Server raus. Du berichtest von einer stärker Frequentierten und Produktiven Seite.
Du schreibst zwar von Firewall und Virenscanner, aber das alleine hilft dir kein Stück bei Sicherheitslücken, da ja trotzdem daten an den Server übertragen werden müssen. Das ganze ist grundsätzlich mal grob Fahrlässig.

Und wenn du nur auch Linux mit Mono umsteigst. Selbst nen MSSQL Server kannst du mittlerweile darauf laufen lassen
Mitglied: 134464
134464 Oct 08, 2017 updated at 08:00:48 (UTC)
Goto Top
Zitat von @wiesi200:

Schmeis den 2003 Server raus. Du berichtest von einer stärker Frequentierten und Produktiven Seite.
Dazu kann ich auch nur dringendst raten. Den IIS6 hat man in 2 Minuten übernommen wenn man es drauf anlegt. Nur eine Frage der Zeit bis dir der also sowieso um die Ohren fliegt! Und dann hast du noch gravierendere Probleme als jetzt.
Member: Indianapolis
Indianapolis Oct 08, 2017 at 14:24:15 (UTC)
Goto Top
Das würde ich schon tun, bin jedoch mit sehr hohen Alimentszahlungen belastet. (Pro Monat 4200 CHF)
Da der Server Privat betrieben wird, muss ich mit diesem Risiko zurecht kommen. Das Ganze ist mit Vollbackup gesichert.
Ich glaube nicht, dass es sich lohnen würde, einen unbedeutenden Server zu hacken, der mit Backups innert Minuten auf den letzten Stand zurückversetzt werden kann.

Dennoch ist das Problem weiterhin vorhanden und zurzeit bringen mir derartige Ratschläge, aus Kostengründen, nicht gerade viel.
Windows 2000 Server war zwar noch älter und noch weniger sicher, doch dort funktionierte zumindest alles zuverlässig über mehr als 8 Jahre hinweg, auch mit produktiven Homepages.

Bei der Firewall sind nur die Ports offen, welche für den Betrieb notwendig sind. Ausserdem sind unterschiedliche Regeln definiert, welche kurzzeitige Mehrfachzugriffe (max 2000 Sessions) unterbindet und alles dicht macht. (Ich weis, ist keine optimale Lösung.)

Ein Online Penetration Test ergibt folgendes Resultat.

PORT STATE SERVICE VERSION
22/tcp closed ssh
23/tcp closed telnet
25/tcp open smtp?
53/tcp open domain?
80/tcp open http? Scan with Web Server Scanner
199/tcp closed smux
587/tcp closed submission
993/tcp closed imaps
995/tcp closed pop3s
1025/tcp closed NFS-or-IIS
1723/tcp closed pptp
5900/tcp closed vnc
8888/tcp closed sun-answerbook
OS fingerprint not ideal because: Didn't receive UDP response. Please try again with -sSU
No OS matches for host
Network Distance: 12 hops

Jetzt frag ich mich, wie ein Hacker Online über Port 80, welcher als einziger für einen Angriff in Frage kommt, den IIS Hacken können soll?

Über die Port 80 TCP Packete können keine lauffähigen Programme übermittelt und ausgeführt werden. Dies lassen auch lokale Verzeichnis-Berechtigungen nicht zu. Der HTML Header Response/Request der Homepage liefert wiedersprüchliche Angaben für ein Session Hijacking.
Dürfte also auch über diesen Weg schwierig werden. SQL-Server Script Injection ist nicht möglich, da kein Login. Auch die URL-Parameter liefern bei falschen Werten eine Fehlermeldung zurück.

Ich sehe keinen Grund, beunruigt zu sein. Dennoch ist es vermutlich so, dass mein eigentliches Problem offensichtlich nicht gelöst werden kann, weil diese Windows Server Version, bzw. der IIS 6.0 im Zusammenhang mit dem Application Pool einfach Bullshit ist.

Hat vielleicht jemand eine nächsthöhere günstige Windows Server 2008 Enterprise Version abzugeben, insofern dort nicht das gleiche Problem ebenfalls vorhanden ist?

Gruss, René
Member: wiesi200
wiesi200 Oct 08, 2017 updated at 14:40:25 (UTC)
Goto Top
Member: Indianapolis
Indianapolis Oct 08, 2017 at 16:24:02 (UTC)
Goto Top
Danke für den Hinweis.
Linux kommt nicht in Frage.
Ich programmiere und entwickle Software-Lösungen im Microsoft Bereich, darum will ich nicht auf eine neue Plattform wechseln.

Gruss, René
Member: wiesi200
wiesi200 Oct 08, 2017 at 16:31:18 (UTC)
Goto Top
Auch wenn es mir dabei wirklich die Haare aufstellt.
Windows 7 - Windows 10?

Aber als Entwickler, so nen Spaß wie Actionpack oder ähnlich hast du nicht.
Microsoft hat ja doch Angebote wie Günstig an Lizenzen kommt
Mitglied: 134464
134464 Oct 08, 2017 updated at 16:36:16 (UTC)
Goto Top
Jetzt frag ich mich, wie ein Hacker Online über Port 80, welcher als einziger für einen Angriff in Frage kommt, den IIS Hacken können soll?
Nun, Port 80 reicht schon aus wenn du den IIS zu einem BufferOverflow zwingst mit den Daten als Payload welche durch den BufferOverflow interpretiert werden, somit eine Backdoor auf deinem Server installiert wird welche dann von innen nach draussen mit einem CC Server kommuniziert.
Installiere dir einfach mal die MetaSploit Tools und du wirst sehen was damit so alles geht face-wink.
Wenn dein Server unbemerkt plötzlich Bitcoins schlürft oder Mitglied in einem Botnetz wird wird dir das auch nicht gefallen. Für Hacker gilt jeder Rechner der anfällig ist als potenzielles Opfer.
Und dein IIS lässt sich über Shodan in null komma nix ausfindig machen.
Und wenn der Server dann alle paar Tage übernommen wird ist das auch nicht mehr lustig, glaub's mir.
Member: wiesi200
wiesi200 Oct 08, 2017 at 16:49:27 (UTC)
Goto Top
So nebenbei, bei deiner ersten Frage hast du ja 2 Webseiten genannt.
Die Anmeldung funktioniert aber hoffentlich schon über SSL?

Das währe übrigens noch ein großes Problem, das gegen Windows 2003 sprechen würde, da hier noch alte Verschlüsselungsarten aktiv sein könnten.