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

 

 


Tema destacado: Curso de javascript por TickTack


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP) (Moderador: kub0x)
| | | |-+  Captcha con dataid
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: Captcha con dataid  (Leído 11,482 veces)
.:Weeds:.

Desconectado Desconectado

Mensajes: 122



Ver Perfil
Captcha con dataid
« en: 28 Noviembre 2010, 13:46 pm »

Bueno queria que me dierais un poco de orientacion sobre este reto captcha
La web en cuestion es http://www.mysms.es/
El get: nation=0034&number=6********&message=TEXTO+A+ENVIAR&Len=140&gcode=8223&dataid=6ux82x749vvdwu&send=Send+SMS

En el fiddler 2 me sale esto:
http://www.mysms.es/img/image.php?dataid=6ux82x749vvdwu

Esa es la url del captcha, pero no se como aplicarlo a mi programa, alguien que me explique un poco que hacer  :-\

Saludos


En línea


.::IT::.

Desconectado Desconectado

Mensajes: 167



Ver Perfil
Re: Captcha con dataid
« Respuesta #1 en: 28 Noviembre 2010, 15:14 pm »

.:Weeds:. como se que usas visual basic

Código
  1. Private Function ReadCaptcha() As Image
  2.        Try
  3.  
  4.            myCookie = New CookieContainer()
  5.  
  6.            ' Variable que contiene la Url de la funcion que devuelve el captcha
  7.            Dim UrlCaptcha As String = "http://www.mysms.es/img/image.php?dataid=6ux82x749vvdwu"
  8.  
  9.            ' Declaramos la peticion Http
  10.            Dim _HttpWebRequest As HttpWebRequest = CType(WebRequest.Create(UrlCaptcha), HttpWebRequest)
  11.  
  12.            ' Aqui asignamos el contenedor de las cookies ese mismo contenedor se
  13.            ' usara cuando se realice la peticion para consultar el numero en el
  14.            ' Procedimiento(GetInfo)
  15.            _HttpWebRequest.CookieContainer = myCookie
  16.  
  17.            ' cuando un navegador hace una peticion envia sus credenciales que lo
  18.            ' identifican(nombre de navegador,sistema operativo etc) entonces usar
  19.            ' las credenciales por defecto de Internet Explorer
  20.            _HttpWebRequest.Credentials = CredentialCache.DefaultCredentials
  21.  
  22.            ' Ahora Recuperamos la respuesta del servidor
  23.            Dim _HttpWebResponse As HttpWebResponse = CType(_HttpWebRequest.GetResponse(), HttpWebResponse)
  24.  
  25.            ' Leer los bytes enviados por el servidor
  26.            Dim _Stream As Stream = _HttpWebResponse.GetResponseStream
  27.  
  28.            ' Como savemos que los Bytes devueltos son una imagen entonces hacemos la convercion ;
  29.            ' ah veces no son imagenes si no codigo html,binarios etc entonces la siguiente linea retornara error
  30.            ' Ahora para saber que tipo de archivo tienes que leer los primeros bytes pero eso ya es otro cuento
  31.            ' como se que es una imagen entonces lo convierto y eso es todo
  32.            Return Image.FromStream(_Stream)
  33.  
  34.        Catch ex As Exception
  35.            Throw ex
  36.        End Try
  37.    End Function

Donde myCookie es una variable global de tipo CookieContainer para que puedas usarla en otra peticion(POST GET)

Nota: estoy revisando el codigo fuente del portal y encontre

<input name='dataid' type='hidden' value='p427t7t6336cm4'>

donde value es el id de la imagen entonces primero recoge el cookie container del portal junto con el id de la imagen,

Otro punto por ejemplo si id=6ux82x749vvdwu siempre el codigo captcha es "8223" solo cambia el color de fondo direccion de la imagen,  claro que podria cambiar pero es lo que ahora me eh dado cuenta.


« Última modificación: 28 Noviembre 2010, 15:32 pm por .::IT::. » En línea

Simplemente .::IT::.
.:Weeds:.

Desconectado Desconectado

Mensajes: 122



Ver Perfil
Re: Captcha con dataid
« Respuesta #2 en: 28 Noviembre 2010, 17:00 pm »

Aaaaa creo que lo empiezo a entender, entonces primero habria que leer el stream y identificar la id, despues de eso formar la imagen con esa id y hacer el get

Pero una cuestion, el fiddler 2 no me encuentras cookies, puede ser que no hagan falta en esta web?

Saludos y gracias por tus sabias respuestas .::IT::.
En línea


.::IT::.

Desconectado Desconectado

Mensajes: 167



Ver Perfil
Re: Captcha con dataid
« Respuesta #3 en: 28 Noviembre 2010, 17:14 pm »

jaja esa pagina como  que su reto captcha es muy deprimente basta con enviar el Id y el codigo captcha que se le asigno y eso seria todo no hay cookies tienes razón pero seguro en estos días se dan cuenta y lo arreglan, lo que si me gustaría saber es como hacen para enviar los mensajes gratis  :-\?????

Nota: de repente esos códigos cambian diariamente y talves para mañana o de aquí a unos días ya no sean validos, y tomando en cuenta que no hay cookies pues hombre recoge el html de la pagina con un HttpWebRequest lee el codigo pide la imagen , has tu envio POST-GET(para mi en la practican son lo mismo todo es conseptual,asi otros digan lo contrario jajaja).
« Última modificación: 28 Noviembre 2010, 17:17 pm por .::IT::. » En línea

Simplemente .::IT::.
.:Weeds:.

Desconectado Desconectado

Mensajes: 122



Ver Perfil
Re: Captcha con dataid
« Respuesta #4 en: 28 Noviembre 2010, 18:41 pm »

Mira llevo esto
Código
  1. Dim vCodigoFuente As String = ""
  2.    Dim id As String = ""
  3.    Private Sub sms_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
  4.        sacarid()
  5.        PictureBox1.Image = ReadCaptcha()
  6.    End Sub
  7. Public Function sacarid()
  8.        Try
  9.            Dim req As HttpWebRequest = CType(WebRequest.Create("http://www.mysms.es"), HttpWebRequest)
  10.            Dim res As HttpWebResponse = CType(req.GetResponse(), HttpWebResponse)
  11.            If res IsNot Nothing Then
  12.                If res.StatusCode = HttpStatusCode.OK Then
  13.                    Dim stream As Stream = res.GetResponseStream()
  14.                    Using reader As New StreamReader(stream)
  15.                        vCodigoFuente = reader.ReadToEnd()
  16.                    End Using
  17.                End If
  18.                res.Close()
  19.            End If
  20.            Dim Lines() As String = vCodigoFuente.Split(vbNewLine)
  21.            Me.id = Lines(0)
  22.            id = Mid(id, 4898, 14)
  23.        Catch
  24.            MsgBox("Error")
  25.        End Try
  26.    End Function
  27.    Private Function ReadCaptcha() As Image
  28.        Try
  29.            Dim UrlCaptcha As String = "http://www.mysms.es/img/image.php?dataid=" & id
  30.            Dim _HttpWebRequest As HttpWebRequest = CType(WebRequest.Create(UrlCaptcha), HttpWebRequest)
  31.            _HttpWebRequest.Credentials = CredentialCache.DefaultCredentials
  32.            Dim _HttpWebResponse As HttpWebResponse = CType(_HttpWebRequest.GetResponse(), HttpWebResponse)
  33.            Dim _Stream As Stream = _HttpWebResponse.GetResponseStream
  34.            Return Image.FromStream(_Stream)
  35.        Catch ex As Exception
  36.            Throw ex
  37.        End Try
  38.    End Function

La imagen se me muestra correctamente pero no consigo hacer el post, no lo consigo nisiquiera poniendo el get en el chrome(cambiando la id y las letras del captcha), por que me pasa eso?

Saludos
En línea


.::IT::.

Desconectado Desconectado

Mensajes: 167



Ver Perfil
Re: Captcha con dataid
« Respuesta #5 en: 28 Noviembre 2010, 19:12 pm »

En el codigo que pusiste arriba veo que solo recoges el id y invocas ah la imagen captcha!!!!!!!

Nota: estas seguro que la pagina puede enviar mensajes gratis??
En línea

Simplemente .::IT::.
.:Weeds:.

Desconectado Desconectado

Mensajes: 122



Ver Perfil
Re: Captcha con dataid
« Respuesta #6 en: 28 Noviembre 2010, 19:19 pm »

En el codigo que pusiste arriba veo que solo recoges el id y invocas ah la imagen captcha!!!!!!!

Nota: estas seguro que la pagina puede enviar mensajes gratis??

Si que los envia, lo he probado con mi movil

El code de el get se me a olvidao ponerlo jaajajaja, pero lo estaba haciendo asi
 
Código
  1. Dim webClient As System.Net.WebClient = New System.Net.WebClient()
  2.        Dim result As String = webClient.DownloadString("http://www.mysms.es/?nation=0034&number=" & numero.text & "&message=TEXTO&Len=135&gcode=" & captcha.Text & "&dataid=" & id & "&send=Send+SMS")
En línea


.::IT::.

Desconectado Desconectado

Mensajes: 167



Ver Perfil
Re: Captcha con dataid
« Respuesta #7 en: 28 Noviembre 2010, 19:30 pm »

usa un HttpWebRequest  en lugar de un webclient prueba ah cambiar

"http://www.mysms.es/?nation=0034&number=" & numero.text & "&message=TEXTO&Len=135&gcode=" & captcha.Text & "&dataid=" & id & "&send=Send+SMS"

por

"http://www.mysms.es/?nation=0034&number=" & numero.text & "&message=TEXTO&Len=135&gcode=" & captcha.Text & "&dataid=" & id


Ahurita tengo que salir has prubas y mas pruebas primero con la url en el navegador ah ver si funciona y de hay ya lo automatizas con un lenguaje de programacion

Nota: analiza bien las limitaciones del portal de repente solo permite un determinado numero de mensajes por ip o por celular.
« Última modificación: 28 Noviembre 2010, 19:32 pm por .::IT::. » En línea

Simplemente .::IT::.
anikillador

Desconectado Desconectado

Mensajes: 57


Ver Perfil
Re: Captcha con dataid
« Respuesta #8 en: 28 Noviembre 2010, 19:53 pm »

LAMMER, ese programa lo hize yo antes (compromvl) y este cabron me lo quiere poner para ganar pasta con el adsense,

LAMMER,

por supuesto las pruebas,


http://www.gsmspain.com/foros/showthread.php?s=&postid=10564668#post10564668
En línea

anikillador

Desconectado Desconectado

Mensajes: 57


Ver Perfil
Re: Captcha con dataid
« Respuesta #9 en: 28 Noviembre 2010, 19:59 pm »

Mira llevo esto
Código
  1. Dim vCodigoFuente As String = ""
  2.    Dim id As String = ""
  3.    Private Sub sms_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
  4.        sacarid()
  5.        PictureBox1.Image = ReadCaptcha()
  6.    End Sub
  7. Public Function sacarid()
  8.        Try
  9.            Dim req As HttpWebRequest = CType(WebRequest.Create("http://www.mysms.es"), HttpWebRequest)
  10.            Dim res As HttpWebResponse = CType(req.GetResponse(), HttpWebResponse)
  11.            If res IsNot Nothing Then
  12.                If res.StatusCode = HttpStatusCode.OK Then
  13.                    Dim stream As Stream = res.GetResponseStream()
  14.                    Using reader As New StreamReader(stream)
  15.                        vCodigoFuente = reader.ReadToEnd()
  16.                    End Using
  17.                End If
  18.                res.Close()
  19.            End If
  20.            Dim Lines() As String = vCodigoFuente.Split(vbNewLine)
  21.            Me.id = Lines(0)
  22.            id = Mid(id, 4898, 14)
  23.        Catch
  24.            MsgBox("Error")
  25.        End Try
  26.    End Function
  27.    Private Function ReadCaptcha() As Image
  28.        Try
  29.            Dim UrlCaptcha As String = "http://www.mysms.es/img/image.php?dataid=" & id
  30.            Dim _HttpWebRequest As HttpWebRequest = CType(WebRequest.Create(UrlCaptcha), HttpWebRequest)
  31.            _HttpWebRequest.Credentials = CredentialCache.DefaultCredentials
  32.            Dim _HttpWebResponse As HttpWebResponse = CType(_HttpWebRequest.GetResponse(), HttpWebResponse)
  33.            Dim _Stream As Stream = _HttpWebResponse.GetResponseStream
  34.            Return Image.FromStream(_Stream)
  35.        Catch ex As Exception
  36.            Throw ex
  37.        End Try
  38.    End Function

La imagen se me muestra correctamente pero no consigo hacer el post, no lo consigo nisiquiera poniendo el get en el chrome(cambiando la id y las letras del captcha), por que me pasa eso?

Saludos

acaso entiendes el codigo?'

toca cojones........... eso es un aporte de IT  que te dio en otro hilo, pero vamos me da que no sabes ni lo que es un while.
En línea

Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
captcha en php
PHP
wizache 2 2,449 Último mensaje 31 Julio 2007, 23:11 pm
por wizache
Descifrar Captcha
Programación Visual Basic
& eDu & 5 8,191 Último mensaje 25 Agosto 2008, 23:36 pm
por Lambda
Decodificar Captcha.
Ingeniería Inversa
garraSS 6 8,797 Último mensaje 26 Octubre 2009, 18:02 pm
por garraSS
Captcha vb.net
.NET (C#, VB.NET, ASP)
diego_lp 1 4,972 Último mensaje 25 Septiembre 2010, 03:01 am
por [D4N93R]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines