下面是Cookies下面的一个Cookie文件wwwfox@cgi-bin.txt内容是:
advpost
0
219.239.245.203/cgi-bin/
1536
1276665728
29789832
2326352352
29783688
对应方法
advpost--->cookie .getName
0--->cookie .getvalue()
1536-->cookie .getMaxAge()如返回为-1表示关闭浏览器cookie就失效
? 后面就是创建日期,失效日期
? 创建时间,失效时间
现在教你怎么用jsp编程查看上网时网站给你创建的cookie文件,
问题一.cookiess只能由它创建的网站访问,那么我们怎么能够在自己的电脑是运行自己的服务器查看出来呢,如果能成那就是cookie欺骗。侵入别人网站的根源。
好通过示例来演示:, wwwfox@csdn[2].txt当然它的命名是
你的用户电脑帐号@产生的COOKIE的网页文件所在的WEB目录[COOKIE改变的次数].txt
wwwfox电脑帐号在访问csdn网站时是不会发送到csdn网站上去的,也就是只能在我的电脑wwwfox帐号上使用这个cookie其人(帐号)是不能用的。。
在C:\Documents and Settings\wwwfox\Cookies下我有一个登录csdn网站时由它创建的cookie
wwwfox@csdn[2].txt的内容是:
ABCDEF
hbWhkUhCWfRTUyeAVO5k79qTBFZXtGV2qfwAROv%252fvVk9qF3rfkcZQbl1IdMsBxhy15Y%252fqwN2XiLyTy%252fDGuW4LY7zZll16huuVbnJ0CEun26I%252f2bynXLPd2Ymq%252bn2Mt11pSP5w3%252fZNXt9ZJEp79VMCw%253d%253d
csdn.net/
1536
3743055744
29786511
2555961280
29783695
////////////////////////////
在C:\Program Files\Apache Software Foundation\Tomcat 5.5\webapps\test新建一个文件checkCookie.jsp
<%@page pageEncoding="gb2312" %>
<%
Cookie[] cookie=request.getCookies();
out.println("this is www.csdn.net/<br>");
out.println("<br>");
for(int i=0;i<cookie.length;i++)
{
if(cookie .getName().equals("ABCDEF"))
{
String name=cookie .getName();
String value=cookie .getvalue();
int maxage=cookie .getMaxAge();
out.println("name="+cookie .getName()+"<br>");
out.println("value="+cookie .getvalue()+"<br>");
out.println("maxage="+cookie .getMaxAge()+"<br>");
//out.println("setMaxAge为30");
//cookie .setMaxAge(30);
//out.println("之后为maxage="+cookie .getMaxAge()+"<br>");
out.println("domain="+cookie .getDomain()+"<br>");
out.println("secure="+cookie .getSecure()+"<br>");
out.println("path="+cookie .getPath()+"<br>");
}
}
%>
好现在访问一下
http://localhost:8080/test/checkCookie.jsp是不是显示:
this is www.csdn.net
而没有取到值:因为只能在它的domain下能访问到这个cookie
好现在我们来
把C:\WINDOWS\SYSTEM32\DRIVERS\etc下面的hosts.sam打开修改其中的
127.0.0.1 ?hostname
为127.0.0.1 ? ? ? www.csdn.net
在这里你还可以再添加多行和上面相访的键值对,这个比外网的dsn优先级高所以它先把www.csdn.net解释成本地的127.0.0.1所以你就可以由这个访问了,这也可以解释为什么我们可以在ie敲http://localhsot的原因,这里localhost你可随便改成你喜欢的名称.
保存
修改conf/servlet.xml当中的端口为80端口
<Connector port="80" maxHttpHeaderSize="8192"
? ? ? ? ? ? ? maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
? ? ? ? ? ? ? enableLookups="false" redirectPort="8443" acceptCount="100"
? ? ? ? ? ? ? connectionTimeout="20000" disableUploadTimeout="true" />
好现在启动tomcat访问http://www.csdn.net/test/checkCookie.jsp
得到结果啦:
this is www.csdn.net
name=ABCDEF
value=hbWhkUhCWfRTUyeAVO5k79qTBFZXtGV2qfwAROv%252fvVk9qF3rfkcZQbl1IdMsBxhy15Y%252fqwN2XiLyTy%252fDGuW4LY7zZll16huuVbnJ0CEun26I%252f2bynXLPd2Ymq%252bn2Mt11pSP5w3%252fZNXt9ZJEp79VMCw%253d%253d
maxage=-1
domain=null
secure=false#一般为默认值false不然为true就表示在像ssl验证时才能访问些cookie
path=null
由于在本机不能创建cookie所以不能演示修改cookie值给大家看.
达内的论坛cookie
存放用户名和密码没有经过加密的如
amembernamecookie
javazhai#这里是我的用户名
219.239.245.203/cgi-bin/
1536
2476861952
29789838
3517958576
29783694
*
apasswordcookies
xxxxxx#这里是我的密码
219.239.245.203/cgi-bin/
1536
2476861952
29789838
3517958576
29783694
而csdn是经过加密方式存储的如
ABCDEF
hbWhkUhCWfRTUyeAVO5k79qTBFZXtGV2qfwAROv%252fvVk9qF3rfkcZQbl1IdMsBxhy15Y%252fqwN2XiLyTy%252fDGuW4LY7zZll16huuVbnJ0CEun26I%252f2bynXLPd2Ymq%252bn2Mt11pSP5w3%252fZNXt9ZJEp79VMCw%253d%253d
这一串肯定包含了用户名和密码的,它经过某种方式取得原始用户名和密码

上一页 [1] [2] [3]