重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
sql注入其实就是在这些不安全控件内输入sql或其他数据库的一些语句,从而达到欺骗服务器执行恶意到吗影响到数据库的数据。防止sql注入,可以在接受不安全空间的内容时过滤掉接受字符串内的“'”,那么他不再是一条sql语句,而是一个类似sql语句的zifuc,执行后也不会对数据库有破坏。
成都创新互联公司坚持“要么做到,要么别承诺”的工作理念,服务领域包括:做网站、网站建设、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的沈丘网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!
如:
username = request("username") //获取用户名 这里是通过URL传值获取的。
password = request("password") //获取密码 也是通过URL传值获取的。
sql="select * from userlist where username = '" username "' and password = '" password "'"--------如果某个人知道某个用户名是admin,常常有人网站的管理员用户名就是admin,这是密码可以选用'or 1 or ',
那么sql="select * from userlist where username = 'admin' and password = '' or 1 or ''",显然1是恒真的,那么验证密码就通过了。
防止的方式比较多,比如可以限制username,password中出现"'"这些字符,一般网站都是只允许数字,字符,下划线的组合,这可以通过javascript验证。也可以采取用存储过程代替sql拼接,等等。
第一步:安装时要修改数据表前戳
因为帝国cms也是国内知名的开源程序,很多人都对帝国CMS很熟悉,所以对安全也就成了威胁,特别是数据库,帝国CMS默认的数据表都是相同的,所以我们为了数据库的安全,我们要修改帝国安装时的数据库前缀表。(更改需要修改配置,大家自己百度下相关的修改方法)
数据库表
第二步:修改后台文件夹名称
一般帝国CMS都是 域名/e/admin 我们要将 admin修改为更复杂的文件名,不容易被别人轻易猜中后台,否则就会增加被攻击的机率。
帝国后台目录
第三步:禁用admin账户
一般我们使用帝国cms只是修改一下密码而已,其实这并不安全,最好自己新建立一个账号,禁用admin账号。才会让我们更加的安全一些。
禁用账户
第四步:设置登录认证码和登录问题
我们退一步来讲解,就算黑客暴力破解出了你的账号密码。你的后台开启了认证码和登录问题,黑客也是登陆不上你后台的,这对你的网站后台安全起到了非常重要的作用。
登录验证码
第五步:启用网站安全防火墙。
帝国CMS网站安全防火墙是针对整站防护的,开启后会让网站数据得到更加高的保障。
防火墙
配置“网站防火墙”有下面两种方法:
1、后台“系统设置”“网站防火墙”。
2、修改e/class/config.php文件配置。
下面讲解一下相关设置的作用和使用:
1、防火墙加密密钥:
此项必须设置,填写10~50个任意字符,最好多种字符组合。
并且建议每星期或每个月变更一次。
2、允许后台登陆的域名:
设置只允许访问后台的域名,域名绑定到网站根目录,只有通过这个域名访问e/admin后台才是被允许的。域名一般用网站的二级域名即可,如果为了更保险也可绑定一个全新域名的二级域名。比如:网站域名:,而访问后台域名则用
并且绑定的域名还支持增加端口,比如:,前提是服务器支持使用这个端口访问网站。绑定域名()后的访问后台地址是:,而通过其他域名访问后台都是空白。
3、允许登陆后台的时间点、允许登陆后台的星期:
方便工作时间工作的单位设置,使网站安全维护更容易把控,不让用户在工作时间外进入后台。如果紧急事件例外可以手动修改e/class/config.php文件配置。
4、防火墙后台预登陆验证变量名和防火墙后台预登陆认证码
这两项必须设置。预登陆验证变量名:可由英文字母+数字组成(必须是字母开头),5~20个字符组成。
预登陆认证码:填写10~50个任意字符,最好多种字符组合。并且建议每星期或每个月变更一次。
5、屏蔽提交敏感字符:
此功能是安全防火墙的核心,可对前台用户所有录入的信息进行安全过滤。通常设置php、mysql等攻击的相关字符。比如:sql注入通常会用到的字符:select,outfile,union,delete,insert,update,replace,sleep,benchmark,load_file,create。
帝国防火墙
第六步:网站服务器安装防御软件
我们之前也讲解过,可以安装云锁、网站安全狗这类的软件,第一可以防止暴力破解,第二可以防止恶意篡改页面,第三可以防止dos、cc等流量攻击。
云锁防护
帝国CMS删除不需要的功能
如果我们的网站不需要帝国CMS的某项功能我们可以进行删除,不单单可以提高运行速度,减少占用空间,还可以避免黑客利用这些文件进行上传木马,具体怎么做那,如下:
首先:后台-系统-系统参数设置-关闭相应的模块 “先关闭对应的模块”
1、不使用下载系统模型
(1)、删除e/DownSys目录;
(2)、修改e/class/DownSysFun.php文件,文件第二行加exit();
修改后保存文件即可。
2、不使用商城系统模型
(1)、删除e/ShopSys目录;
(2)、修改e/class/ShopSysFun.php文件,文件第二行加 exit();
修改后保存文件即可。
3、不使用评论功能
(1)、删除e/pl目录;
(2)、修改e/enews/plfun.php文件,文件第二行加 exit();
修改后保存文件即可。
4、不使用留言板功能
(1)、删除e/tool/gbook目录;
(2)、修改e/enews/gbookfun.php文件,文件第二行加 exit();
修改后保存文件即可。
5、不使用投票功能
(1)、删除e/tool/vote和e/public/vote目录;
(2)、修改e/enews/votefun.php文件,文件第二行加 exit();
修改后保存文件即可。
6、不使用会员取回密码和激活帐号功能
(1)、删除e/member/GetPassword目录;
(2)、修改e/class/qmemberfun.php文件,文件第二行加 exit();
修改后保存文件即可。
7、除了admin、class、data、enews、message目录外,不使用的功能可以直接删除。
不使用前台动态信息页面:直接删除e/action目录
不使用前台投稿功能:直接删除e/DoInfo目录
不使用前台打印功能:直接删除e/DoPrint目录
不使用在线支付接口功能:直接删除e/payapi目录
不使用全站全文搜索功能:直接删除e/sch目录
不使用搜索功能:直接删除e/search目录
不使用会员空间功能:直接删除e/space目录
不使用tags列表功能:直接删除e/tags目录
不使用wap功能:直接删除e/wap目录
不使用RSS功能:直接删除e/web目录
帝国CMS安全防护就讲解到这里,对于帝国CMS来说,已经非常安全,我们删除下方插件代码的意思为:代码越少,越精简,漏洞也就越少,我们不需要的功能可以直接删除掉,一面给我们带来不必要的安全隐患。
SQL注入攻击的危害很大,而且防火墙很难对攻击行为进行拦截,主要的SQL注入攻击防范方法,具体有以下几个方面。
1、分级管理
对用户进行分级管理,严格控制用户的权限,对于普通用户,禁止给予数据库建立、删除、修改等相关权限,只有系统管理员才具有增、删、改、查的权限。
2、参数传值
程序员在书写SQL语言时,禁止将变量直接写入到SQL语句,必须通过设置相应的参数来传递相关的变量。从而抑制SQL注入。数据输入不能直接嵌入到查询语句中。同时要过滤输入的内容,过滤掉不安全的输入数据。或者采用参数传值的方式传递输入变量,这样可以最大程度防范SQL注入攻击。
3、基础过滤与二次过滤
SQL注入攻击前,入侵者通过修改参数提交and等特殊字符,判断是否存在漏洞,然后通过select、update等各种字符编写SQL注入语句。因此防范SQL注入要对用户输入进行检查,确保数据输入的安全性,在具体检查输入或提交的变量时,对于单引号、双引号、冒号等字符进行转换或者过滤,从而有效防止SQL注入。
当然危险字符有很多,在获取用户输入提交参数时,首先要进行基础过滤,然后根据程序的功能及用户输入的可能性进行二次过滤,以确保系统的安全性。
4、使用安全参数
SQL数据库为了有效抑制SQL注入攻击的影响。在进行SQLServer数据库设计时设置了专门的SQL安全参数。在程序编写时应尽量使用安全参数来杜绝注入式攻击,从而确保系统的安全性。
5、漏洞扫描
为了更有效地防范SQL注入攻击,作为系统管理除了设置有效的防范措施,更应该及时发现系统存在SQL攻击安全漏洞。系统管理员可以采购一些SQL漏洞扫描工具,通过专业的扫描工具,可以及时的扫描到系统存在的相应漏洞。
6、多层验证
现在的网站系统功能越来越庞大复杂。为确保系统的安全,访问者的数据输入必须经过严格的验证才能进入系统,验证没通过的输入直接被拒绝访问数据库,并且向上层系统发出错误提示信息。同时在客户端访问程序中验证访问者的相关输入信息,从而更有效的防止简单的SQL注入。但是如果多层验证中的下层如果验证数据通过,那么绕过客户端的攻击者就能够随意访问系统。因此在进行多层验证时,要每个层次相互配合,只有在客户端和系统端都进行有效的验证防护,才能更好地防范SQL注入攻击。
7、数据库信息加密
传统的加解密方法大致分为三种:对称加密、非对称加密、不可逆加密。
系统漏洞会影响到的范围很大,包括系统本身及其支撑软件,网络客户和服务器软件,网络路由器和安全防火墙等。腾讯电脑管家可以修复Windows操作系统漏洞,还可以智能筛选区分出高危漏洞补丁及功能性补丁,操作方法:腾讯电脑管家-工具箱-选择“修复漏洞”。