查出反向木马的反向连接域名

2023-10-31

来源:ttian.net
反向木马的主要种植手段是通过IE的众多漏洞,bt下载时不小心运行,或者来路不明的软件,使未打补丁的用户点击之后下载运行了木马程序,而这些用户基本都是拥有动态IP的个人用户,若不使用反向连接的方式,势必无法长久控制。

  下面让我们来讨论一下如何查出木马的最关键的要素――反向连接域名,知道了反向连接域名,你就可以随时了解到幕后元凶究竟在哪,是否在线等隐私资料,甚至可以进行域名劫持,从而使他所控制的单位全都连到你所设置的IP上去,可见反向域名一旦暴露,要抓住幕后黑手是轻而易举的事情。木马反向连接必须先向域名服务器发送查询要求,然后由域名服务器返回查询结果――域名对应的IP,有了IP之后再去连接主控端。而许多木马都通过修改系统文件,进程插入,API HOOK等众多方式实现了在系统中服务隐藏,进程隐藏,文件隐藏,端口隐藏,所以此时系统的输出已经不是可靠的输出了,可能你的抓包数据已经被恶意篡改,抹去了木马的相关数据(事后发现我的测试对象灰鸽子并没有这么做…但不排除别的木马会这么做…)。于是我想到了通过物理上的方法,木马虽然可以在系统中隐藏,但是这个域名查询的请求无论如何都会经过网线或者无线信号传送出去。

  为了查出反向连接域名,构建以下网络拓扑结构:一台NOTEBOOK和一台PC连接在HUB上,ADSL MODEM接到HUB的UPLINK口上(注意:一般HUB的UPLINK口与旁边的接口绝对不能同时使用),选用HUB而不是宽带路由器的原因是我没钱…呵呵,其实真正的原因是HUB可以把任意一个端口发送的数据转发到除了本身端口外的其他任何一个端口,所以NOTEBOOK网卡的所有数据都会流经 PC的网卡,NOTEBOOK系统中可能被木马隐藏的网络数据,都会毫无保留的暴露再PC机的网卡上。

  需要真正透彻理解从而提高技术还是需要实践,下面我就拿国内比较著名的灰鸽子木马做试验,尝试找出灰鸽子木马的反向连接域名(大家完全可以用别的木马做测试,因为我的机器不小心中了灰鸽子所以才将计就计)。PC机上的监听工具选择了TcpDump的WINDOWS版本WinDump,现在想来多余了,PC 上装着LINUX呢,可以直接使用TcpDump。WinDump的使用需要先安装WinPcap 3.1--点击可直接下载,然后下载WinDump version 3.9.3--点击可直接下载,就可以直接运行了。

  监听前介绍一下NOTEBOOK的状态,中了灰鸽子木马。查到服务名的方法很简单,使用入侵检测工具icesword,那么更容易了,打开就可以查看到所有进程和所有服务,无论是否隐藏的,一目了然发现IEXPLORER进程和lente服务是隐藏的(见图1和图2),于是禁止lente服务。(假如没有 icesword也没问题,进入安全模式,system32文件夹下搜索_hook.dll,发现一个systen_Hook.dll,明显是灰鸽子,注册表中搜索systen,发现关联的服务名为lente),把中了灰鸽子的NOTEBOOK一切有关网络的第三方开机自启动程序都禁止,防止引起不必要的域名查询混淆监听结果,把lente服务改成Manual方式,最后启动服务,在PC机上观察监听结果。

  图1,点击可放大


图2,点击可放大

其中192.168.1.2是NOTEBOOK的IP地址,202.96.209.6是NOTEBOOK的主域名服务器,并且没有设置辅助域名服务器。 PC机的IP地址是192.168.1.3,这不太重要,因为是通过HUB连接的,只要启用网卡,无论设置成怎么样都会监听到NOTEBOOK的数据。

  监听NOTEBOOK向默认域名服务器(202.96.209.6)的域名查询请求(图3):

  图3


PC机命令行输入:windump –vvnXi2 src 192.168.1.2 and dst 202.96.209.6 命令中vv表示更详细的显示输出,n表示用数字表示服务端口和用IP表示已知域名的IP,src 192.168.1.2 and dst 202.96.209.6 表示只监听来自192.168.1.2并且目标是202.96.209.6的数据包,当然可以根据需要随机应变。

  监听NOTEBOOK接受到默认域名服务器(202.96.209.6)的域名查询响应(图4):

  图4


从以上监听数据来看,灰鸽子服务的启动过程中只向域名服务器查询了ns1.3322.net的IP地址,并且域名服务器返回的结果告诉我 ns1.3322.net的IP地址是61.177.95.125,查询类型为A,即最普通的域名到IP的查询。当然ns1.3322.net绝不可能是那个反向连接域名,因为这是希网动态域名解析的主DNS服务器。灰鸽子居然向我的默认DNS服务器查询另外一个DNS服务器的IP,或许是使用别的域名服务器,为了掩人耳目?我停止了PC机上的监听,准备改成监听ns1.3322.net和NOTEBOOK之间的数据,果然不出所料,得到以下结果。

  监听NOTEBOOK向域名服务器ns1.3322.net的域名查询请求(图5):

  图5


监听NOTEBOOK收到域名服务器ns1.3322.net的域名查询响应(图6):

  图6


从给ns1.3322.net的域名查询请求中可以看到,中了灰鸽子的NOTEBOOK向ns1.3322.net发送了一个查询域名 65200.huigezi.org的请求,查询类型为MX,即邮件交换记录,也就是发向邮件地址someone@65200.huigezi.org 的邮件将会到达的的主机的地址(注意这里的MX记录正好是和原来的域名一样,其实完全可以不一样的,若MX记录为163.com,那么这封邮件就发送到 163.com这台主机去了)。至此已经可以清晰的看出这个灰鸽子的反向域名为65200.huigezi.org,我ping了一下,发现这与我刚开机时ICESWORD里看到的IEXPLORER进程连接某IP的8000端口的那个IP相同,可以确定结果完全正确。反向域名成功获得。不过这里出现一个技术疑问,nslookup后发现huigezi.org的域名服务器为ns1.3322.net,但是为何会直接向ns1.3322.net服务器查询呢?应该是我设置的域名服务器去问ns1.3322.net,然后告诉我查询结果,并且缓存查询结果,我对于这个过程是一无所知的,就像我的域名服务器原来就知道答案一样,我猜测是木马的自我保护方式,各位有更好的解释的话指点我下,谢谢了。得到域名后接下来可以做的事很多,我也不一一例举了(其实是域名劫持的综合技术要求很高,我没那水准…),不过假如你实在是很气愤的话,比如对方删了你硬盘重要文件等等,我可以告诉你,110找网警…

  在整个监听过程中遇到过许多麻烦,比如NOTEBOOK上有其他程序访问网络,导致PC机上的终端输出狂闪不止,根本没法看,保存在文件里的话,也找得头晕,重启系统无数次等等…我始终相信技术是可以灵活使用的,创新的思路尤其重要,可能会有很意想不到的结果,无论是成功或者失败,去尝试一下总会获得一些经验,学到一点东西(在此稍点一下,名叫LOVEBOOM[DFCG][FCG][CUG]的家伙反编译了灰鸽子的客户端找出了灰鸽子的配置信息,当然包括反向连接域名,技术厉害哦,呵呵,不过遇到一个木马就反编译一个那就-_-,说笑的,偶很佩服他)。通过监听与域名服务器的通讯的方式从原理上来说对于一切木马都有效,所以我不太使用反向连接的木马,很早以前就觉得不安全。大家有技术上的问题可以和我一起学习探讨。

  花絮:我的灰鸽子是BT下载死神漫画的时候机缘巧合中的,看到bleach000.exe,一个JPG图像的图标(我把系统中的显示已知文件名的后缀选项去掉的),来不及了,我太喜欢黑崎一户了,手快了…
Forum:www.nspcn.com
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

查出反向木马的反向连接域名 的相关文章

  • 在 PCL 中使用 System.Net.Sockets(.Net 4.5 + 电话 8)

    我现有的 Net 库已经适用于 Net 4 5 和 Windows Phone 8 现在我想将其转换为可移植类库 突然我无法使用System Net Sockets不再了 我只检查了 Net 4 5和Windows Phone 8 未选择X
  • 如何在.NET中扩展环境变量%CommonProgramFiles%\system\

    我遇到一种情况 我需要通过读取注册表设置来返回目录路径 注册表值返回我以下格式的路径 CommonProgramFiles System web32 dll 而消费者代码期望它的格式为 C Program Files Common File
  • Sqlite 删除速度极其慢 - 如何加快速度?

    我读到删除操作很慢 我想知道如何改进此检查 我有一个每天填充 10 15k 行的表 每次启动时我都需要清理所有超过 6 个月的记录 但是当数据库增长时 我开始遇到速度问题 当我运行此命令时 有接近 100 万条记录 即使我没有任何内容要删除
  • 如何在 .NET 中轻松取消转义 XML 实体

    我有一些代码返回 XMLNode 的 InnerXML 该节点可以只包含一些文本 带有 HTML 或 XML 例如
  • 使用 .NET 在 Windows 中创建弹出式“烤面包机”通知

    我正在使用 NET 并创建一个桌面应用程序 服务 当触发某些事件时 它将在桌面的一角显示通知 我不想使用常规的消息框 b c 那样会造成太大的干扰 我希望通知滑入视图 然后在几秒钟后淡出 我正在考虑一种类似于 Outlook 收到新邮件时发
  • 如何使用鼠标拖动和移动winform

    我知道如何通过添加以下代码来 拖动和移动 winform Protected Overrides Sub WndProc ByRef m As Message If m Msg 163 And ClientRectangle Contain
  • NET/COM 互操作的 ref string[] 内存泄漏

    我最近发现一个非常奇怪的 对我来说 内存泄漏IEnumString http msdn microsoft com en us library ms693735 28VS 85 29 aspxC 使用的 COM 对象 具体来说 使用已包含先
  • 操纵 setter 以避免 null

    通常我们有 public string code get set 如果最终有人将代码设置为 null 我需要避免空引用异常 我尝试这个想法 有什么帮助吗 public string code get set if code null cod
  • 从事务范围调用 WCF 服务方法

    我有这样的代码 using TransactionScope scope TransactionScopeFactory CreateTransactionScope some methodes calls for which scope
  • 如何访问窗口?

    我正在尝试使用其句柄访问特定窗口 即System IntPtr value Getting the process of Visual Studio program var process Process GetProcessesByNam
  • 在 Java 服务器中验证 Windows 用户

    我正在开发一个用 Java 编写的服务器和一个在同一网络上的 Windows 计算机上运行的客户端 用 Net 编写的桌面应用程序 我希望进行一些基本身份验证 以便服务器可以确定运行客户端的用户的用户名 而不需要用户在客户端中重新输入其 W
  • 考虑周末和节假日,添加迄今为止的工作日

    给定一个日期和假期列表 如何将给定的工作日数添加到该日期 对于不考虑假期的较小问题有很多解决方案 例如参见向日期添加天数但不包括周末 https stackoverflow com questions 279296 adding days
  • 如何使用 json.net 在生成的 json 中“内联”属性

    我的一个类中有一个属性 我试图用 json net 序列化它 我想 内联 这意味着 我不想将该属性嵌套到具有属性名称的元素中 但其内容直接位于其父级中 这是一个例子 假设我有以下类结构 public interface ISteeringW
  • 如何提取括号(圆括号)之间的文本?

    我有一根绳子User name sales 我想提取括号之间的文本 我该怎么做 我怀疑子字符串 但我无法弄清楚如何阅读 直到右括号 文本的长度会有所不同 如果您希望远离正则表达式 我能想到的最简单的方法是 string input User
  • 提供软件设置的最佳方式?

    我正在使用 C NET 在我的软件中 我提供设置对话框 用户可以通过该对话框设置我想要保存到文件的应用程序设置 要求 典型 我定义的每个类都使用这些设置的某些部分 因此 这些对于所有类都应该是全局的 这些应该在软件启动时加载 当用户更改设置
  • 如何使用.net更改selenium中的用户代理

    我想使用不同的代理 iPhone iPad Android 测试用 NET 编写的 Web 应用程序 我使用 NUnit 和 Selenium 进行测试 有人有一个用 c 或 VB 在 Selenium 中更改代理 例如 iPad 或 iP
  • List.Clear() 在 C# 中是如何实现的?

    我假设它使用数组来实现 List 怎么List Clear 实施的 它实际上清理了数组还是只是为此列表创建了一个新数组 public class List private Array array public void Clear1 arr
  • 如何嘲笑一切?

    我了解如何模拟接口或虚拟方法调用 但是像 TypeMock 这样的框架可以模拟框架中的所有内容 使用哪些 NET机制来提供此类功能 例如 Typemock Isolator 使用 CLR分析器API http msdn microsoft
  • 无法在 Visual Studio 2022 中启动调试适配器

    如果我创建一个启用了 Docker 支持的 ASP Core MVC 目标框架 5 0 并启动它 我会得到 发生一个或多个错误 无法启动调试适配器 附加信息可能会 在输出窗口中可用 操作被取消 这是调试输出 启用 DebugAdapterH
  • Moq - 是否可以在不使用 It.IsAny 的情况下设置模拟

    我一直使用 Moq 进行单元测试 有时我会嘲笑有很多参数的方法 想象一下这样的方法 public class WorkClient public void DoSomething string itemName int itemCount

随机推荐

  • nginx php站点配置文件,Nginx配置文件详解及多站点配置

    Nginx配置文件详解 配置文件在 etc nginx nginx conf nginx root目录修改报错403解决办法 chmod R 755 目录 usr share nginx html 修改nginx用户为其所有者 chown
  • 前腾讯员工不堪房价回老家进国企!享受清闲日子,但担心又随之而来

    在互联网大厂拿命挣高薪VS回老家进国企提前养老 哪个才是更好的生活 一位前腾讯员工辞职后回老家省会进了国企 过着清闲舒服的日子 却担心再这么下去自己就废了 真是个上进的小哥哥 到手18W 工作量巨少 每天在办公室都不知道干嘛 下午五点就下班
  • 硬盘的三大种类

    文章目录 一 传统硬盘 HDD Hard Disk Drive 二 固态硬盘 SSD Solid State Drive 三 混合硬盘 hybrid hard drive HHD 四 对比 一 传统硬盘 HDD Hard Disk Driv
  • 实验2linux进程控制与通信,实验2 进程控制与通信管理word文档良心出品

    实验2 进程控制与通信管理word文档良心出品 由会员分享 可在线阅读 更多相关 实验2 进程控制与通信管理word文档良心出品 13页珍藏版 请在人人文库网上搜索 1 年级11级专业计算机科学与技术班级五班组号12组实验室9 205日期2
  • ChatGPT?听说Biying把它下架了

    ChatGPT被玩疯了 开始放飞自我 ChatGPT版微软必应上线不到10天 就被网友玩坏了 先说这个词 放飞自我 什么东西才会放飞自我 人放飞自我 人 你确定是人 所以让我们来把上面的句子改写一下 什么东西才会放飞自我 人才会放飞自我 所
  • HTML5实现音频和视频嵌入

    简介 HTML5未出来之前 在线的音频和视频都是借助Flash或者第三方工具实现的 现在HTML5也支持了这方面的功能 在一个支持HTML5的浏览器中 不需要安装任何插件就能播放音频和视频 原生的支持音频和视频 为HTML5注入了巨大的发展
  • [脑科学]-这才是心理学

    这本书出了第9版了 不长 写的挺好 国内也有一本 同样的名字 隋xx写的 文笔也很好 可惜不太有名 1 心理学 就是研究大脑是如何工作的学科 嗯 一定要明白这一点 各种心理学实验就是黑盒测试大脑 脑外科就是白盒研究大脑 要想变得聪明之类的
  • 欢聚集团 -- 前端一面

    面试形式 牛客网面试 一面40多分钟 自我介绍 面试内容 手写事件委托 手写AJAX IE怎么处理 常见的http状态码 和 的区别 js隐式转换 闭包 闭包的结构 原型 原型链 对象的深浅拷贝 深拷贝的实现 怎么获取js对象的自身属性 j
  • Android多个fragment懒加载的坑(卡顿)

    在Android开发中 有很多种情况都是viewpage fragment左右滑动进行布局的 例如下面的今日头条 在今日头条app上 我们可以看到 其顶部都是一栏的类型数据源 可滑动 可联动下面的viewpage里的fragment 但是很
  • django配置DJANGO_SETTINGS_MODULE

    DJANGO SETTINGS MODULE 使用Django时要通知Django当前使用的是哪个配置文件 可以改变环境变量 DJANGO SETTINGS MODULE 实现这一点 当我们使用manage py运行起本地的web服务器时
  • 常见的代码优化技术

    常见的代码优化技术有 复写传播 删除死代码 强度削弱 归纳变量删除 如果有同学有研究过这部分内容 并总结过 有更好的答案 请联系我删除本篇非原创解答 1 复写传播 a d e b d e c d e gt t d e a t b t c t
  • 专治疑难系列 - 解决win11中xbox开机自启问题

    博客主页 Passerby Wang的博客 CSDN博客 系统运维 云计算 Linux基础领域博主 所属专栏 专治疑难系列 上期文章 专治疑难系列 无法激活网络的解决方法 如觉得博主文章写的不错或对你有所帮助的话 还望大家多多支持呀 关注
  • RabbitMQ与KafKa区别

    在应用场景方面 RabbitMQ 遵循AMQP协议 由内在高并发的erlanng语言开发 用在实时的对可靠性要求比较高的消息传递上 kafka是Linkedin于2010年12月份开源的消息发布订阅系统 它主要用于处理活跃的流式数据 大数据
  • 中国知网html如何复制,中国知网如何快速导出参考文献的格式? 来看看吧

    写论文时 需要很多引文及注释 就需要把参考文献标注上 按照参考文献的引文格式一点一点整理很麻烦 涉及大量文献时费时费力 中国知网有快速导出参考文献格式的功能 可单个导出 也可以大量导出 方便实用 工具 材料 中国知网 论文 操作方法 01
  • idea彻底改java项目名(详细说明各个地方改名的作用)

    需求分析 要将手头的java项目文件夹改名 经常会出现以下问题 无法运行 只是改了别名 打war包 jar包的包名还是不变 解决方案 以下将项目名Easyfile改为驼峰命名的EasyFile 改项目名称 此时只改了别名 改文件夹名 解决编
  • Yolov3中Anchor box和confidence的理解(公式未编辑 待续....)

    Anchor box bounding box prior Anchor box原理解释 1 Anchor box其实就是从训练集的所有ground truth 中通过统计聚类的方法 k mean 得到常用的尺寸大小 比如 在某个训练集中最
  • MySQL有哪些锁

    这次 来说说 MySQL 的锁 主要是 Q A 的形式 看起来会比较轻松 在 MySQL 里 根据加锁的范围 可以分为全局锁 表级锁和行锁三类 全局锁 全局锁是怎么用的 要使用全局锁 则要执行这条命 flush tables with re
  • flutter 自定义组件-抽奖大转盘

    import dart async import dart math import dart ui as ui import dart ui import package demo widget luck luck entity dart
  • TypeScript 变量声明 —— 类型断言(Type Assertion)

    类型断言 Type Assertion TypeScript 允许你覆盖它的推断 并且能以任何你想要的方式分析它 这种机制被称为类型断言 类型断言使用 as 关键字或者
  • 查出反向木马的反向连接域名

    来源 ttian net 反向木马的主要种植手段是通过IE的众多漏洞 bt下载时不小心运行 或者来路不明的软件 使未打补丁的用户点击之后下载运行了木马程序 而这些用户基本都是拥有动态IP的个人用户 若不使用反向连接的方式 势必无法长久控制