内容提要:春节即将来临,充分发挥MSN的功能,将使您与远方的家人、朋友在春节期间的沟通更加灵活快捷。这里搜集了一些来自MSN官方网站的使用技巧,希望能在佳节中为您提供方便。 运行全屏程序时,如何阻止通知窗口弹出(只适于 …… |
在写这篇文章之前,有必要对"注入"一词阐述一下。区别于通常的SQL注入,这里的注入实际上只是构造HTTP请求报文,以程序的方式代替WEB提交页面,实现数据的自动提交。嘿嘿,说到这,我看到你诡异的笑容了,我们只要写个循环,用什么语言你说了算,向特定的WEB页面发送HTTP报文,只要几分钟,呵呵他的本本就爆了,而且……嘿、嘿、嘿……偶喝杯茶,接下再写。
首先,还是温习一下HTTP协议吧。我们在打开一个网站时,比如说http://www.163.com,实际上IE作为一个客户端,它将向服务器发送如下的请求报文(偶用sniffer截得的):
GET / HTTP/1.1 |
我们看到在以上的报文中,有很多字段,当然其中有很多并不是必须的,如果我们自己编程,只关心必要的就行了。在HTTP/1.1协议中规定了最小请求消息由方法字段(GET/POST/HEAD)和主机字段(HOST)构成。如上面的
GET / HTTP/1.1 HOST:www.163.com |
但在HTTP/1.0中,HOST字段并不是必须的,这里为什么不能省,相信你也知道,不晓得的话也不打紧,接下来看。
为了向服务器发送数据,浏览器通常采用GET或POST方法向服务器提交报文。服务器在收到报文之后,解码分析出所需的数据并进行处理,最后返回结果。通常我们可以见到诸如http://xxx.xxx.xxx.xxx/show.asp?id=xxx的URL请求,我们可以自己构造如下的报文来完成
GET /show.asp?id=xxx HTTP/1.1 HOST:xxx.xxx.xxx.xxx |
受URL长度1024的限制,采用GET方法只能提交少量的数据,假如我们在录入一篇文章时,这时就只能用到POST方法了。在讲解POST方法的一些要点之前,还是让大家来看一段POST请求报文,以致对POST报文有个大致的了解。(下面是我向某本本的留言,偶照样用sniffer截下来了)
POST /gbook/add.php HTTP/1.1 name=test&email=&comefrom=&homepage=&icq=&oicq=&image=say.gif&comment=test&passw |
POST /gbook/add.php HTTP/1.1 name=test&email=&comefrom=&homepage=&icq=&oicq=&image=say.gif&comment=test&passw |
上