Bromita en VBS

Iniciado por Zaraki_lkenpachi, 23 Julio 2008, 17:35 PM

0 Miembros y 1 Visitante están viendo este tema.

Zaraki_lkenpachi

;D Hola pues aqui compartiendo con los Newbies como yo una bromilla muy simple haber q les parece .. Esta Hecha con VBS :-X


Option Explicit

Dim Obj_SH ' as Object
Dim Str_Nombre ' as String
Dim Str_PC ' as String
Dim Palabras(8) ' as String << Array
Dim x ' as Integer

'_________________________________________________________________________


Set Obj_SH = WScript.CreateObject("WScript.Shell")

'Si Queremos Molestar y Obligar a Que El Mismo Digite Su Nombre Podriamos Habilitar Esta Linea
'y Comentar esta >> Str_Nombre = Obj_SH.ExpandEnvironmentStrings("%UserName%")
'
'Do
' Str_Nombre = InputBox("Ingresa Tu Nombre Quieres ???","Entrada de Datos")
'Loop Until Str_Nombre <> ""


Str_Nombre = Obj_SH.ExpandEnvironmentStrings("%UserName%")
Str_PC = Obj_SH.ExpandEnvironmentStrings("%UserDomain%")

Obj_SH.Run("Notepad.exe")
Obj_SH.AppActivate("Sín Título - Bloc de Notas")

Palabras (0) = "Hola Como Estas " & Str_Nombre
Palabras (1) = ""
Palabras (2) = "Lamento Informarte"
Palabras (3) = "Que La PC : " & Str_PC
Palabras (4) = "Se Encuentra Desprotegida ... "
Palabras (5) = "SaLuDoss"
Palabras (6) = ""
Palabras (7) = "Atte : ZaraKi ..."

For x = 0 To UBound(Palabras) - 1
WScript.Sleep(1000)
Obj_SH.SendKeys( Palabras(x) & "{ENTER}")
Next



Ese Array Creo que se Puede Escribir en una Linea ?? ... me podrian dejar la forma .. Gracias
Saludos !  :rolleyes:


Novlucker

#1
Bueno, generalmente no le presto atención a las bromas... pero creo que esta no hace ningún daño   :rolleyes:

Dim Palabras(8)
En realidad son 7, no se toma en cuenta el 0  ;D

Para que el nombre de la pc sea correcto, te recomiendo utilizar %COMPUTERNAME%

Str_PC = Obj_SH.ExpandEnvironmentStrings("%computername%")

CitarFor x = 0 To UBound(Palabras) - 1
WScript.Sleep(1000)
Obj_SH.SendKeys( Palabras(x) & "{ENTER}")
Next

Con el dim Palabras(7)

For each palabra in Palabras
WScript.Sleep(1000)
Obj_SH.SendKeys( palabra & "{ENTER}")
Next


Creo que con eso el code queda mejor  ;D

Saludos
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD

"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein

Zaraki_lkenpachi

#2
Muchas Gracias por tus correcciones Maestro Obi-Wan Kenobi  xD pero antes de ello ya habia creado este Script :P El otro era estatico este ya se mueve xD pues claro que no hace ningun daño ya si uno quiere le dice que apage la pc o la reinicie pero eso no lo pongo aca ... cosa de cada quien xD  :rolleyes:


Option Explicit

Dim Obj_SH ' as Object
Dim Str_Nombre ' as String
Dim Str_PC ' as String
Dim Str_Texto ' as String
Dim Palabras(7) ' as String << Array
Dim Int_Tam ' as Integer
Dim x ' as Integer
Dim i ' as Integer

'_________________________________________________________________________

Set Obj_SH = WScript.CreateObject("WScript.Shell")
Str_Nombre = Obj_SH.ExpandEnvironmentStrings("%UserName%")
Str_PC = Obj_SH.ExpandEnvironmentStrings("%ComputerName%")

Obj_SH.Run("Notepad.exe")
Obj_SH.AppActivate("Sín Título - Bloc de Notas")

Palabras (0) = "Hola Como Estas " & Str_Nombre
Palabras (1) = ""
Palabras (2) = "Lamento Informarte"
Palabras (3) = "Que La PC : " & Str_PC
Palabras (4) = "Se Encuentra Desprotegida ... "
Palabras (5) = "SaLuDoss"
Palabras (6) = ""
Palabras (7) = "Atte : ZaraKi ..."

For x = 0 To UBound(Palabras)
   Str_Texto = Palabras(x)
   Int_Tam = Len(Palabras(x))

   For i = 1 To Int_Tam
       WScript.Sleep(100)
       Obj_SH.SendKeys( Mid(Str_Texto,i, 1))
   Next
   Obj_SH.SendKeys("{ENTER}")
Next




Novlucker

Si, ya se ve el efecto de alguien escribiendo  :P

For i = 0 To Int_Tam - 1
WScript.Sleep(100)
Obj_SH.SendKeys( Mid(Str_Texto,i + 1, 1))


El code funciona sin problemas, es decir, no hay errores, pero...

Por que no comenzar con i=1  :rolleyes:?

For i = 1 To Int_Tam
WScript.Sleep(100)
Obj_SH.SendKeys( Mid(Str_Texto,i , 1))


Sigue así, que veo ya manejas muy bien las distintas funciones y condicionales ;)

Saludos
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD

"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein

Zaraki_lkenpachi

#4
Cierto Nop ¬¬  ... ya lo modifique ... y bueno pues use el UserDomain porq me confundi ese es el nomrbe de mi dominio de Red xD .. y no el nombre de mi pc =/
ahora estoy intentando abrir puertoscon un Script .. Creo que tengo una idea espero sirva ... si sabes algo acerca de ello o como saber que tipo de privilegios tengo algo como decir

Si "Soy Administrador" Entonces
   Haces Tal Cosa ??
Fin del Si

Sabes donde saco eso en un registro o donde ?? ...  :rolleyes: que me retorne un valor cualquiera para poder saber si soy Guest o Admin


Novlucker

#5
Abrir puertos  :huh:....... nunca lo intenté, pero a que te refieres exactamente con "abrir puertos" ? :P

Lo de administrador o usuario no lo recuerdo exactamente, pero en cuanto llegue a casa lo posteo.....

Ahora volviendo un poco más atrás....

CitarEse Array Creo que se Puede Escribir en una Linea ?? ... me podrian dejar la forma .. Gracias

La única que se me ocurre es la siguiente  :P

Código (vb) [Seleccionar]
set objshell = createobject("wscript.shell")
usuario = objshell.ExpandEnvironmentStrings("%UserName%")
pc = objshell.ExpandEnvironmentStrings("%computername%")

palabras = "Hola Como Estas " & usuario & "; ;Lamento Informarte;Que La PC : " & pc & ";Se Encuentra Desprotegida ..;SaLuDoss; ;Atte : ZaraKi ..."
lineas = split(palabras,";")

for each linea in lineas
objshell.sendkeys( linea & "{ENTER}")
next


Como ves, cada una de las frases queda separada por ;, y esto lo interpretamos por medio de split  ;), de este modo, convertimos Palabras en un array  ;)

Es necesaria una segunda línea para interpretarlo, pero al menos el contenido de "Palabras" esta en una sola línea  ;D

Saludos
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD

"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein

Zaraki_lkenpachi

#6
Claro ...  ese codigo esta muy bueno como no se me ocurrio sabes explotar bien las funciones de los Strings xD :P ...  ::) muchisimas gracias pero yo me referia que al declarar un array vi que se podia hacer asi

Dim Palabras ("A","B","C")

Algo asi vi por hay ? ...

y lo de puertos es algo asi como por ejemplo quiero abrir el puerto de mi pc numero 21 del FTP o el 23 del Telnet ?  ... o abrir cualquier otro .. Creo que me entiendes :rolleyes:

Hoy probando archivos y kegens me cogi una especie de virus o no se que sea que no me deja enviar mensajes por mi msn ¬¬ asi que tuve que formatear ya me aburri de ello asi q al formatear borre unos archivos importantes mios en documentos y toy que intento recuperarlos =( ... asi q no creo que lo haga hoy lo de los puertos ya que toy ocupado restableciendo mi pc  :-\


Novlucker

CitarDim Palabras ("A","B","C")
Algo asi vi por hay ? ...

No recuerdo una forma así, quizás lo que viste era un array de varias dimensiones  :-\

Lo de abrir puertos... los puertos se abren cuando se ejecutan determinadas aplicaciones, y además, son autorizadas por el firewall en caso de haberlo..

Si lo que quieres es dejar un puerto a la escucha... necesitaras utilizar algún programa externo, ya que si bien, vbs puede interactura con el MSWinsock de win, es necesario instalar esta librería para que funcione  :-\

Citarcomo saber que tipo de privilegios tengo algo como decir

Recuerdo que había una forma de hacerlo en vbs por medio de wmi, pero no recuerdo exactamente como  :-\

Para esto, se podría probar realizar algún cambio en el sistema, que generalmente están deshabilitados para los usuarios limitados, como lo puede ser agregar una llave en el registro de windows en Local Machine...

Código (vb) [Seleccionar]
set objshell = createobject("wscript.shell")
on error resume next
objshell.regwrite "HKLM\software\microsoft\windows\currentversion\run\mivbs",wscript.scriptfullname,"REG_SZ"
'Intenamos escribir en el registro, Local Machine
if err.number = 0 then
msgbox "Usuario Administrador"
else
msgbox "Usuario Limitado"
err.clear
end if
'Si nos da error, no temos privilegios, sino, somos admin


O también se me ocurre obtener los usuarios del grupo de Administradores por medio del ms-dos  :P

Código (vb) [Seleccionar]
set objfso = createobject("scripting.filesystemobject")
set objshell = createobject("wscript.shell")
usuario = objshell.expandenvironmentstrings("%username%")
set temporal = objfso.getspecialfolder(2)
'Declaramos objectos y obtenemos algunas variables

objshell.run "cmd /c net localgroup administradores >> %temp%\usergroup.txt", vbhide
wscript.sleep 500
'Ejecutamos el comando en ms-dos y una pequeña pausa

set registro = objfso.opentextfile(temporal & "\usergroup.txt",1)
'Leemos lo que nos ha devuelto el comando

if instr(1,registro.readall,usuario,1) <> 0 then
msgbox "Usuario Administrador"
else
msgbox "Usuario Limitado"
end if
'Buscamos a nuestro usuario para ver si esta en el grupo de administradores

registro.close
objfso.deletefile temporal & "\usergroup.txt"


En definitiva... siempre hay alguna opción de salirnos con la nuestra  ;D

CitarHoy probando archivos y kegens me cogi una especie de virus o no se que sea que no me deja enviar mensajes por mi msn ¬¬ asi que tuve que formatear ya me aburri de ello asi q al formatear borre unos archivos importantes mios en documentos y toy que intento recuperarlos =( ... asi q no creo que lo haga hoy lo de los puertos ya que toy ocupado restableciendo mi pc

Que mal  :-\, ten cuidado con esos archivos, pruebalos antes en una maquina virtual o en algún cyber  :-X

Saludos
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD

"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein

Novlucker

CitarDim Palabras ("A","B","C")
Algo asi vi por hay ? ...

Tenías razón... no recordaba la manera  :rolleyes:

Personas = array("Hola Como Estas " & Str_Nombre,"","Lamento Informarte","Que La PC : " & Str_PC,"Se Encuentra Desprotegida ... ","SaLuDoss","","Atte : ZaraKi ...")

;D
Saludos
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD

"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein

Zaraki_lkenpachi

 ::) Ves :D Yo tbm lo vi antes q lo postearas pero para no extender el post no lo puse ...  = se Agradece la Ayuda  :P