[eside-ghost] PsTools
yUnwEb
yunweb en yunweb.homeunix.org
Mar Dic 20 22:40:36 CET 2005
On Tue, 13 Dec 2005 10:13:33 +0100 (CET)
<jonferna en tecnologico.deusto.es> wrote:
> Aupa ahí!
>
> A ver, estando aquí en el curro, nos ha surgido una dudilla sobre las
> PsTools. He leido por ahí que el PsKill hace algo parecido a copiarse
> en admin$ a traves de SMB y ejecutarse.
>
> En plan curiosidad curiosa, alguien que se aburra por ahí sabe cual
> es el funcionamiento interno de estas aplicaciones, y ¿como es
> posible que se puedan ejecutar aplicaciones en remoto así sin mais? A
> mi en su momento creo que ya me hablaron de ello, pero no me acuerdo
> para nada.
>
> Gracias y agur!
>
Espero no llegar muy tarde.
A ver, yo anduve enredando con esto hace un tiempo. Te comento un poco
por encima.
Estuve mirando el "código" del pstools y lo que hace básicamente es
copiar un servicio al equipo remoto por SMB y luego una vez estando
allí lo instala y lo pone en marcha. Ese servicio apaga el ordenador,
cierra una aplicación o lo que sea, según que quieras hacer.
Te lo comento en plan rápido. Las funciones vienen a ser algo así:
Conectamos por SMB y copiamos el fichero:
WNetAddConnection2(&netResource,passwd,user,false);
El netResourcel.pRemoteName tiene que ser algo del estilo de:
"\\aa.bb.cc.dd\ipc$"
Ahora copias el servicio como de un fichero normal se tratara a algún
sitio como "\\\\aa.bb.cc.dd\\admin$\\system32\\servicioquesea.exe"
WNetCancelConnection(..);
Instalamos el servicio y lo ponemos en marcha:
OpenSCManager(...);
CreateService(..., "servicioquesea", ...,
"%SystemRoot%\\System32\\servicioquesea.exe", ...);
OpenService(..., "servicioquesea", ...);
StartService(...);
CloseServiceHandle(...);
Un servicio no es un exe normal y corriente. Para saber como crearlo
mejor míralo en MSDN, que ahora mismo no me acuerdo muy bien y me da
pereza mirarlo :P
Sé que no me ha quedado muy claro. Así que pregúntame si quieres y si
lo sé te lo aclaro encantado.
Un saludo,
--
yUnwEb
Más información sobre la lista de distribución eside-ghost