Chinaunix首页 | 论坛 | 博客
  • 博客访问: 818969
  • 博文数量: 756
  • 博客积分: 40000
  • 博客等级: 大将
  • 技术积分: 4980
  • 用 户 组: 普通用户
  • 注册时间: 2008-10-13 14:40
文章分类

全部博文(756)

文章存档

2011年(1)

2008年(755)

我的朋友

分类:

2008-10-13 14:42:07

                           浅谈对数据库的攻击(1)
                                            jjgirl

                                            


--------------------------------------------------------------------------------


    佳佳在这里简单谈一下对数据库的攻击。由于本人才疏学浅,望大家能够批评指正。


    一般的web server都要使用数据库来存储信息,几乎所有的网站都要用数据库。这样就存在着两种可能,一种是使用小型数据库,如aceess,一般就储存在本地。另一种是使用大型数据库,如SQL server,Oracle这时候一般就放在另一台机器上,然后通过ODBC来访问它。
    由于页面经常需要查询各种信息,修改用户信息等操作,实质上就是和数据库打交道了。这样就给非法用户留下利用的机会了。
    1.对本地数据库的攻击。
    对本地数据库的攻击一种方法就是下载数据库,然后呢,你就可以打开这个数据库得到内部的用户和帐号了,以及其它有用的信息。
下面以“水莲会”为例:
    经过扫描,得知 NT+IIS4.0.扫描器你可以使用twwwscan或者其它,其实功能都大同小异。
在对IIS攻击时如果能够看到ASP源代码,那么成功的可能性就很大了。
经过测试,发现此站点存在源代码暴露漏洞。。。
    大家可以试试:







    看见了什么?
    当然源代码泄露的漏洞有很多种,这里就不一一列举,你可以去查漏洞手册。
    现在你就可以去查看ASP源代码了。
    如果你对ASP不熟悉,我简单介绍一下(其实佳佳也不熟悉)。
    ASP是嵌在<%和%>之间。一般使用VBScript或者JavaScript书写代码。

    看这个例子使用VBScript书写的:
<%

...
set cn1=server.createobject("ADODB.connection")
dbpath=server.mappath("user.mdb")
cn1.open "driver={microsoft access driver (*.mdb)};dbq="&dbpath
set rs=server.createobject("ADODB.recordset")
rs.open "select * from yhb",cn1,adopenkeyset

...
%>

    这是一个典型的与数据库连接的代码。
    依次的步骤为:
    建立连接对象,
    设置数据库路径,
    打开数据库,
    设置记录对象,
    取记录。
    这里我们就可以知道数据库的类型,名称和路径,这里是在当前目录下。
    还可以知道数据库的表名和字段名称。
    有经验的程序员一般不会把数据库名直接放在代码里,而是在ODBC里设置数据源,以增加安全性。
    然后就发现存在
    d:\S\suilian\chat\news.mdb
    d:\S\suilian\topic22.mdb等数据库
    你只要使用
   
   
    就可以把它下载下来。。。

    有什么问题请在佳佳的BBS留言,经常去586,lovehacker,mayi都是高手。。。

    对本地数据库的攻击的第二种方法是使用SQL语句,这和远程数据库的方法一样,会在下一节介绍的。

    再见!   

                                                       jjgirl  11.20.2000
      
--------------------next---------------------

阅读(259) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~