Advertisement
kr1shn4murt1

Net_Send_Echo_Windows_7

Jan 5th, 2013
752
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #Autor: @Kr1shn4murt1
  2. #Fecha de creación: Octubre 25 de 2012
  3. #Lenguaje: Powershell
  4. #Proposito del script: Este script emula el funcinamiento del mensajero de windows XP bajo windows 7 donde #ya no funciona. Ejecuta un proceso remoto
  5. #en un listado de maquinas y haciendo uso del mensajero local, el comando msg *
  6. #También se apoya en el comando evventtriggers para disparar la tarea, el parámetro de mensaje lo obtiene #del visor de eventos del servidor donde llego
  7. #el net send luego lo replica al listado de maquinas de windows 7 o 2008 para que les llegue el mensaje.
  8.  
  9. write-host -----------------------------------------------------------------------------------------------------------------------------
  10.  
  11. $fechaHoraInicio = Get-Date #Se obtiene la fecha actual
  12. write-host Hora de inicio del Script $fechaHoraInicio #Se imprime en pantalla la fecha actual
  13.  
  14. $log = get-eventlog -log system -source "Application Popup" -newest 1 | format-list -Property ReplacementStrings | Out-String #Se obtiene del visor de eventos el ultimo mensaje net send recibido por el #equipo
  15.  
  16. write-host $fechaHoraInicio # Se imprime la hora de inicio del script
  17.  
  18. $logfiltrado = $log.substring(150) # Se eliminan los caracteres basura del evento capturado como string
  19. $logFinal = $logfiltrado -replace "}"
  20.  
  21. #Archivo donde están los PC's
  22. $listado_Computadores = get-content D:\Scripts\Net_Send_Windows_7\Ips_Windows_7.txt # Se obtiene el listado de computadores de un archivo éste archivo tiene en cada linea una ip o nombre de equipo
  23.  
  24. $ComandoAEjecutar="msg * $logFinal" # Se declara el comando para ejecutarlo mas abajo
  25. write-host Se enviara el mensaje $logFinal
  26.  
  27. foreach ($computador in $listado_Computadores) #Inicio Ciclo
  28.     {
  29.            
  30.     write-host "Se esta enviando el mensaje al equipo $computador"
  31.    
  32.     ([WmiClass]"\\$computador\ROOT\CIMV2:Win32_Process").Create($ComandoAEjecutar) # Se crea el proceso #remoto en la maquina, aqui es donde se ve la emulación no se usa net send que está desactivado si no que #se usa el mensajero local de cada equipo pero activado desde un equipo remoto.
  33.        
  34.     } # Final ciclo
  35.  
  36. $fechaHoraFinal = Get-Date
  37. write-host Hora de finalizacion del Script $fechaHoraFinal #se imprime la hora de finalizacion del script.
  38. write-host ""
  39. write-host *****************************************************************************************************************************
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement