Zum Inhalt wechseln


Foto

Powershell - CMD


  • Bitte melde dich an um zu Antworten
6 Antworten in diesem Thema

#1 0815newby

0815newby

    Newbie

  • 17 Beiträge

 

Geschrieben 29. Juni 2017 - 10:59

Hallo,

 

ich versuche in einem Powershell-Skript die CMD mit Administratorrechten zu starten. Leider konnte ich bisher keine funktionierenden Lösungen finden. 

 

Aktuell rufe ich die cmd, wie folgt auf:

    $1 ="$PFAD -U USER -P PW -L $PFAD\$DB"
    $2 = [scriptblock]::Create("cmd /c '$1'")
    .$3 *> $PFAD/$DB.log
 
Der Befehl benötigt allerdings Admin-Rechte. Jemand ne Idee?
 
LG


#2 BOfH_666

BOfH_666

    Junior Member

  • 133 Beiträge

 

Geschrieben 29. Juni 2017 - 11:52

Wozu startest Du denn aus einem Befehlsinterpreter (Powershell-Konsole) einen weiteren Befehlsinterpreter (CMD-Konsole)?  Die Powershell-Konsole kann ganz wunderbar andere Tools starten ... da brauchst Du keine CMD mehr. Wenn Du die Powershell dann mit erhöhten Rechten startest, läuft auch das darin gestartete Tool mit Adminrechten.

 

Meines Wissens gibt es aber keine einfache und trotzdem sichere Methode, einem PoweshellSkript oder einer Batch-Datei die nötigen Credentials für eine Rechteerhöhung mitzugeben.


Bearbeitet von BOfH_666, 29. Juni 2017 - 11:54.

live long and prosper!

PS:> (79,108,97,102|%{[char]$_})-join''

#3 mwiederkehr

mwiederkehr

    Junior Member

  • 128 Beiträge

 

Geschrieben 29. Juni 2017 - 13:39

Eine Möglichkeit ist AutoIt (https://www.autoitsc...toit/downloads/). Dessen Scripte lassen sich mit Aut2Exe kompilieren. Damit kann der Benutzer das Passwort nicht einfach mit einem Texteditor auslesen. Wirklich sicher ist das natürlich trotzdem nicht, da man mit einem Debugger trotzdem an das Passwort kommt.

 

Hier ein Beispielscript:

start()

Func start()
    ; diese Werte anpassen
    Local $sUserName = "administrator"
    Local $sPassword = "geheim"
    Local $sDomain = @ComputerName
    Local $sProgram = "C:\programm.exe"

    Local $iPID = RunAs($sUserName, $sDomain, $sPassword, 1, $sProgram)
EndFunc


#4 daabm

daabm

    Expert Member

  • 2.106 Beiträge

 

Geschrieben 30. Juni 2017 - 19:11

Da braucht man kein AutoIt.... -Verb RunAs geht auch bei PowerShell Start-Process ganz gut :)


Greetings/Grüße, Martin

Mal ein gutes Buch über GPOs lesen? Oder ein kleines, aber feines Blog darüber?

Und wenn mir die IT mal auf die Nerven geht - coke bottle design refreshment (-:


#5 MurdocX

MurdocX

    Board Veteran

  • 547 Beiträge

 

Geschrieben 01. Juli 2017 - 10:10   Lösung

 

Hallo,

 

ich versuche in einem Powershell-Skript die CMD mit Administratorrechten zu starten. Leider konnte ich bisher keine funktionierenden Lösungen finden. 

 

Aktuell rufe ich die cmd, wie folgt auf:

    $1 ="$PFAD -U USER -P PW -L $PFAD\$DB"
    $2 = [scriptblock]::Create("cmd /c '$1'")
    .$3 *> $PFAD/$DB.log
 
Der Befehl benötigt allerdings Admin-Rechte. Jemand ne Idee?
 
LG

 

 

 

Technet | PowerShell: Running Executables

https://social.techn...xecutables.aspx

 

Dort sind alle gängigen Wege Anwendungen auszuführen aufgelistet und gut beschrieben. 


Mit freundlicher Unterstützung
Jan


#6 0815newby

0815newby

    Newbie

  • 17 Beiträge

 

Geschrieben 03. Juli 2017 - 08:04

Top, vielen Dank.



#7 BOfH_666

BOfH_666

    Junior Member

  • 133 Beiträge

 

Geschrieben 03. Juli 2017 - 08:16

hmmm .... ich hätte es ja jetzt noch interessant gefunden, zu erfahren, für welche Lösung Du Dich entschieden hast ....  ;)


live long and prosper!

PS:> (79,108,97,102|%{[char]$_})-join''