笔者的一家客户网站采用Ms-sql数据库,曾经被入侵,被注入成千上万恶意代码,很长时间得不到解决,清理完或者还原数据库后,第二天又被注上了,改密码也不行,烦死人的!网上搜索查看了许多方法都不行,网上许多防注水代码都不好使,后来想了个一劳永逸的办法,给解决了,至今有两三年了,再没有犯此毛病。
其实目前许多网站尤其较大的网站使用MS-SQL数据库、Mysql数据库,怎样使数据库不被入侵、变得更加安全呢?在这里,笔者就以MS-SQL数据库为例简单介绍一下我的处置方法:
提要:●访问网站数据库,使用只读权限; ●使用有改写权限的且不在互联网上的后台管理进行网站资料管理
1、网站数据库账户必须加安全密码
2、登陆企业管理器,增加一个数据库账户,账户的权限仅对该网站,且是只读的,当然要加密码,多一道墙多一份安全嘛;然后将该网站的数据库连接设置改成该账户即可,这样网站数据库就安全了。
3、那么有人要问,我要登录后台增加、修改网站资料怎么办呢?其实这个好办!
a,原有的网站管理,其中的数据库连接设置仍然用有权限的,如SA,
b,该网站管理是隐形的,即保证网站的任何网页没有其链接,即不在互联网中;它只是网站目录下的一个文件或一个独立文件夹里的文件,且有权限的数据库链接设置只能在此文件中有,不能包含在网站内发布到互联网上的其他文件中;
例如原来登录路径是http://ytdata.net/admin,默认的index.asp后台登录文件,修改为admin999目录,相关文件中包含的路径名简单改一下即可,这样登录方式就变了;登录路径名字变了,且不在互联网中,谁有这个本事破解?除非获得FTP权限;而且即使获得FTP权限,还要对这个网站做一些深入分析,才能知道,毕竟看起来这个不在网站所有页面链接中的后台管理才具有真正的数据库修改权限,一般人谁想得到呢?所以在多数情况下会被忽视,因为在他们看来不在互联网链接中的网页对他们和网站所有者都是毫无意义的!所以这虽是个简单的障眼法,但对于那些惯性思维的人还是有蒙蔽作用的。
本文原创ytfix.com超级大老李 |