NetSarang软件中nssock2.dll模块被植入恶意代码技术分析与防护方案
原文地址:http://blog.nsfocus.net/nssock2-dll-module-malicious-code-analysis-report/
NetSarang是一家提供安全连接解决方案的公司,该公司的产品主要包括Xmanager, Xmanager 3D, Xshell, Xftp 和Xlpd。最近,官方在2017年7月18日发布的软件被发现有恶意后门代码,该恶意的后门代码存在于有合法签名的nssock2.dll模块中。从后门代码的分析来看,该代码是由于攻击者入侵的开发者的主机或者编译系统并向源码中插入后门导致的。该后门代码可导致用户远程登录的信息泄露,甚至可能远程执行代码。 Virustotal在线检测情况: 由分析结果可以知道,nssock2.dll已经被多家杀毒软件识别为恶意的程序,

相关地址: https://www.netsarang.com/news/security_exploit_in_july_18_2017_build.html https://www.virustotal.com/#/file/462a02a8094e833fd456baf0a6d4e18bb7dab1a9f74d5f163a8334921a4ffde8/detection
受影响的版本
- Xshell Build 1322
- Xshell Build 1325
- Xmanager Enterprise Build 1232
- Xmanager Build 1045
- Xmanager Build 1048
- Xftp Build 1218
- Xftp Build 1221
- Xlpd Build 1220
不受影响的版本
- Xmanager Enterprise Build 1236
- Xmanager Build 1049
- Xshell Build 1326
- Xftp Build 1222
- Xlpd Build 1224
软件下载情况
存在后门的软件在国内的下载情况:
- Xmanager:

- Xshell:

技术分析
概述
NetSarang的主要软件版本中发现nssock2.dll模块的官方源码中被植入恶意后门代码。据悉,是黑客渗透到了开发的机器,然后在代码中加入了恶意的代码到官方的源代码中,以下为恶意代码分析。 参考:https://www.virustotal.com/#/user/jumze/comments
传播与感染
用户直接下载或软件捆绑下载。
样本分析
分析环境
| 系统 | Windows 7, 32bit |
| 使用工具 | ProcessMonitor, Xuetr, Wireshark, OllyDBG, IDA, CuteFTP |
TAC检测结果:

图 TAC检测结果
防护方案
用户自查
用户可通过查看nssock2.dll的版本来确定是否受此影响:
在软件安装目录下找到nssock2.dll文件,右键该文件查看属性,如果版本号为5.0.0.26则存在后门代码:


官方解决方案
用户可通过查看的nssock2.dll的版本号的方法来确定是否使用含有后门的软件版本,如果用户正在使用以上受影响的软件版本,请升级到最新版本。官方在最新的软件版本中已经移除了该后门代码,最新的软件版本分别为:
- Xmanager Enterprise Build 1236
- Xmanager Build 1049,
- Xshell Build 1326
- Xftp Build 1222
- Xlpd Build 1224.
官方下载地址如下:
https://www.netsarang.com/download/software.html
NetSarang软件中nssock2.dll模块被植入恶意代码技术分析与防护方案的更多相关文章
- JavaScript公共库event-stream被植入恶意代码
[安全预警]JavaScript公共库event-stream被植入恶意代码 2018年11月27日,阿里云云盾应急响应中心监测到JavaScript公共库event-stream被植入恶意代码,该恶 ...
- SQL中批量删除被注入的恶意代码的方法
下文将为您介绍SQL中批量删除被注入的恶意代码的方法,供您参考,如果您也遇到了这样的问题,不妨一看,相信对您会有所帮助. 1,如果你的数据表很少的话,那么写几条简单的sql就搞定了 对于表中的nvch ...
- 向PE文件植入后门代码技术讨论
写在前面的话 这篇文章将介绍使用codecaves对PE文件植入后门代码.有几个很好的工具可以帮到你了.比如BackdoorFactory和Shelter将完成相同的工作,甚至绕过一些静态分析几个防病 ...
- 【旧文章搬运】再谈隐藏进程中的DLL模块
原文发表于百度空间,2009-09-17========================================================================== 相当老的话 ...
- KTHREAD 线程调度 SDT TEB SEH shellcode中DLL模块机制动态获取 《寒江独钓》内核学习笔记(5)
目录 . 相关阅读材料 . <加密与解密3> . [经典文章翻译]A_Crash_Course_on_the_Depths_of_Win32_Structured_Exception_Ha ...
- KTHREAD 线程调度 SDT TEB SEH shellcode中DLL模块机制动态
KTHREAD 线程调度 SDT TEB SEH shellcode中DLL模块机制动态获取 <寒江独钓>内核学习笔记(5) 继续我们的线程相关的数据结构的学习.接下来我们学习 KTH ...
- Delphi之DLL知识学习5---在Delphi应用程序中使用DLL
首先说明一下:同一个动态库(DLL)被多个的程序加载的话,那么将会在每次加载的时候都会重新分配新的独立的内存空间,绝对不是共用一个,所以当一个DLL被多次加载的时候,其会在内存中“复制”多份,不会互相 ...
- 在C++中调用DLL中的函数 (3)
1.dll的优点 代码复用是提高软件开发效率的重要途径.一般而言,只要某部分代码具有通用性,就可将它构造成相对独立的功能模块并在之后的项目中重复使用.比较常见的例子是各种应用程序框架,ATL.MFC等 ...
- 利用OllyDebug查看程序调用的dll模块
最近在做一个Qt项目,在产品发布的时候一直为找不到程序到底缺少了哪些dll组件而困扰.具体问题是,在我的项目中使用到了QMediaPlayer播放一段音频文件,我使用的开发环境的Win7 32位,而在 ...
随机推荐
- 监控 redis 执行命令
监控 redis 执行命令 Intro 最近在用 redis 的时候想看看执行了哪些命令,于是发现了 redis-cli 提供的 Monitor 命令,直接使用这个就可以监控执行的大部分 redis ...
- Nodejs 操作 Sql Server
Nodejs 操作 Sql Server Intro 最近项目需要爬取一些数据,数据有加密,前端的js又被混淆了,ajax请求被 hook 了,有些复杂,最后打算使用 puppeteer 来爬取数据. ...
- Class.isAssignableFrom与instanceof的区别
isAssignableFrom 假设有两个类Class1和Class2.Class1.isAssignableFrom(Class2)表示: 类Class1和Class2是否相同. Class1是否 ...
- c/c++ 多线程 thread_local 类型
多线程 thread_local 类型 thread_local变量是C++ 11新引入的一种存储类型. thread_local关键字修饰的变量具有线程周期(thread duration), 这些 ...
- 小小白搭建nextcloud云盘
我是一名linux的小小白,今天就利用自己的所学搭建属于自己的云盘——nextcloud. 本人学生狗,普通的云盘也要几十块钱,既然我们只是拿来搭建巩固自己知识并不做为生产力,我们就用VMware W ...
- MySql 学习之路-基础
Mysql 自学之路 本文包含基础部分与高级部分 一.基础 数据库操作 Show databases:显示所有的数据库 Show tables: 显示所有的数据库表 Use databasename: ...
- scheme实现最基本的自然数下的运算
版权申明:本文为博主窗户(Colin Cai)原创,欢迎转帖.如要转贴,必须注明原文网址 http://www.cnblogs.com/Colin-Cai/p/9123363.html 作者:窗户 Q ...
- VMware14虚拟机下安装Centos6.5
一.下载VMware14,CentOS6.5光盘映像文件. https://pan.baidu.com/s/1WaTBnYuNC5dLYM_Ra2bjBQ 二.安装过程 1.打开VMware虚拟机 — ...
- 理论铺垫:阻塞IO、非阻塞IO、IO多路复用/事件驱动IO(单线程高并发原理)、异步IO
完全来自:http://www.cnblogs.com/alex3714/articles/5876749.html 同步IO和异步IO,阻塞IO和非阻塞IO分别是什么,到底有什么区别?不同的人在不同 ...
- Idea+Maven创建scala项目
1.选择Create New Project 2.如下图选择,然后下一步 3.一直Next,填写groupID,artifactid,projectName之后等待IDEA初始化. 4.IDEA完成初 ...