视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
利用SQL注入获取服务器最高权限_MySQL
2020-11-09 20:10:52 责编:小采
文档


单位有台数据库服务器(windows 2000 操作系统,sql server 2000)

前段时间莫名其妙的被攻击了

跑到机房,通过PE进去一看,发现多了一个账户(SQLDEBUG)。并且administrator账户被禁用了

看看数据没少,也没太在意。利用PE把账户破解了一下,就回单位了

今晚回来刚好要去数据库服务器上,下个数据库备份文件。结果发现密码又登陆不了。

不祥预感出来了。难道我又要坐3个小时汽车去机房?

最关键的是,前段时间刚去过机房。星期一又去 。丢不起这个人呐!

第一反应想、。应该是上次那个问题

谷歌了下发现SQL 2000下默认是启用“xp_cmdshell”

从这个文件命名就知道威力有多大了。

将信将疑的试了试(这个时候虽然服务器密码被改了,但是数据库SA密码还是正常的)

Exec master..xp_cmdshell 'net user abc 3388/add'

看到上面命令太熟了。以前做过在win7下破解登陆密码也是这个原理

在数据库一运行,再到系统登录进去了!!

果然服务器上面有一个SQLDEBUG账户就在上面。

后面么,就是通过命令把刚才手动创建的用户那啥啥啥

(不说了太细了,怕害人。有需要可以微博私心我。)

一切OK

心里一阵冷汗,庆幸服务器是2000系统,没有远程桌面的。

要不然人家拿到账户直接远程上来,完全可以删除数据。而且是为所欲为

好了讲下如何防止把

首先把这个xp_cmdshell 存储过程禁用。命令如下:

USE master

GO

EXEC sp_dropextendedproc 'xp_cmdshell'

GO

但是你只禁用根本没有用,因为人家能够还原回来。命令如下:

USE master

GO

EXEC sp_addextendedproc 'xp_cmdshell', 'xplog70.dll'

GO

最关键还是xplog70.dll 这个DLL。路径:

C:\Program Files\Microsoft SQL Server\MSSQL\Binn\xplog70.dll

把这个DLL删除或者改名字就可以了。

(切记一定要把SQL server 服务停止,不然你改名字是没用的。表面上改过了,实际上还是那个名字)

为保险期间,再试试上面创建账户的密码。果然不能创建!OK

其实win7密码破解也是同样的原理。

下载本文
显示全文
专题