estoy haciendo una aplicacion de esas que buscan hashes crackeados por internet, pero al intentar buscar el hash (parecido a como lo vi en perl) en una web, no consigo obtener el html normalmente.
Public Function BuscarHash(Web As String, PostData As String, Antes As String, Despues As String) As String
Dim A(1) As Long
Dim Indice As Integer
Dim Resultado As String
Indice = Crackeando
If PostData = "" Then
frmMain.Net(Indice).Execute Web, "GET"
Else
frmMain.Net(Indice).Execute Web, "POST", PostData
End If
'Datos parciales
Dim d_Chunk As Variant
' En esta variable se almacenan los datos finales
Dim Datos As String
Do
DoEvents
Loop While frmMain.Net(Indice).StillExecuting = True
d_Chunk = frmMain.Net(Indice).GetChunk(1024, icString)
Datos = d_Chunk
Do
DoEvents
' Recupera una porción de datos de 1024 bytes
d_Chunk = frmMain.Net(Indice).GetChunk(1024, icString)
' Si ya no hay mas sale
If Len(d_Chunk) = 0 Then
Exit Do
Else
Datos = Datos & d_Chunk
End If
Loop
If Antes = "" Then
A(0) = 0
Else
A(0) = InStr(1, Datos, Antes)
End If
If Despues = "" Then
A(1) = 0
Else
A(1) = InStr(1, Datos, Despues)
End If
Resultado = Mid(Datos, A(0) + Len(Antes), A(1) - A(0))
BuscarHash = Resultado
End Function
y lo llamo asi:
Me.tvHashes.Nodes.Add "HH" & Crackeando, tvwChild, "HHH1" & I, "md5.hashcracking.com: " & BuscarHash("http://md5.hashcracking.com/search.php?md5=" & Lista(Crackeando).Valor, "", "Cleartext of " & Lista(Crackeando).Valor & " is ", "")
Me.tvHashes.Nodes.Add "HH" & Crackeando, tvwChild, "HHH2" & I, "md5decryption.com: " & BuscarHash("http://md5decryption.com/", "hash=21232f297a57a5a743894a0e4a801fc3&submit=Decrypt+It%21", "<br><b class=""red"">Normal Text: </b>", "<br><script type=""text/javascript""><!--")
pero nunca llego a tener la web en Datos :S
alguna ayuda?
Explica un poco mejor lo que quieres hacer, porque no lo entiendo.
quiero que el inet entre a una web, como x ejemplo http://md5.hashcracking.com/search.php?md5=21232f297a57a5a743894a0e4a801fc3 (a veces los datos hay que mandarlos por post). Y que de ahi saque el resultado qeu me da la web, para hacer esto yo ya se que hay antes y despues del resultado (por ejemplo, en esta antes hay "Cleartext of 21232f297a57a5a743894a0e4a801fc3 is " y despues nada)
edit:
una parte de donde saque la idea (perl)
#busca en www.milw0rm.com/cracker
sub cracker2 {
my $url = "http://milw0rm.com/cracker/search.php";
my $conexion = LWP::UserAgent->new();
$conexion->agent($agent);
my $resultado = $conexion->get($url);
my $request = $conexion->post($url, ["hash" => $hash, "Submit" => "Submit"]);
my $content = $request->content;
my $code1 = "</TD><TD align=\"middle\" nowrap=\"nowrap\" width=90>";
my $code2 = "</TD><TD align=\"middle\" nowrap=\"nowrap\" width=90>cracked</TD></TR>";
if ($request->content =~ m/$code1(.*)$code2/) {
} else {
}
}
edit2:
la primera ya funciono, tenia un error en
If Despues = "" Then
A(1) = 0
Else
A(1) = InStr(1, Datos, Despues)
End If
iba
If Despues = "" Then
A(1) = Len(Datos)
Else
A(1) = InStr(1, Datos, Despues)
End If