Entertainment
 
[Tp61i6m42008]

Tp61i6m42008 1,171 edits since 2008年3月9日 (星期日)

1,171

用户:Tp61i6m42008/用戶簡介

出自Onepiece-official

http://www.hack4.com/article/hack4-11106.html


文章作者:sunwe4r[1] 信息来源:00day.cn 注意:本人也是刚刚来到这个圈子的菜鸟.希望和大家一起学习一起交流一起进步.看到一些好文章.虽然没有什么技术含量.但是适合我们菜鸟学习.高手飘过~~

   最近闲着无聊,想对国内的黑客网站进行安全检测,第一个拿来开刀的是教主的黑色技术网站。

按照国际惯例我们先扫注入点,结果如图1所示。


根据工具显示,没有发现注入点。我们先去找找后台吧,再次用工具扫,我扫我扫我扫扫扫,如图所示2


果然不出所料,是黑客站点就不可能把后台放在显眼的地方,不然教主干什么吃呀。 根据以往的经验,在敌方的网站里一般可以找到很多有用的线索。在主页我随便到处点一点、看一看。李白说的真好:“抬头望明月。”不看不知道,一看吓一跳。如图3所示。


天那!后缀名居然是DLL动态链接库文件!Oh my dog! 不是,是Oh my god!看来教主也不是吹出来的“教主”嘛。看来刚才扫的后台要把后缀ASP换成DLL的才能正确扫出,我一个一个试了之后,发现login.dll是后台的登陆地址如图4所所示。


我先用了最简单的帐号:'or'='or'和密码:'or'='or'试了试,无疑肯定是无效的。 我们只好从其它方面入手了,先扫描下他的服务器开了什么端口,我用的是SuperScan 3.0来扫描的,设置的是从1号端口扫描到65535端口,可是刚开始扫描我就发现不对头了,如图5。


我扫描到了3191个端口就暂停了,工具显示1-3191这3191个端口全部都打开了,这是不可能的,看来教主对端口扫描做了相应的防范。 我们再去他的黑色技术论坛参观一下,一进去就豁然开朗,如图6。


                  图6

看来他的黑色技术论坛遭到了别人DDOS的黑手了,得罪了这么多的人,哎—— 既然没别的入口,只好从他主站的后台入手了,这个站的后台的验证码是5位的,所以应该是讯时,我们先从网上下到源码看看login.dll。从代码中可以看出有admindj、adminuser和adminpass3个表。 发现可以进行Cookie注入,我来给大家说下什么是Cookie注入。 Cookie注入,我来给大家说下什么是Cookie注入。\n这是目前流行的一种攻击方式,普通的注入攻击比较好防范,但是如果把注入语句添加到Cookies中提交就往往被人忽略。当一套程序的Cookies过滤不严时,就为攻击者打开了方便之门,而且还能无视防注入系统。 那么什么Cookie呢,我这里给大家一个解释,Cookie是一个储存于浏览器目录中的文个字符组成,仅4K硬盘空间。当用户正在浏览某站点时,它储存于用户机的随机存取存储本文件,记录你访问一个特定站点的信息,且只能被创建这Cookie的站点读回,约由255器RAM中,退出浏览器后,它储存于用户的硬盘中。储存在Cookies中的大部分信息是普通的,如当你浏览一个站点时,此文件记录了每一次的击键信息和被访站点的地址等。但是许多Web站点使用Cookies来储存针对私人的数据,如:注册口令、用户名、信用卡编号等。 理论是需要实践来证明的,我们开始实施Cookie注入吧。

我们就用这个Cookies进行注入 admindj=1; adminuser=%27or%27%3d%27or%27; adminpass=21232f297a5dfd 我们用老兵的Cookies浏览器进入http://www.jiaozhu.net/login.dll,如图7。


现在显示的Cookie是 AJSTAT_ok_times=1;virtualwall=vsid=1cc39e686c7ab7353b2946bcc02fa982; AJSTAT_ok_times=2; ASPSESSIONIDCSSBQSSB=HKJKNMJCKMMJPGEGEHJHFAEM 我们先点下左边的小金锁,然后把这段Cookie改成 admindj=1; adminuser=%27or%27%3d%27or%27; adminpass=21232f297a5dfd 接着我们访问admin_index.dll,就进了后台,如图8


哈哈,想不到教主做的站安全也不怎么样,看以来像是几套程序套在一起组装出来的。 在新闻添加的里面有一个附件上传,我们把我们的ASP马改成GIF图片格式,上传试试。没想到居然上传成功了。 在下面我们还看到一个备份,如图9。


                         图9

通过备份我们拿到了一个SHELL,如图10。


我们到他的站点根目录下去,去分析下他网站的漏洞。 出现漏洞的是这admin_chk.dll中的这三处代码 admin_chk.dll文件中没作任何过滤

session("admin__user")=Request.Cookies("adminuse r") session("admin__pass")=Request.Cookies("adminpass") session("dJ")=Request.Cookies("admindj")

从cookies读取adminuser,adminpass,admindj这些信息,然后到数据库查询,为空则数据不存在,转向登录解密那


adminuser=Request.Cookies("adminuser") adminpass=Request.Cookies("adminpass") admindj=Request.Cookies("admindj") adminuser,adminpass只是简单检查了一下是否为空就直接参加了sql查询,形成了sql注入漏洞

sql = "select * from admin where [user]='"&adminuser&"' and [pass]='"&adminpass&"'" 没有过滤"&adminuser&"' and [pass]='"&adminpass&"'" 如果我们在登录页面将adminuser和adminpass的值输入' 'or'='or' 相当于 sql="select * from admin where [user]='or'='or'"and [pass]="'or='or'" 意思:从user表中查找user为空的用户(user=就是这句)或者空=('or'='or'空这句)很明显了。admin表中不会有用户名为空的人。前面着句结果是假,而后面空=空,很明显就是真了。那么我们结合上面说的or的性质,就可以判定这个最后的结果是真值 那么后面这句and pass=or='or" 将不会被执行了!也就是说我们通过了验证!

修补漏洞的方法 username=replace(trim(request("username")),"'","") password=replace(trim(Request("password")),"'","")

把“'”给过滤了 如果你想用“'”当做密码 就用下面的方法

1、select * from user where user=’ " & User & "' " 2、如果返回不为假,则取密码 pass=rs("passwd") 3、判断:if pass=password 4、得出结论。 ;例子

sql="select * from ****_admin where admin_pass='"&admin_pass&"' and admin='"&admin&"'" rs.open sql,conn,1,3 if not(rs.bof and rs.eof) then if admin_pass=rs("admin_pass") then session("admin")=rs("admin")

总之,我的入侵方法就是这样的,没有什么技术含量,只是想说明即使是黑客网站也是有低级的漏洞,所以像和我一样的菜鸟朋友不要畏惧去检测黑客网站。之后又对部分有名的黑客网站的安全检测也证明了这一点,都是存在着不同的漏洞可以利用,看来教主的黑色技术不会很安全了。好了,文章就到这里就结束了。希望大家有什么好的入侵方法能和我交流、互相学习. 欢迎大家来我的Blog:http://hi.baidu.com/sunwe4r 拖把哥,我把帖子发上来咯O(∩_∩)O哈哈~


http://www.hack4.com/article/hack4-11106.html