• Hallo liebe Userinnen und User,

    nach bereits längeren Planungen und Vorbereitungen sind wir nun von vBulletin auf Xenforo umgestiegen. Die Umstellung musste leider aufgrund der Serverprobleme der letzten Tage notgedrungen vorverlegt werden. Das neue Forum ist soweit voll funktionsfähig, allerdings sind noch nicht alle der gewohnten Funktionen vorhanden. Nach Möglichkeit werden wir sie in den nächsten Wochen nachrüsten. Dafür sollte es nun einige der Probleme lösen, die wir in den letzten Tagen, Wochen und Monaten hatten. Auch der Server ist nun potenter als bei unserem alten Hoster, wodurch wir nun langfristig den Tank mit Bytes vollgetankt haben.

    Anfangs mag die neue Boardsoftware etwas ungewohnt sein, aber man findet sich recht schnell ein. Wir wissen, dass ihr alle Gewohnheitstiere seid, aber gebt dem neuen Board eine Chance.
    Sollte etwas der neuen oder auch gewohnten Funktionen unklar sein, könnt ihr den "Wo issn da der Button zu"-Thread im Feedback nutzen. Bugs meldet ihr bitte im Bugtracker, es wird sicher welche geben die uns noch nicht aufgefallen sind. Ich werde das dann versuchen, halbwegs im Startbeitrag übersichtlich zu halten, was an Arbeit noch aussteht.

    Neu ist, dass die Boardsoftware deutlich besser für Mobiltelefone und diverse Endgeräte geeignet ist und nun auch im mobilen Style alle Funktionen verfügbar sind. Am Desktop findet ihr oben rechts sowohl den Umschalter zwischen hellem und dunklem Style. Am Handy ist der Hell-/Dunkelschalter am Ende der Seite. Damit sollte zukünftig jeder sein Board so konfigurieren können, wie es ihm am liebsten ist.


    Die restlichen Funktionen sollten eigentlich soweit wie gewohnt funktionieren. Einfach mal ein wenig damit spielen oder bei Unklarheiten im Thread nachfragen. Viel Spaß im ngb 2.0.

[Windows Server] Php -> bat -> exe

nietaL

NGBler

Registriert
8 Sep. 2013
Beiträge
231
Ort
Exilgullianer
  • Thread Starter Thread Starter
  • #21
und danach kann man übers weg ohne Passwort alles als Admin starten... super :D
Der IIS-Benutzer dürfte wie geschrieben kein Profil haben - damit können Dateien die beim start ins Profil geschrieben werden würden - nicht geschrieben werden.
Dies kann man aber aktivieren

Hab das mit dem Profil umgestellt - ohne Effekt.

@braegler: An runas hatte ich auch schon gedacht. Aber der verlangt doch ein Passwort, dass ich mit PHP und runas nicht mitgeben kann. Ich habe (Eingeloggt als Administrator) die cmd gestartet und runas /user:Administrator /savecred "OurAltis_start.bat" ausgeführt. Nach der Passworteingabe, startete das Programm wie erwartet. Danach habe ich es über PHP versucht und es passierte wieder nichts. Die Sanduhr drehte sich, wohl weil er auf die Passwort eingabe wartete?
Das SPeichern der credentials hat übrigens funktioniert, da bei einem zweiten manuellen Versuch kein Passwort abgefragt wurde. Aber über PHP greife ich ja als diese ominöse IIS-User zu. Und der darf sicher nicht irgendwelche vom Admin gespeicherten Daten auslesen und verwenden.

Ist es nicht möglich, diesen ganzen PHP, IIS - Mist als Administrator laufen zu lassen?
 
Zuletzt bearbeitet:

braegler

Aktiver NGBler

Registriert
14 Juli 2013
Beiträge
896
Möglich ist alles. Aber ob man wirklich möchte, dass ein Webserver mit Admin-Rechten läuft, naja.

Dann doch lieber psexec (https://docs.microsoft.com/en-us/sysinternals/downloads/psexec)
Dem kannst Du Username und Passwort als Argumente mitgeben.
Zwar nicht schön, die Anmeldedaten zum Admin-Account in ein Skript zu packen. Aber im Vergleich zu einem mit Adminrechten ausgestattetem Webserver ist das Fort Knox.
Code:
psexec -u Administrator -p DeinAdminPW  "%Prog%" "%ProgPath%\%Prog%" .............
 

drfuture

Zeitreisender
Teammitglied

Registriert
14 Juli 2013
Beiträge
8.728
Ort
in der Zukunft
doch sicher - du kannst einen user für den Application-pool angeben - aber dann kann man über jegliche Lücke in den Wer php-Anwendung ALLES am Server gemacht werden. Der Angreifer hat dann automatisch volle Rechte... dann kontrolliert er den Server und du nicht mehr - dein Passwort kann er ja einfach ändern.

ändere deine .php bitte mal auf:
exec("c:\windows\system32\cmd.exe /c c:\pfad...\OurAltis_start.bat", $output, $return_var);

ab - wobei im Pfad kein leerzeichen sein darf - also zur not ordner umbenennen oder wenn es geht die bat irgendwie unter c:\server\ legen oder ähnliches (mit leerzeichen geht auch - aber dann muss man noch mal passende Anführungszeichen setzen und die für php escapen - das ist echt kompliziert ;)

edit: Passwörter im Klartext ist das gleiche... die files im webdir können wenn du pech hast ja ausgelesen werden.
Ist blöd für z.B. sql-Passwort - dann ist die db weg - in dem Fall ist dann vielleicht der ganze Server weg. "höhere" Passwörter werden NIE irgendwo im klartext hinterlegt.
 

nietaL

NGBler

Registriert
8 Sep. 2013
Beiträge
231
Ort
Exilgullianer
  • Thread Starter Thread Starter
  • #24
Okay, das mit den Adminrechten für den Webserver war ne dumme Idee. :-D

Habe jetzt psexec ausprobiert. Solange ich die BAT direkt anklicke, funkioniert es wie immer tadellos. Aber sobal die BAT durch die PHP aufgerufen wird, öffnet sich im Taskmanager nur eine CMD aber kein Server.

@drfuture: das ausformulieren des Pfades führt leider zum gleichen Ergebnis

Mein Gott, ich wollte das eben mal schnell fertig machen. Das war vor drei Tagen....


Im übrigen durchläuft eine vorangestellte Routine ebenfalls einen Start einer exe. Ein Packprogramm. Das funktioniert tadellos. Es muss irgendwas mit dem Server zu tun haben. Die calc.exe kann ich zB per PHP aufrufen und der bleibt dann auch als Hintergrundprozess erhalten.

Auch wenn man den server per Aufgabenplanung in den Hintergrund jagd, bleibt er erhalten. Es funktioniert also alles, nur nicht das, was ich will XD
 

drfuture

Zeitreisender
Teammitglied

Registriert
14 Juli 2013
Beiträge
8.728
Ort
in der Zukunft
Der Idee war eher cmd /c - statt start. - Das entkoppelt den php vom server prozess.

noch eine Idee:
füge mal das an den Anfang der .bat:
cd /d %~d0%~p0

Sonst kannst du dir procmon von sysinternals holen und den Aufruf protokollieren.
 

braegler

Aktiver NGBler

Registriert
14 Juli 2013
Beiträge
896
Ich würde noch versuchen mit psexec zu spielen.
Kann es leider nicht selbst testen.
Code:
psexec -h -d-u Administrator -p DeinAdminPW  "%ProgPath%\%Prog%" .............
Vorhin war da ein %Prog% zuviel drin.
 

nietaL

NGBler

Registriert
8 Sep. 2013
Beiträge
231
Ort
Exilgullianer
  • Thread Starter Thread Starter
  • #27
den Fehler hatte ich schon verbessert. Habs ja auch manuell gegengeprüft. Ich habe jetzt mit procmon die 2 Sekunden dokumentioert, in denen der Server versucht zu starten und wieder abstürzt. Ich hab's dir per PM geschickt. Keine Ahnung, ob da was sensibles drin ist. Vielleicht findest du ja einen Hinweis.

Danke euch zweien für eure Geduld und Mühe.
 

drfuture

Zeitreisender
Teammitglied

Registriert
14 Juli 2013
Beiträge
8.728
Ort
in der Zukunft
gib mal dem wpd_1... Benutzer unter c:\armaserver\* Vollzugriff.

sonst liegt die .dmp datei von oben unter:

C:\Users\IWPD_1(recognite)\AppData\Local\CrashDumps\arma3server_x64.exe.4112.dmp
 

nietaL

NGBler

Registriert
8 Sep. 2013
Beiträge
231
Ort
Exilgullianer
  • Thread Starter Thread Starter
  • #29
gib mal dem wpd_1... Benutzer unter c:\armaserver\* Vollzugriff

Das war's. Oh mein Gott. Der Server bleibt im HG erhalten. So was simples??? Ich hatte der server.exe Zugriff gegeben. Dachte, das reicht! Ich danke dir und allen anderen vielmals! Jetzt kann ich beruhigt schlafen gehen. :D
 
Oben