漆包线厂家
免费服务热线

Free service

hotline

010-00000000
漆包线厂家
热门搜索:
行业资讯
当前位置:首页 > 行业资讯

sqlserver防止数据库挂马新尝试

发布时间:2020-03-09 15:07:39 阅读: 来源:漆包线厂家

网站挂马非常让人头痛,每次的安全措施都是治标不治本,想找到根本原因,只能去分析你的程序源代码,由于很多网站不是一个程序员开发,很多的注入漏洞很难发现,曾经通过公共文件加入过滤代码,基本无效,买了个叫龙盾的IIS防火墙,好像有点用,但最后还是被攻破了,sqlserver又被挂了。

每次注入都要用“UPDATE 表名 set 字段名= REPLACE(字段名,

网站挂马非常让人头痛,每次的安全措施都是治标不治本,想找到根本原因,只能去分析你的程序源代码,由于很多网站不是一个程序员开发,很多的注入漏洞很难发现,曾经通过公共文件加入过滤代码,基本无效,买了个叫龙盾的IIS防火墙,好像有点用,但最后还是被攻破了,sqlserver又被挂了。

每次注入都要用“UPDATE 表名 set 字段名= REPLACE(字段名,'木马地址','')”最后一个引号真想写去死吧!

我们不能阻止住它往数据库里挂木马,但是总有方法我们可以让它挂不成功。最后想到了触发器。熟悉触发器的都知道,sql2000插入数据和修改数据其实都是先放在inserted临时表里,然后才实际去放到对应表里。阻击黑客的脚步就这个临时表里。

下面是一段触发器的代码,暂时对木马注入起到一定的作用。

CREATE trigger 触发器名

on 表名

for update,insert

as

declare @a varchar(100) --存储字段1

declare @b varchar(100) --存储字段2

declare @c varchar(100) --存储字段3

select @a=字段1,@b=字段2,@c=字段3 from inserted

if(@a like '%script%' or @b like '%script%' or @c like '%script%')

begin

ROLLBACK transaction

end

这段触发器的意思是,先定义三个变量,分别存储放在inserted表里的三个容易被黑客下手的字符串型字段,然后用like模糊判断值中是否含有script字样,如果有,就回滚事务,不报错,以麻痹黑客,让他误以为已经挂好马了。各位被挂马的朋友可以把这段脚本拿去,对应着修改,应该可以保证网站不被挂马。另外容易被挂马的字段还有text型,但是这个类型处理比较麻烦点,而且观察发现黑客挂一个表往往是好几个字段同时挂,所以只要一个字段不成功,整个表都是不成功的。

锻圆

星力捕鱼正版

绳锯切割价格

相关阅读