巧用nc,模拟GET和POST

来源:互联网 发布:淘宝如何改价钱 编辑:程序博客网 时间:2024/06/04 01:28



前一段时间在用http解码相关的测试工作,经常需要构造一些字段,比如构造http header、主体等,我想同行的人一定也测试过。我用到过webstress、firefox的live http header,但是后来,我发现,一个非常灵活好用的工具--nc

为什么说它好用呢?ok,我现在举例子:
比如说,我要提交个GET请求,服务器域名为http://www.test.com/。先自己生成个1.txt,写入一些内容:

 1 GET /cgi-bin/webdist.cgi?distloc=;ls HTTP/1.1
 2 Host: 170.168.1.11
 3 User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; zh-CN; rv:1.9.0.4) Gecko/2008102920 Firefox/3.0.4
 4 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
 5 Accept-Language: zh-cn,zh;q=0.5
 6 Accept-Encoding: gzip,deflate
 7 Accept-Charset: gb2312,utf-8;q=0.7,*;q=0.7
 8 Keep-Alive: 300
 9 Connection: keep-alive
10 Cookie: ASPSESSIONIDAQDBSAQA=LDABJFEDGCCINNBJMHNNPKDI
11 
12 
内容必须以两个空行结尾。这符合rfc2616的标准,否则不会被正确解码的。(这里的host字段我忘记修改了。。)
然后nc派上用场了,nc http://www.test.com/ 80 < 1.txt  ,这个GET请求就发送出去了。简单吧!你可以完完全全的主机区构造header和data,任何的都可以。

再试一个POST的:

POST /scripts/nsiislog.dll HTTP/1.1
Host: www.test.com
Content-Length: 16758
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; zh-CN; rv:1.9.0.4) Gecko/2008102920 Firefox/3.0.4
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: zh-cn,zh;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: gb2312,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive
Cookie: ASPSESSIONIDAQDBSAQA=LDABJFEDGCCINNBJMHNNPKDI
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA


然后记住,method要大写就好了:GET,POST,HEAD,SEARCH
0 0
原创粉丝点击