[CMS] 海洋CMS数据库挂马终极防御方法(MYSQL触发器使用实例)

[复制链接]
查看343 | 回复0 | 2020-5-23 14:34:30 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
    为什么叫终极呢?因为这个方法是从SQL层面入手与程序无关,原理是利用SQL提供给我们的触发器功能,在数据更新前对数据进行检测含有危险字符就进行拦截,除非黑客有数据库root权限,否则是不能修改我们设置的触发器规则的。  
操作步骤:   

1. 宝塔-数据库-管理 -用root账户登陆   
2. 选择海洋CMS数据库,然后点击右上角的“触发器”,点击靠左的“添加触发器”.
3.按下面设置填写:

   触发器名称:check (任意名称)
   表:sea_data 时机:BEFORG (BEFORG 是执行前,AFDER是执行后)
    事件:UPDATE        
    定义:
  1. BEGIN
  2. IF
  3.    NEW.v_name  LIKE '%script%'  OR
  4.    NEW.v_pic   LIKE '%script%'  OR
  5.    NEW.v_spic  LIKE '%script%'  OR
  6.    NEW.v_actor LIKE '%script%'
  7. THEN
  8.   SIGNAL SQLSTATE 'HY000' SET MESSAGE_TEXT = '请勿输入非法字符!';
  9. END IF;
  10. END
复制代码
用户:留空
点击执行,无出错提示即添加成功。

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

灌水成绩
406
主题
410
帖子
1576
积分
等级头衔
积分成就
  • 威望: 0
  • 贡献: 1166
  • 金钱: 0
  • 违规:
  • 在线时间:156 小时
  • 注册时间:2020-2-11
  • 最后登录:2020-8-23
个人勋章

最佳新人活跃会员热心会员突出贡献优秀版主论坛元老精贴王灌水之王荣誉管理

联系方式