MSSQL数据库SA权限入侵的感悟

2016-02-19 14:48 17 1 收藏

今天图老师小编给大家精心推荐个MSSQL数据库SA权限入侵的感悟教程,一起来看看过程究竟如何进行吧!喜欢还请点个赞哦~

【 tulaoshi.com - 编程语言 】

  本文是一篇黑客的经验谈,他告诉大家在MSSQL中SA权限使用上需要注意的问题,供大家参考!

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/bianchengyuyan/)

  想必大家都知道MSSQL中SA权限是什么,可以说是至高无上。今天我就它的危害再谈点儿,我所讲的是配合NBSI上传功能得到WebShell。在讲之前先说几个条件,否则得到Shell是有难度的。

  1.存在SQL注入,并且数据库类型是MSSQL。

  2.连接数据库的权限必须是SA。

  3.后台必须有文件上传的程序。

  好了,我们找到一个网址hxxp://www.6x36x.com/fangchan/listpro.asp?id=53,用NBSI一会就一目了然了。

  很好,数据库类型是MSSQL,权限是SA,再看看第三个条件满足不满足。找到页面中的文章(新闻),看看里面的图片的地址是什么。好!一看就明白了hxxp://www.6x36x.com/adminhttps://img.tulaoshi.com/2xx5042823082994329.gif,你明白了吗?特别是2xx5042823082994329.gif 这下我们敢肯定后台有上传文件的功能了。下面做什么呢?晕,找出该网站所在的路径呀。这个嘛就得全靠NBSI的NB Commander(NB Tree_List)功能了(在这里我推荐大家用NB Commander,为什么呢?看完文章就知道了),不过找出网站所在的真实路径需要花一定的时间,那就看你有没有耐心了。我敢说只要有耐心,肯定能找出网站所在的真实路径。这里我找到了这个站点所在的路径D:9x3x9,接着就是后台了,很快就得到Admin/login.asp,接下来就是账号和密码的猜解了。不过我这次猜解出现了问题。说什么也弄不出他的账号和密码,难道都是空的?我不相信,就试着登录了一下,结果失败了。于是从这开始,NB Commander功能就显得非常重要了(因为大家都知道,列目录NB Command和NB Tree_List都能实现),我找到文件conn.asp,用type D:9x3x9adminlogining.asp命令看了看源代码。

  够狠吧!读了读代码没有问题呀!就是用的admin表字段也一样,不多说了,谁能知道其中的原因?请告诉俺一下,也让俺这只菜鸟走出困惑。进不了后台怎么上传图片呢?这里我用NBSI的上传功能,我试过了,没有成功。因为我传上去后,看到代码每行都重复三次,也不知是为什么,就是用臭要饭的Getwebshell也是同样的结果。

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/bianchengyuyan/)

  我想有了,看看它的Session是怎么验证的,又是一个type D:9x3x9adminquanxian.asp。通过分析很快就明白了,它给Session(“wsl”)赋了一个值为1,哈哈!我写了一个非常简单的程序。用NBSI的上传功能传了上去,我想不管重复几次都是正确的(这里你又会想到什么呢?如果密码是MD5的,我们没有必要去爆破了,弄个session就ok了),传上去保存为1.asp,然后我访问hxxp://www.6x36x.com/admin/1.asp,接着访问hxxp://www.6x36x.com/admin/admin_index.asp,就这样进入了后台,本地测试。

  小提示:Session变量和cookies是同一类型的。如果某用户将浏览器设置为不兼容任何cookie,那么该用户就无法使用这个Session变量! 当一个用户访问某页面时,每个Session变量的运行环境便自动生成,这些Session变量可在用户离开该页面后仍保留20分钟!(事实上,这些变量一直可保留至“timeout”。“timeout”的时间长短由Web服务器管理员设定。一些站点上的变量仅维持了3分钟,一些则为10分钟,还有一些则保留至默认值20分钟。)所以,如果在Session中置入了较大的对象(如ADO recordsets,connections, 等等),那就有麻烦了!随着站点访问量的增大,服务器将会因此而无法正常运行!

  因为创建Session变量有很大的随意性,可随时调用,不需要开发者做精确地处理。所以,过度使用session变量将会导致代码不可读而且不好维护。

  这样我找到上传图片的地方,把asp木马改成.gif传了上去,记住了上传后的名字,这里是uploadpic2xx56171430123.gif,那么你会想到什么呢?哈哈我想起来了,把图片copy成.asp的,或者重命名成.asp的。

  好了,到这里我们的马就算是上去了,至于以后的事情就不提了。

  总结:SA的确给我们带来了很大危害,所以程序员在连接MSSQL数据库的时候千万不能用它,否则服务器成为肉鸡的可能性非常非常的大。还有,MSSQL 的扩展存储功能,用不到它就删除,留着就成了黑客的利器。

来源:https://www.tulaoshi.com/n/20160219/1607962.html

延伸阅读
最近碰到一个使用了Oracle数据库的服务器,在狂学Oracle+请教高手后终于搞到了网站后台治理界面的所有用户密码,我发现Oracle操作起来真是太麻烦,为了兄弟们以后少走些弯路,我把入侵当中必需的命令整理出来,一个星期的心血,版权所有,转载请注明作者。 1、su – oracle 不是必需,适合于没有DBA密码时使用,可以不用密码来进入sqlplus界...
标签: 电脑入门
命令提示符 net stop mysql 停止mysql服务 C:Documents and Settingstonynet stop mysql MySQL 服务正在停止。 MySQL 服务已成功停止。 进入bin目录 C:Documents and Settingstonycd C:Program FilesMySQLMySQL Server 5.0bin C:Program FilesMySQLMySQL Server 5.0binmysqld -nt --console --skip-grant-tables 另外开一个新的cmd C:P...
1.导出整个数据库 mysqldump -u 用户名 -p 数据库名 导出的文件名 mysqldump -u wcnc -p smgp_apps_wcnc wcnc.sql 2.导出一个表 mysqldump -u 用户名 -p 数据库名 表名 导出的文件名 mysqldump -u wcnc -p smgp_apps_wcnc users wcnc_users.sql 3.导出一个数据库结构 mysqldump -u wcnc -p -d -...
一、备份数据库   1、打开SQL企业管理器,在控制台根目录中依次点开Microsoft SQL Server 2、SQL Server组--双击打开你的服务器--双击打开数据库目录 3、选择你的数据库名称(如论坛数据库Forum)--然后点上面菜单中的工具--选择备份数据库 4、备份选项选择完全备份,目的中的备份到如果原来有路径和名称则选中名称点...
标签: SQLServer
摘要: 本文以SQL SERVER为例,总结了常用的几种备份和恢复数据库的方法,分析了作业机制的原理,并提出了一种以作业机制实现恢复和备份数据库的方法。用户可以不打开数据库管理器,在应用程序客户端就可以方便地实现数据库的备份和恢复。 关键词: 备份 恢复 作业机制 数据库 1.概述 备份和恢复是数据库管理员维护数据库安全性和完整...

经验教程

579

收藏

47
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部