elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: ¿Eres nuevo? ¿Tienes dudas acerca del funcionamiento de la comunidad? Lee las Reglas Generales


  Mostrar Mensajes
Páginas: 1 [2] 3
11  Programación / Programación Visual Basic / Re: Duda CSocketMaster, error al transferir un archivo en: 26 Junio 2009, 06:01 am
Muchas gracias BlackZeroX, supongo que con eso funcionará, mañana lo intento y comento, ahora me voy a dormir.

Lo que no entiendo es esto:
Código
  1.    Do While Not EOF(1)                 'Mientras no lleguemos al final
  2.        Get #1, , Buffer
  3.        tcpCliente.SendData Buffer      'va mandando los dato
  4.    Loop  

No entiendo como eso llega al final... no es un bucle infinito que almacena siempre el primer kb??

Otra cosa:

Código
  1. Dim Buffer As String * 1024    

En primer lugar no deberia ser de tipo byte la variable, o al menos integer?
Pero además de eso, no estas creando una variable de 1kb, estas creando una variable de texto vacía (0 * 1024 es = a 0)
12  Programación / Programación Visual Basic / Duda CSocketMaster, error al transferir un archivo en: 26 Junio 2009, 05:15 am
Hola amigos, les queria preguntar una duda, estoy haciendo un troyano y lo tenía hecho con la libreria winsock pero como quiero prescindir de esta libreria, me puse a buscar un clon de ella, y encontre CSocketMaster, todo el troyano funciona muy bien con CSocketMaster menos la de transferir un archivo, y es que con Winsock el servidor transfería todo el archivo entero, y el cliente lo iba recibiendo de a poco, de este modo:

Código
  1. Public Sub Enviar_Componente(Index As Integer)
  2. Dim tamaño As Long
  3. 'abrimos el archivo en modo binario de lectura
  4. Open App.Path & "\DIjpg.dll" For Binary Access Read As #1
  5.  
  6. tamaño = LOF(1) 'Tamaño en bytes de la imagen
  7. 'Redimensionamos el Array
  8. ReDim imagen(tamaño - 1)
  9. 'Leemos todo el archivo y lo almacenamos en el array imagen
  10. Get #1, , imagen
  11. Close
  12. 'Enviamos el array al cliente
  13. frmMain.Winsock2(Index).SendData imagen
  14. frmMain.ProgressBar1.Max = tamaño + 1
  15. frmMain.ProgressBar1.Visible = True
  16. End Sub

Después la progressBar va aumentando en el evento SendProgress.

Código
  1. Private Sub Winsock2_SendProgress(Index As Integer, ByVal bytesSent As Long, ByVal bytesRemaining As Long)
  2.  
  3. If progreso = True Then
  4.  
  5. ProgressBar1 = ProgressBar1 + bytesSent ' bytesSent son los bytes enviados
  6. End If
  7. End Sub

Y el cliente lo recibe de este modo:

Código
  1.        Dim Archivo() As Byte
  2.        'Aumentamos sizeFileRecibido con los datos que van llegando
  3.        sizeFileRecibido = sizeFileRecibido + bytesTotal
  4.        'Recibimos los datos y lo almacenamos en el array de bytes
  5.        Winsock1.GetData Archivo
  6.        'Escribimos en disco el array de bytes, es decir lo que va llegando
  7.        Put #1, , Archivo
  8.  
  9.        ' Si lo recibido es mayor o igual al tamaño entonces se terminó y cerramos
  10.        'el archivo abierto
  11.        If sizeFileRecibido >= sizeFile Then 'SizeFile contiene el tamaño en bytes del archivo que se esta recibiendo
  12.        'Cerramos el archivo
  13.        Close #1
  14.        sizeFileRecibido = 0
  15.        End If


Esto funciona perfectamente con Winsock, pero no así con CSocketMaster. En las normas dice que uno se limite a decir que lo que pasa, sin dar opiniones de cual cree uno que es el problema, pero si me lo permiten, creo que el problema pasa porque CSocketMaster intenta enviar todo el archivo de una, y el resultado es que envía solo 8kb aprox del total del archivo, el Winsock, en cambio, lo va enviando de a partes, de esto me doy cuenta porque el evento Data_Arrival es llamado una y otra vez con la Winsock.ocx, y en el CSocketMaster solo es llamado una vez, escribe 8kbs aprox. y nunca más sucede nada más.

Estoy casi seguro que ese es el problema, pero no tengo idea de como tengo que hacer para solucionarlo ¿Alguna ayuda?

Quizás puedan recomendarme alguna otra class para imitar al Winsock que no sea CSocket...
13  Seguridad Informática / Desafíos - Wargames / Re: Eres un Hacker? PRUEBALO CON ESTE TEST!!!!!! en: 26 Mayo 2009, 18:25 pm
Mmm a mi no me sale ni el nivel 1:

function check()
{
if (document.a.c.value == a)
{
document.location.href="http://www.hackertest.net/"+document.a.c.value+".htm";
}
else
{
alert ("Try again");
}

Segun entiendo la password deberia ser "a" pero no lo es ¬¬ ¿Quién me tira la data?
14  Informática / Tutoriales - Documentación / Re: Descargar música con Google, como si se tratase de un p2p en: 26 Mayo 2009, 05:25 am
Excelente!!!! GRACIAS, me sirvió muchísimo!!

 ;-) ;-) ;-) ;-) ;-)
15  Programación / PHP / Re: Aumentar el valor de un dato mysql progresivamente en el tiempo en: 30 Enero 2009, 19:27 pm
Pues si estuve pensando en esa forma para no usar el cron pero el problema es que un usuario no haria la petición exactamente cada 1 minuto, entonces tendria que hacer el calculo de cuantos recursos le corresponde actualizar en los segundos que pasaron desde la ultima actualizacion, y para ello hay que saber cuando fue su ultima actualizacion y guardarla (para asi saber cuanto hay que actualizar) no se si me explico pero es medio complicado y prefiero usar el cron :P
16  Programación / PHP / Re: Aumentar el valor de un dato mysql progresivamente en el tiempo en: 28 Enero 2009, 01:00 am
Hola amigos gracias por su ayuda, encontre como herramienta mas eficaz usar algún tipo de cronjob que actualize los recursos de todos los jugadores cada 5 minutos, no importa si en hacer este actualizado tarda mucho, ya que como es una aplicación independiente no interferirá con las acciones normales de los jugadores (construir edificios, ampliar tropas, etc) y los recursos se actualizaran cada 5 minutos sin inconvenientes.

Agradezco mucho las ideas de todos y seguiré adelante con mi proyecto  :) :)
17  Programación / PHP / Aumentar el valor de un dato mysql progresivamente en el tiempo en: 23 Enero 2009, 02:48 am
Bueno que tal gente... estoy intentando hacer un juego de navegador y me he topado con un problema muy grave

La cosa es así, cada usuario o jugador tiene 4 recursos, y una mina que produce ese recurso, por ej, para producir oro tenes un edificio que se llama mina de oro, si tenes la mina de oro en nivel 1, aumenta 40 unidades de oro por hora.

Los recursos que tiene cada jugador estan almacenados en mysql, en una columna llamada (en el caso del oro) "oro".

Este valor tiene que aumentar progresiamente a medida que pasa el tiempo segun su nivel en la mina de oro.

Entonces... no tengo ni put* idea de como hacer eso.

¿Alguna ayuda?

saludos y desde ya muchas gracias

PD: ¿Se puede hacer eso en mysql?
18  Programación / Programación Visual Basic / Re: Allar elangulo en: 8 Septiembre 2008, 04:27 am
Jaja estubo muy bien pensado como te las rebuscaste, eso es cratividad  :D
19  Programación / Programación Visual Basic / Re: Troyano multiconexión en: 8 Septiembre 2008, 04:22 am
El tema es que un winsock no puede estar conectado con mas de 1 winsock a la vez. Asique si usas winsocks tenés que hacer un function que cree un nuevo winsock cada vez que alguien se conecte. Para esto podes hacer lo siguiente:

Crear 2 winsocks, un Winsock1 que va a recibir las conexiones y las va a asignar a otro winsock, y el Winsock2 como un Array de controles.

El cuando un cliente trata de conectarse, el winsock1 la recibe, si en el array de controles del winscok2 hay alguno libre, se lo asigne, en caso contrario, crea uno nuevo en el array. Para hacer esto te dejo el siguiente código que es el que uso yo y lo encontre en un manual por la web:


Código:
Public Function NuevoSocket() As Integer

Dim numElementos As Integer 'numero de sockets
Dim i As Integer 'contador

'obtiene la cantidad de Winsocks que tenemos
numElementos = frmMain.Winsock2.UBound

'recorre el arreglo de sockets
For i = 0 To numElementos
'si algun socket ya creado esta inactivo
If frmMain.Winsock2(i).State = sckClosed Then
'utiliza este mismo para la nueva conexion
NuevoSocket = i 'retorna el indice
Exit Function 'abandona la funcion
End If
Next

'si no encuentra sockets inactivos
'crea uno nuevo y devuelve su identidad
Load frmMain.Winsock2(numElementos + 1) 'carga un nuevo socket al arreglo

'devuelve el nuevo indice
NuevoSocket = frmMain.Winsock2.UBound

End Function


Y en el Winsock1, en el sub de ConnectionRequest deberias poner lo siguiente:

Código:
Private Sub Winsock1_ConnectionRequest(ByVal requestID As Long)
Dim numSocket As Integer 'el numero del socket

'Hacemos una llamada a la function NuevoSocket
numSocket = NuevoSocket

'aceptamos la conexion con el nuevo socket
Winsock2(numSocket).Accept requestID
End Sub


El codigo que dejo aaronduran2 hace algo muy parecido, pero no se fija si alguno de los winsocks antes creados esta ahora libre, por lo que sigue acumulando winsocks.

De todos modos el codigo que yo deje tampoco es el perfecto, lo ideal seria que cada vez que una víctima se conecta se cree un nuevo winsock, y cuando se desconecta se borre.

Salu2
20  Programación / Programación Visual Basic / Re: [Ayuda] Inet (Todavía se está ejecutando la última petición) en: 11 Agosto 2008, 01:00 am
Al final lo solucione de otra manera.. porque yo lo que tengo es una aplicacion cliente-servidor, el servidor le pide al cliente la IP, el cliente se fija la ip con el OpenURL del Inet, y luego le dice al servidor la IP, lo que he hecho es que el botón para Pedir la IP quede deshabilitado hasta que el cliente (o los clientes, porque es de multiconexion) respondan sus IPs

Ya esta, no me complique más  ;D

Gracias a todos x la ayuda y saludos.
Páginas: 1 [2] 3
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines