原文地址: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模块被植入恶意代码技术分析与防护方案的更多相关文章

  1. JavaScript公共库event-stream被植入恶意代码

    [安全预警]JavaScript公共库event-stream被植入恶意代码 2018年11月27日,阿里云云盾应急响应中心监测到JavaScript公共库event-stream被植入恶意代码,该恶 ...

  2. SQL中批量删除被注入的恶意代码的方法

    下文将为您介绍SQL中批量删除被注入的恶意代码的方法,供您参考,如果您也遇到了这样的问题,不妨一看,相信对您会有所帮助. 1,如果你的数据表很少的话,那么写几条简单的sql就搞定了 对于表中的nvch ...

  3. 向PE文件植入后门代码技术讨论

    写在前面的话 这篇文章将介绍使用codecaves对PE文件植入后门代码.有几个很好的工具可以帮到你了.比如BackdoorFactory和Shelter将完成相同的工作,甚至绕过一些静态分析几个防病 ...

  4. 【旧文章搬运】再谈隐藏进程中的DLL模块

    原文发表于百度空间,2009-09-17========================================================================== 相当老的话 ...

  5. KTHREAD 线程调度 SDT TEB SEH shellcode中DLL模块机制动态获取 《寒江独钓》内核学习笔记(5)

    目录 . 相关阅读材料 . <加密与解密3> . [经典文章翻译]A_Crash_Course_on_the_Depths_of_Win32_Structured_Exception_Ha ...

  6. KTHREAD 线程调度 SDT TEB SEH shellcode中DLL模块机制动态

    KTHREAD 线程调度 SDT TEB SEH shellcode中DLL模块机制动态获取 <寒江独钓>内核学习笔记(5)   继续我们的线程相关的数据结构的学习.接下来我们学习 KTH ...

  7. Delphi之DLL知识学习5---在Delphi应用程序中使用DLL

    首先说明一下:同一个动态库(DLL)被多个的程序加载的话,那么将会在每次加载的时候都会重新分配新的独立的内存空间,绝对不是共用一个,所以当一个DLL被多次加载的时候,其会在内存中“复制”多份,不会互相 ...

  8. 在C++中调用DLL中的函数 (3)

    1.dll的优点 代码复用是提高软件开发效率的重要途径.一般而言,只要某部分代码具有通用性,就可将它构造成相对独立的功能模块并在之后的项目中重复使用.比较常见的例子是各种应用程序框架,ATL.MFC等 ...

  9. 利用OllyDebug查看程序调用的dll模块

    最近在做一个Qt项目,在产品发布的时候一直为找不到程序到底缺少了哪些dll组件而困扰.具体问题是,在我的项目中使用到了QMediaPlayer播放一段音频文件,我使用的开发环境的Win7 32位,而在 ...

随机推荐

  1. CAP理论和Base理论

    CAP理论 Consistency(一致性), 数据一致更新,所有数据变动都是同步的 Availability(可用性), 好的响应性能 Partition tolerance(分区容错性) 可靠性, ...

  2. Review: Basic Knowledge about SQL

    非原创,转自Github:enochtangg/quick-SQL-cheatsheet SQL 语句用法的速查表. 内容 查找数据的查询 修改数据的查询 聚合查询 连接查询 视图查询 修改表的查询 ...

  3. 通过百度地图API--获取全国地图的经纬度

    因为要做一个前端画图需要经纬度,一个个的查询过麻烦,最终弄出这个,以备后查! import threading , time import requests from decimal import D ...

  4. SQLServer的三种Recovery Model

    SQL Server恢复模式的三种类型的比较 此文章主要向大家讲述的是SQL Server恢复模式,我们主要介绍的是三种恢复模式,其中包括简单SQL Server数据库的恢复模式.完整恢复模式与大容量 ...

  5. Python爬虫之正则表达式(2)

    # 最常规的匹配 import re content = 'Hello 123 4567 World_This is a Regex Demo' print(len(content)) result ...

  6. swoole多端口监听

    今天测试swoole写webserver实现多端口监听.记录下爬过的坑:关于tcp协议监听触发不到receive!!!!! 首先上服务端代码 class Http { /** * 服务实例 * @va ...

  7. eclipse 中 git 解决冲突(重点)

    Eclipse 中 GIT 提交代码时的冲突困扰了我很久,说实在的,真的感觉 GIT 太特么难用了,尤其是提交代码时(或许还没习惯吧).特此,写一篇博文记录一下自己使用 GIT 决解冲突的问题,希望能 ...

  8. eclipse弃坑记第一篇之在idea上配置Tomcat环境并创建Javaweb项目的详细步骤原创

    IntelliJ IDEA是一款功能强大的开发工具,在代码自动提示.重构.J2EE支持.各类版本工具(如git.svn.github).maven等方面都有很好的应用. IntelliJ IDEA有免 ...

  9. python网络进阶篇

    并发编程 进程 操作系统的历史 # 手工操作 —— 穿孔卡片 # 程序员将对应于程序和数据的已穿孔的纸带(或卡片)装入输入机,然后启动输入机把程序和数据输入计算机内存,接着通过控制台开关启动程序针对数 ...

  10. Python开发【第三篇】基本数据类型

    整型 int __author__ = 'Tang' # 将字符串转换为数字 a = " b = int(a) # 前面是0的数转换,默认base按照十进制 a = " b = i ...