El siguiente script de extensión vbs, cambia la contraseña de administrador local de todas las máquinas de un dominio:
====================================================================
On Error Resume Next
strComputer = "."
Set WshShell = WScript.CreateObject("WScript.Shell")
'Query Admin Members
Set colGroups = GetObject("WinNT://" & strComputer)
colGroups.Filter = Array("group")
For Each objGroup In colGroups
'check the administrators local group members..
If (InStr(1,objGroup.Name,"Administradores",1) >0) Then
For Each objUser in objGroup.Members
strUSER=strUSER &vbCrLf& objuser.class &"="& objUser.name
next
End If
Next
Set objUser = GetObject("WinNT://" & strComputer & "/administrador")
objUser.SetPassword "NUEVA_CONTRASEÑA"
objUser.Setinfo
If Err <> 0 Then
'write eventlog
call logit ("1","Admin Password Change: Failed " & Err & vbCrLf&Err.Description _
&vbCrLf&Err.Source &vbCrLf& strUSER)
Else
call logit ("0","Admin Password Change: Successfull")
End if
'*******************************
Function logit(strStatus,strDescription)
WshShell.LogEvent strStatus,strDescription
End Function
====================================================================
Busca la "palabra" = NUEVA_CONTRASEÑA en el codigo , aqui tendras que indicar la contraseña que te interesa poner.
En el visor de sucesos puedes comprobar que la contraseña se ha modificado, el origen es WSH.
¡¡¡OJO!!! Si distribuyes este script recuerda que tienes una contraseña sin encriptar. Estudia bien como hacerlo para que no sea fácil desencriptar el código.
Si esta información te ha sido de ayuda pincha en mis anuncios. Nos ayudamos mutuamente. Gracias
====================================================================
On Error Resume Next
strComputer = "."
Set WshShell = WScript.CreateObject("WScript.Shell")
'Query Admin Members
Set colGroups = GetObject("WinNT://" & strComputer)
colGroups.Filter = Array("group")
For Each objGroup In colGroups
'check the administrators local group members..
If (InStr(1,objGroup.Name,"Administradores",1) >0) Then
For Each objUser in objGroup.Members
strUSER=strUSER &vbCrLf& objuser.class &"="& objUser.name
next
End If
Next
Set objUser = GetObject("WinNT://" & strComputer & "/administrador")
objUser.SetPassword "NUEVA_CONTRASEÑA"
objUser.Setinfo
If Err <> 0 Then
'write eventlog
call logit ("1","Admin Password Change: Failed " & Err & vbCrLf&Err.Description _
&vbCrLf&Err.Source &vbCrLf& strUSER)
Else
call logit ("0","Admin Password Change: Successfull")
End if
'*******************************
Function logit(strStatus,strDescription)
WshShell.LogEvent strStatus,strDescription
End Function
====================================================================
Busca la "palabra" = NUEVA_CONTRASEÑA en el codigo , aqui tendras que indicar la contraseña que te interesa poner.
En el visor de sucesos puedes comprobar que la contraseña se ha modificado, el origen es WSH.
¡¡¡OJO!!! Si distribuyes este script recuerda que tienes una contraseña sin encriptar. Estudia bien como hacerlo para que no sea fácil desencriptar el código.
Si esta información te ha sido de ayuda pincha en mis anuncios. Nos ayudamos mutuamente. Gracias
Hola. he podido comprobar que el código funciona muy bien en Windows XP y Vista. No asi en windows 7 de 64 bits. hay alguna observacion al respecto?