CVE漏洞中文网

0DayBank一个专门收集整理全球互联网漏洞的公开发布网站
  1. 首页
  2. 漏洞列表
  3. 正文

反木马

2018年11月12日 1020点热度 0人点赞 0条评论
  • FB招聘站
  • 分类阅读
  • 专栏
  • 公开课
  • FIT 2019
  • 企业服务
  • 用户服务
  • 搜索
  • 投稿
  • 登录
  • 注册

浅谈从反木马角度分析怎样提高木马反跟踪能力

南拳daddy2015-08-11共557961人围观 ,发现 19 个不明物体系统安全网络安全

前言

首先声明下,本人既不是杀毒软件厂商技术人员,也不是黑产从业人员。写这篇文章只是记录自己对木马技术研究的一些分析,也并不代表这些技术是当前木马技术领域的主流技术。只是用来分享和交流之用。

进入正题,反木马技术我个人认为比较常见的分为两种,一种是对木马网络特征行为进行分析,如用wireshark 等抓包工具分析网络特征(对单独一台主机分析时较常见),还可以用硬件防火墙分析网络协议数据包(分析整个内网数据流量时较常见);另一种是对木马的文件特征行为进行分析,如用process monitor 分析某个可疑进程对系统的修改,还有杀毒软件厂商用的比较多的方法是对木马pe 文件进行逆向分析。

本文重点对木马网络特征行为进行研究,提高木马反跟踪能力。

我这里给出木马的设计思路草图, 如下:

源代码将在逆向分析中给出。

下面我想从木马抓包分析和使用IDA PRO 逆向分析给出木马的网络特征行为。

为了同步演示木马行为, 木马被控端也将同时运行,并输出调试信息。

如下图:

下面是wireshark 抓包截图:

这是建立TCP 反弹连接时抓取到的数据包。

这是建立UDP 反弹连接时抓取到的数据包。

下面是用 IDA PRO 6.6 对 被控端shell.exe 进行分析。

这里查看到的IP地址 和使用wireshark 抓包获取的IP 地址是一样的,都是23.218.27.34

这个IP地址 只是起到干扰和伪装的作用,可以是任意国家的IP地址。

而UDP 上线IP 或者域名在 源代码中是加密赋值的,用IDA PRO 分析结果如下图:

对应的C++ 源码部分如下图:

当然,这个加密的上线IP 在上面的UDP 抓包和被控端运行调试信息中已经给出。

通过wireshark 和IDA 对木马分析得出上线IP 很可能就是23.218.27.34,而真正的上线IP 和端口 很有可能被忽略掉了。因为大多数的木马程序都采用TCP 反弹连接, 在分析木马的时候UDP 特征并不容易引起注意。

作者亲倾赠送

作为观看这篇文章的奖励, 我有一个小礼物送给大家

网络连接查看器(ver 0.5)

主要功能:查看当前网络TCP和UDP 连接

使用方法:

在>=Win7 系统上鼠标右键已管理员身份运行; <Win7 系统下直接双击运行。

效果图如下:

下载链接: http://pan.baidu.com/s/1pJvHs6Z 密码: rgir

* 作者/南拳daddy,属FreeBuf原创奖励计划文章,未经许可禁止转载

南拳daddy

南拳daddy4 篇文章等级: 4级
|
|
  • 上一篇:格式化字符串的漏洞利用(Part 1)
  • 下一篇:安全科普:局域网攻击的常见方法

这些评论亮了

  • 十三少爷(1级)学习的小白回复
    天呐,最近这些文章质量……FB你们换小编了?还是突然有钱,一定要奖励了?连续看了好几篇现金奖励……算了不吐槽了
    )10(亮了
  • Hacksign(1级)回复
    从逆向角度来看,我只关心所有网络收发函数的调用路径,所以监控工具钩住所有的网络收发函数,然后到IDA中应该可以找到对应的代码.而对于加密的代码,反而是欲盖弥彰.
    从网络数据包请求来看,其实我不需要关心你连接的是什么地址,用的是什么协议.只需要将这个进程的所有网络请求地址(domain,ip等)通通记录下来,然后结合域名或ip的其他信息(例如domain的alex排名/解析量等)来判断是否为一条可疑连接.
    在上了规模的网络中,可以交叉比较每一条domain/ip的主机请求数量/频率等,等等信息来判断一个链接是否为可疑链接.如果你的这个链接只有一个节点在请求,而且还是每1分钟左右请求一次,那就很可疑了.
    当然,上了规模的网络中,会有很多噪点,比如某狗输入法......恶心的不行~
    )10(亮了
  • nickchang(4级)回复
    @ nickchang  不好意思,刚才没看清楚:) 不过可不可以不把目标地址硬设为100.100.100.100,而用DNS 递归查询的特性来连接C2服务器? 这样看起来真实一点。而且在代码里面也不需要设置ip地址
    )8(亮了
  • 南拳daddy(4级)家里蹲大学,信息安全学院, 博士后在读...回复
    @ cnbug vb6.0 虽然很老了 ,但并不过时。终结者5 里面,施瓦辛格也说他自己 "虽然老了,但我还不过时"。
    )8(亮了
  • 金木的小右回复
    想要图一的壁纸
    )7(亮了
发表评论

已有 19 条评论

  • cnbug 2015-08-11回复1楼

    好久不见了。
    还在用vb写东西呀。

    亮了(7)
    • 南拳daddy (4级)家里蹲大学,信息安全学院, 博士后在读... 2015-08-11回复

      @ cnbug vb6.0 虽然很老了 ,但并不过时。终结者5 里面,施瓦辛格也说他自己 "虽然老了,但我还不过时"。

      亮了(8)
      • bigfatcat (1级) 2015-08-11回复

        @ 南拳daddy  vb6还是调用底层的api函数,逼.net的vb好啊,好多年不用vb了。楼主方法不错

        亮了(6)
  • nickchang (4级) 2015-08-11回复2楼

    你这是明修栈道,暗渡陈仓阿,可是你这陈仓渡的还是太明显了。这个UDP包的应用层协议wireshark都认不出来,别人没有理由不分析下吧?还不如把藏在DNS包里面,咋一看就是个合法的DNS query。

    亮了(5)
    • nickchang (4级) 2015-08-11回复

      @ nickchang  不好意思,刚才没看清楚:) 不过可不可以不把目标地址硬设为100.100.100.100,而用DNS 递归查询的特性来连接C2服务器? 这样看起来真实一点。而且在代码里面也不需要设置ip地址

      亮了(8)
    • 南拳daddy (4级)家里蹲大学,信息安全学院, 博士后在读... 2015-08-11回复

      @ nickchang  我这里 演示用的是固定IP地址, 反弹端口号是53 ,所以wireshark 会认为是DNS 协议 ,
      IP地址也可以改成域名 ,到时候 wireshark 里面既能看到DNS 解析数据包 ,也能看到假的DNS 数据包。

      亮了(6)
  • Hacksign (1级) 2015-08-11回复3楼

    从逆向角度来看,我只关心所有网络收发函数的调用路径,所以监控工具钩住所有的网络收发函数,然后到IDA中应该可以找到对应的代码.而对于加密的代码,反而是欲盖弥彰.
    从网络数据包请求来看,其实我不需要关心你连接的是什么地址,用的是什么协议.只需要将这个进程的所有网络请求地址(domain,ip等)通通记录下来,然后结合域名或ip的其他信息(例如domain的alex排名/解析量等)来判断是否为一条可疑连接.
    在上了规模的网络中,可以交叉比较每一条domain/ip的主机请求数量/频率等,等等信息来判断一个链接是否为可疑链接.如果你的这个链接只有一个节点在请求,而且还是每1分钟左右请求一次,那就很可疑了.
    当然,上了规模的网络中,会有很多噪点,比如某狗输入法……恶心的不行~

    亮了(10)
  • 金木的小右 2015-08-11回复4楼

    想要图一的壁纸

    亮了(7)
  • 吴明 2015-08-11回复5楼

    我记得有篇文章介绍nsa的做法是在网络节点装后门,转发流量。真真的高科技啊

    亮了(7)
  • langyajiekou (6级) 2015-08-11回复6楼

    这个工具跟TCPViewer有什么区别?

    亮了(6)
    • 南拳daddy (4级)家里蹲大学,信息安全学院, 博士后在读... 2015-08-11回复

      @ langyajiekou  没有多大区别 , 只是多了过 获取远程IP 地理位置的功能。

      亮了(7)
  • langyajiekou (6级) 2015-08-11回复7楼

    1. 这里查看到的IP地址 和使用wireshark 抓包获取的IP 地址是一样的,都是23.218.27.34, 这个IP地址 只是起到干扰和伪装的作用,可以是任意国家的IP地址。

    2. 通过wireshark 和IDA 对木马分析得出上线IP 很可能就是23.218.27.34

    这里写错了吧?怎么是一样的?应该是100.100.100.100吧。

    亮了(6)
    • 南拳daddy (4级)家里蹲大学,信息安全学院, 博士后在读... 2015-08-11回复

      @ langyajiekou  你这样 理解也没错 , 100.100.100.100 这个IP 确实是用来上线的 , 只是更多的人
      在分析木马特征的时候 , 会误认为23.218.27.34 这个IP 是上线IP ,我只是 站在他们的角度来说。

      亮了(6)
  • Yd0str 2015-08-11回复8楼

    针对僵尸木马蠕虫的流量检测来说,要分析地方很多,涉及各种协议及其负载,协议字段,端口等,关键是怎么能够从流量中分析出病毒传输的控制命令,或者特殊心跳,或者传输的特殊指纹字符,甚至是报文的长度,整体的变化,DNSquery的内容,频次等等等,搞不好逆一把也避免不了~

    亮了(7)
  • 皮砍普 2015-08-11回复9楼

    只要带点图的文章好像都能发表。。。。。

    亮了(4)
  • 十三少爷 (1级)学习的小白 2015-08-12回复10楼

    天呐,最近这些文章质量……FB你们换小编了?还是突然有钱,一定要奖励了?连续看了好几篇现金奖励……算了不吐槽了

    亮了(10)
  • 123 2015-08-13回复11楼

    我不想吐槽了,要抓肯定是都抓把,没理由只抓TCP不抓UDP。只要UDP一样在抓,你的UDP连接一样也会被抓到。
    当然一定要说的话有肯定是有一点迷惑作用,对方要是抓到一个IP对方就收拾准备完工了的那种管理员。

    亮了(4)
  • machuhui (2级)Nothing is impossible. 2015-09-08回复12楼

    下载链接: http://pan.baidu.com/s/1pJvHs6Z 密码: rgir –小编你的奖励和小礼物就是木马病毒吗。。我艹 。

    亮了(6)
  • 康小泡 (2级) 2015-09-10回复13楼

    感觉我要上线了

    亮了(6)

 

必须您当前尚未登录。登陆?注册

必须(保密)

表情插图

取消

南拳daddy

南拳daddy

家里蹲大学,信息安全学院, 博士后在读...

4文章数51评论数

最近文章

浅谈从反木马角度分析怎样提高木马反跟踪能力

2015.08.11

浅谈木马如何隐藏上线IP地址

2015.06.05

对手机远程控制软件穿透硬件防火墙的分析和研究

2014.10.30

浏览更多

相关阅读

  • Google Play上发现的银行木马可窃取受害者的银行账户
  • 新Njrat木马(Bladabindi)的新功能源码分析
  • 爆料全球首个基于Twitter的Android僵尸网络
  • 从一个锁主页木马里挖出的惊天“暗杀黑名单”
  • CoinHive智能网页挖矿的二三事

特别推荐

关注我们 分享每日精选文章

活动预告

  • 11月

    FreeBuf精品公开课·双11学习狂欢节 | 给努力的你打打气

    已结束
  • 10月

    【16课时-连载中】挖掘CVE不是梦(系列课程2)

    已结束
  • 10月

    【首节课仅需1元】挖掘CVE不是梦

    已结束
  • 9月

    【已结束】自炼神兵之自动化批量刷SRC

    已结束

FREEBUF

  • 免责声明
  • 协议条款
  • 关于我们
  • 加入我们

广告及服务

  • 寻求报道
  • 广告合作
  • 联系我们
  • 友情链接

关注我们

  • 官方微信
  • 新浪微博
  • 腾讯微博
  • Twitter

赞助商

Copyright © 2018 WWW.FREEBUF.COM All Rights Reserved 沪ICP备13033796号

css.php

正在加载中...

0daybank

标签: 暂无
最后更新:2018年11月12日

小助手

这个人很懒,什么都没留下

点赞
< 上一篇
下一篇 >

文章评论

您需要 登录 之后才可以评论

COPYRIGHT © 2024 www.pdr.cn CVE漏洞中文网. ALL RIGHTS RESERVED.

鲁ICP备2022031030号

联系邮箱:wpbgssyubnmsxxxkkk@proton.me