Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

Cambiar password de la cuenta administrator

Estas en el tema de Cambiar password de la cuenta administrator en el foro de Visual Basic clásico en Foros del Web. Hola a todos. Necesito averiguar si existe alguna manera de cambiar la contraseña de la cuenta administradora de un pc, desde Visual Basic. Si alguien ...
  #1 (permalink)  
Antiguo 31/05/2005, 09:42
Avatar de Skalitiko  
Fecha de Ingreso: febrero-2005
Mensajes: 81
Antigüedad: 19 años, 2 meses
Puntos: 0
Cambiar password de la cuenta administrator

Hola a todos.

Necesito averiguar si existe alguna manera de cambiar la contraseña de la cuenta administradora de un pc, desde Visual Basic.

Si alguien pudiera orientarme en como lograr esto, le estaria muy agradecido.

De antemano,
Muchas Gracias
  #2 (permalink)  
Antiguo 31/05/2005, 09:48
 
Fecha de Ingreso: abril-2005
Mensajes: 3.083
Antigüedad: 19 años
Puntos: 17
¡Je! VB hace maravillas, pero un lenguaje no permite esas cosas.

Yo hice uno que lo sacaba a "fuerza bruta", llamando a la API he intentando logearme, pero es demasiado lento como para hacer algo serio.

Hay herramientas ya creadas que lo hacen mucho mejor y rápido.
  #3 (permalink)  
Antiguo 31/05/2005, 09:55
Avatar de Eternal Idol  
Fecha de Ingreso: mayo-2004
Ubicación: Lucentum
Mensajes: 6.192
Antigüedad: 20 años
Puntos: 74
Para cambiar la clave podes usar NetUserSetInfo pasando 0 al primer parametro (local), el nombre del usuario en el segundo, 1 en el tercero (level), la estructura USER_INFO_1 con la nueva clave en el cuarto (buff) y 0 o un puntero a un DWORD en el ultimo parametro.

Tambien NetUserChangePassword para hacerlo mas facil (sabiendo la clave actual).
__________________
¡Peron cumple, Evita dignifica! VIVA PERON CARAJO
  #4 (permalink)  
Antiguo 31/05/2005, 10:00
 
Fecha de Ingreso: abril-2005
Mensajes: 3.083
Antigüedad: 19 años
Puntos: 17
Cita:
Iniciado por Eternal Idol
Para cambiar la clave podes usar NetUserSetInfo pasando 0 al primer parametro (local), el nombre del usuario en el segundo, 1 en el tercero (level), la estructura USER_INFO_1 con la nueva clave en el cuarto (buff) y 0 o un puntero a un DWORD en el ultimo parametro.

Tambien NetUserChangePassword para hacerlo mas facil (sabiendo la clave actual).
Entendí que la quería cambiar sin saber la anterior.
  #5 (permalink)  
Antiguo 31/05/2005, 10:23
Avatar de Eternal Idol  
Fecha de Ingreso: mayo-2004
Ubicación: Lucentum
Mensajes: 6.192
Antigüedad: 20 años
Puntos: 74
Cita:
Iniciado por MaxExtreme
Entendí que la quería cambiar sin saber la anterior.
Sino me equivoco teniendo los privilegios adecuados se puede con la primera funcion que cite
__________________
¡Peron cumple, Evita dignifica! VIVA PERON CARAJO
  #6 (permalink)  
Antiguo 31/05/2005, 10:40
 
Fecha de Ingreso: abril-2005
Mensajes: 3.083
Antigüedad: 19 años
Puntos: 17
Cita:
Iniciado por Eternal Idol
Sino me equivoco teniendo los privilegios adecuados se puede con la primera funcion que cite
Si es de administador, supongo que tendrá que usar la de super-administrador reiniciando Windows en modo seguro... Aunque dudo que quiera usar alguien el ordenador con esa cuenta ..

O hacer una de esas virguerías para ejecutar programas con privilegios de System.
  #7 (permalink)  
Antiguo 31/05/2005, 11:15
Avatar de Eternal Idol  
Fecha de Ingreso: mayo-2004
Ubicación: Lucentum
Mensajes: 6.192
Antigüedad: 20 años
Puntos: 74
Cita:
Iniciado por MaxExtreme
Si es de administador, supongo que tendrá que usar la de super-administrador reiniciando Windows en modo seguro... Aunque dudo que quiera usar alguien el ordenador con esa cuenta ..

O hacer una de esas virguerías para ejecutar programas con privilegios de System.
Mmm habria que probarlo pero creo que con la cuenta de Administrador comun y corriente se puede hacer.
__________________
¡Peron cumple, Evita dignifica! VIVA PERON CARAJO
  #8 (permalink)  
Antiguo 31/05/2005, 12:32
Avatar de Skalitiko  
Fecha de Ingreso: febrero-2005
Mensajes: 81
Antigüedad: 19 años, 2 meses
Puntos: 0
Primero que nada gracias por responder, pero no me queda muy claro lo de la estructura USER_INFO_1, ya que todos su parametros son del tipo long.

El código que tengo es el siguiente:

Private Declare Function NetUserSetInfo Lib "netapi32.dll" (ByVal ServerName As String, ByVal Username As String, ByVal Level As Long, UserInfo As Any, ParmError As Long) As Long

Public Type USER_INFO_1
usri1_name As Long
usri1_password As Long
usri1_password_age As Long
usri1_priv As Long
usri1_home_dir As Long
usri1_comment As Long
usri1_flags As Long
usri1_script_path As Long
End Type

Public Sub CambiaElPutoNombre()
Dim Ret As Long
Dim U As USER_INFO_1
U.usri1_password = StrPtr("Mellevalapelona1")

Ret = NetUserSetInfo(0, "Administrator", 1, U, 0&)

End Sub

se supone que si todo funciona, la función NetUserSetInfo retorna 0, pero con este código no se da el caso, no se si tenmdre que declarar constantes para el manejo de esta API o NO??.
  #9 (permalink)  
Antiguo 31/05/2005, 12:59
Avatar de Eternal Idol  
Fecha de Ingreso: mayo-2004
Ubicación: Lucentum
Mensajes: 6.192
Antigüedad: 20 años
Puntos: 74
Si nos decis el valor de ret tal vez sepamos que significa.

VB no es lo mio pero los parametros que tiene que recibir la funcion son estos:
1. Puntero a cadena UNICODE (o cero como en este caso)
2. Puntero a cadena UNICODE
3. DWORD (LONG de VB segun creo recordar)
4. Puntero a la estructura (USER_INFO_1 en este caso)
5. Puntero a DWORD (o cero como en este caso)

La estructura esta definida toda como LONG porque eso es lo que ocupa un puntero en x86 (4 bytes) hay varios campos que deben tener punteros a Unicode, entre ellos el del password.

Te dejo el ejemplo en C, tal vez te sirva:
Código:
  USER_INFO_1 ui;
  ZeroMemory(&ui, sizeof(USER_INFO_1));
  ui.usri1_password = L"nuevaclave";
  NetUserSetInfo(0, L"Administrador", 1, (LPBYTE)&ui, 0);
__________________
¡Peron cumple, Evita dignifica! VIVA PERON CARAJO
  #10 (permalink)  
Antiguo 31/05/2005, 13:18
Avatar de Skalitiko  
Fecha de Ingreso: febrero-2005
Mensajes: 81
Antigüedad: 19 años, 2 meses
Puntos: 0
como tengo el codigo la función retorna 53
  #11 (permalink)  
Antiguo 31/05/2005, 14:00
Avatar de Eternal Idol  
Fecha de Ingreso: mayo-2004
Ubicación: Lucentum
Mensajes: 6.192
Antigüedad: 20 años
Puntos: 74
Esto seguramente te ayudara:

http://gethelp.devx.com/techtips/nt_.../10min0300.asp
__________________
¡Peron cumple, Evita dignifica! VIVA PERON CARAJO
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 00:06.