VB POST 提交抓的包方法。
VB POST 提交抓的包方法。
请大家请供一下方法,
Dim strURL As String, strFormData As String
'下面是抓包内容
SentInfo = "-----------------------------7dc10d8166021c" & vbCrLf & vbCrLf & _
"Content-Disposition: form-data; name=" & Chr(34) & "mode" & Chr(34) & vbCrLf & vbCrLf & _
"1" & vbCrLf & vbCrLf & _
"-----------------------------7dc10d8166021c" & vbCrLf & vbCrLf & _
"Content-Disposition: form-data; name=" & Chr(34) & "url" & Chr(34) & vbCrLf & vbCrLf & _
"." & vbCrLf & vbCrLf & _
"-----------------------------7dc10d8166021c" & vbCrLf & vbCrLf & _
"Content-Disposition: form-data; name=" & Chr(34) & "lang" & Chr(34) & vbCrLf & vbCrLf & _
"utf-8" & vbCrLf & vbCrLf & _
"-----------------------------7dc10d8166021c" & vbCrLf & vbCrLf & _
"Content-Disposition: form-data; name=" & Chr(34) & "wr" & Chr(34) & vbCrLf & vbCrLf & _
"-----------------------------7dc10d8166021c" & vbCrLf & vbCrLf & _
"Content-Disposition: form-data; name=" & Chr(34) & "upfile" & Chr(34) & "; FileName = " & Chr(34) & "any_name.php" & Chr(34) & "" & vbCrLf & vbCrLf & _
"Content-Type: image/gif" & vbCrLf & vbCrLf & _
"GIF89a" & vbCrLf & vbCrLf & _
"-----------------------------7dc10d8166021c" & vbCrLf & vbCrLf & _
"Content-Disposition: form-data; name=" & Chr(34) & "link" & Chr(34) & vbCrLf & vbCrLf & _
"-----------------------------7dc10d8166021c" & vbCrLf & vbCrLf & _
"Content-Disposition: form-data; name=" & Chr(34) & "imgsize" & Chr(34) & vbCrLf & vbCrLf & _
"-----------------------------7dc10d8166021c" & vbCrLf & vbCrLf & _
"Content-Disposition: form-data; name=" & Chr(34) & "alignment" & Chr(34) & vbCrLf & vbCrLf & _
"-----------------------------7dc10d8166021c--" & vbCrLf
’结束
strURL = "http://xxxx.com/Editor/upok.php" '提交的页面
strFormData = SentInfo '提交的数据
Inet1.Execute strURL, "Post", strFormData, "Accept: */*" & vbCrLf & _
"Referer:http://xxxx.com/Editor/up.php?lang=utf-8" & vbCrLf & _
"Accept-Language:zh-cn" & vbCrLf & _
"User-Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0)" & vbCrLf & _
"Content-Type: multipart/form-data; boundary=---------------------------7dc10d8166021c" & vbCrLf & _
"Accept-Encoding: gzip, deflate" & vbCrLf & _
"Connection: Keep-Alive" & vbCrLf _
& "Content-Length: " & Len(strFormData) & vbCrLf _
Do Until Inet1.StillExecuting = False '等待数据加载完成
DoEvents
Loop
这个提交了,返回来的信息是有问是, up.php 页头没构造进去。不知道是什么原因;那位大侠指定一下
返回来的包内容
下面这个是正确的,手工上传抓到的返回包。
HTTP/1.1 200 OK
Date: Sat, 28 Apr 2012 21:45:40 GMT
Server: Apache/2.2.11 (Fedora)
X-Powered-By: PHP/5.2.13
Content-Length: 463
Connection: close
Content-Type: text/html; charset=utf-8
<script src='./languages/utf-8/java.lang.js'></script><script language='javascript'>
<!--
var val;
val = '文件地址/名.php';
parent.insertHtml(val);
//-->
</script>
</BODY></HTML>
'这个是VB提交的包返回结果。
HTTP/1.1 200 OK
Date: Sat, 28 Apr 2012 21:45:40 GMT
Server: Apache/2.2.11 (Fedora)
X-Powered-By: PHP/5.2.13
Content-Length: 463
Connection: close
Content-Type: text/html; charset= ‘少了编码。怀疑是没包发出去,还是构造这个页头不成了,不明白了
<script src='./languages/这里也是少了编码/java.lang.js'></script><script language='javascript'>
<!--
var val;
val = '';
parent.insertHtml(val);
//-->
</script>
</BODY></HTML>
[解决办法]
-----------------------------7dc1c2d7003a8
Content-Disposition: form-data; name="mode"
1
-----------------------------7dc1c2d7003a8
Content-Disposition: form-data; name="url"
.
-----------------------------7dc1c2d7003a8
Content-Disposition: form-data; name="lang"
utf-8
-----------------------------7dc1c2d7003a8
Content-Disposition: form-data; name="wr"
-----------------------------7dc1c2d7003a8
Content-Disposition: form-data; name="upfile"; filename="any_name.gif"
Content-Type: image/gif
GIF89a
-----------------------------7dc1c2d7003a8
Content-Disposition: form-data; name="link"
-----------------------------7dc1c2d7003a8
Content-Disposition: form-data; name="imgsize"
-----------------------------7dc1c2d7003a8
Content-Disposition: form-data; name="alignment"
-----------------------------7dc1c2d7003a8--
这是原始包内容
[解决办法]
该回复于2012-05-03 16:32:27被版主删除
[解决办法]
我记得似乎结束是2个vbcrlf ……
"Content-Length: " & Len(strFormData) & vbCrLf & vbCrLf
p = "POST " & Res(Index).thisUrl & " HTTP/1.0" & vbCrLf & _
"Cookie: " & Res(Index).Cookie & vbCrLf & _
IIf(Res(Index).U_AG = "", mHeader, "User-Agent: " & Res(Index).U_AG) & vbCrLf & _
"host: " & Res(Index).Host & vbCrLf & _
"Content-Type: " & Res(Index).Content_Type & vbCrLf & _
"Referer: " & Res(Index).referer & vbCrLf & _
"Content-Length: " & LenB(StrConv(Res(Index).postStr, vbFromUnicode)) & vbCrLf & vbCrLf & _
Res(Index).postStr
wsk(Index).SendData p