sql数据库密码查看器
我修过一台老旧的据库收银机,Windows XP系统,密码数据库是据库Access,密码就明文存在一个.MDB文件里。密码老板忘了密码,据库急得满头大汗。密码我用了半小时写了个十几行的据库Python脚本,直接读文件头,密码把密码字段捞出来了。据库他瞪大眼睛:“就这么简单?密码”就这么简单。 所谓“SQL数据库密码查看器”,据库听起来像黑客工具,密码其实大部分时候就是据库干这个——读连接字符串、翻配置文件、密码或者直接爆破弱口令。据库真正的数据库密码从来不是靠“查看”拿到的,而是靠“找”。 SQL Server的密码存在master数据库里,加密的,你没法直接看。MySQL的user表也是hash过的。Oracle更狠,密码散列算法复杂到让你怀疑人生。所以那些号称能“查看”密码的软件,十有八九是骗外行的——它们要么是暴力破解工具,要么是抓包工具,要么就干脆是个木马。 但有个例外。有些开发人员会把密码写死在代码里,或者存在一个叫config.php、web.config、application.properties的文件里。这时候你需要的不是密码查看器,而是一个文本编辑器。我见过最离谱的一次,某公司ERP系统的数据库密码就写在桌面的“新建文本文档.txt”里,文件名都没改。 还有更直接的。有些老旧系统用sa账号,密码为空,或者就是“123456”。你连工具都不用,打开SSMS直接连就行。我朋友接了个活,对方说数据库被锁了,他过去一看,管理员账号密码是“admin”,数据库sa密码是“sa”。他花了十分钟跟客户解释这不是黑客技术,是你们压根没设密码。 真要说技术含量高的,是那些能读取进程内存的工具。SQL Server运行时,密码会以明文形式缓存在内存里。有些调试器或者内存扫描工具能把它抠出来。但这需要管理员权限,而且操作复杂,还得知道往哪个地址段找。所以这类工具基本都是给DBA做灾难恢复用的,不是给普通人偷密码的。 我自己写过一个简单的查看器,原理特蠢——就是遍历常见密码字典,挨个试连接。成功率居然有30%。因为很多小公司的数据库密码就是公司名加年份,或者电话号码后六位。这不是技术胜利,这是人性胜利。 写这文章不是教你干坏事。数据库密码查看器这东西,最大的作用其实是提醒你:密码别写在代码里,别用弱口令,别把生产库的密码存在桌面的记事本里。你觉得自己藏得挺好,但在懂行的人眼里,那都是透明的。 最后说个真事。去年有个客户找我说数据库被黑了,勒索病毒留了信。我上去一看,他们数据库的备份文件就放在FTP根目录,密码是“ftp123”。黑客根本没黑进去,是直接下载了备份文件,然后删了原库。你说这跟密码查看器有什么关系?关系就是——有时候你根本不需要看密码,因为人家压根没防你。
- 最近发表
- 随机阅读
- 搜索
-
- 友情链接
-