日期:2014-05-17  浏览次数:20982 次

在asp中,能不能用已知的sessionID,取session的值??
A用户和B用户都在浏览同一网站,  
网站里的session( "userName ")=userName//这个是用户名  
如果A知道B的sessionID,  
A有没有办法取到B的session( "userName ")值?  
意思就是跟椐sessionID来取session( "userName ").  
如果可以的话,写个具体的代码来看看

------解决方案--------------------
可以的,不过实现有些麻烦
test.asp
<%
If IsEmpty(Session( "Name ")) Then
Session( "Name ") = "stinger "
Response.Write "SetSession(Name) = " & Session( "Name ")
Else
Response.Write "GetSession(Name) = " & Session( "Name ")
End If
%>

访问页面后,可以在地址栏里输入:javascript:alert(document.cookie)获得SESSIONID,假设获得这样一个SESSION
ASPSESSIONIDCSCDQCQC=PAHLPCNBMPJBAINGDPKCINEH

然后需要写一个HTTP客户端发送HTTP数据包,也可以用telnet来完成这个功能
打开命名提示符,输入telnet [网站域名或IP] 80,回车,例如:telnet localhost 80
WIN32下的Telnet是盲打的,就是你可以用键盘输入字符,但看不到效果,所以,键盘操作得过硬
在盲打区输入下面内容
GET /test.asp HTTP/1.1
Host: localhost
Connectio: close
Cookie: ASPSESSIONIDCSCDQCQC=PAHLPCNBMPJBAINGDPKCINEH
[后面接着回车两次]

就可以看到Web Server的回复了