木马前世今生:上线方式发展及新型上线方式实现
haoteby 2025-05-21 13:50 4 浏览
0×00 前言
在讲文章主题之前,我们还是习惯性地聊(che)一(che)聊(dan)。
远程控制木马大家都不陌生,尤其是早期接触黑客技术的人,应该可以发现早在2007-2009年,这段时间内,国内的“黑客技术”正是蓬勃发展的时期,那个时候,可谓是“战乱纷争,万马奔腾”的年代,当时流行各种黑客技术,其中就包括远程控制技术。
各种远程控制木马满天飞,无论是最早葛军编写的“灰鸽子”,还是各种后起之秀的RAT,简直不胜枚举,各种被阉割的xxx专用版,各种新出的xxxRAT。如各类国产远控木马、上兴、PCShare、黑防的ByShell、黑洞、冰河、SRAT、暗组的DRAT、XRAT、维度等等,包括国外的一些C/S,B/S型的远控木马也传入了国内,各家似乎都在比拼谁的功能多,谁的免杀好,谁的反杀软技术强。于是,各种HOOK SSDT,Rootkit级别的木马比比皆是。可是,后来因为国家的管控,各种黑客论坛,黑客网站,黑客杂志相继关闭或消失。远控木马编写技术和木马免杀技术也不再那么流行,当初写木马做免杀的“高手”,如今早已从网络中销声匿迹。
引用王家卫导演的《一代宗师》里边的一句话——
“有的成了里子,有的成了面子,都是时势使然。”
当然,客观的讲,造成这种形势的原因也是国内安全行业的进一步发展所致。不过,我相信依旧有一帮人还在这个领域埋头探索,在努力,木马依旧可以绕过各种杀软。毕竟,“攻永远超前于防”。
0×01 传统木马上线方式概述
好了,聊(che)完了。该进入文章主题了。今天,不谈别的,只“浅谈”木马上线技术的发展。
最早的远控木马都是“主动连接”,通俗的讲是这样的:假如你要控制某人的主机A,你得在主机A上执行木马, 木马执行后会开启一个你提前配置好的端口,之后,你要与该主机A建立连接,在主控端上输入该主机A的IP和端口,才能进行控制。
不过,后来因为互联网的进一步发展,公网控制内网就出现了一定的问题。于是,“被动连接”型的木马上线技术就出现了,和“主动连接”的形式刚好相反,是木马即被控端主动来连接主控端。主控端开启一个端口,被控端去连接你配置好的IP地址。
“被动连接”也叫“反弹连接”。谈到这个不得不提两种经典的木马上线方式。一种就是FTP上线方式,另外一种就是DNS域名解析上线方式。
灰鸽子FTP上线方式如下图:
在你的FTP服务器上写入一个ip.txt,内容就是你的主控端监听的IP地址和端口。当你的IP地址改变之后,你只需要再次更新这个ip.txt的内容即可。
在配置木马的时候,只需要按照FTP上线方式的格式配置上线地址。
如下图:
对于DNS域名解析上线,一直是木马上线的最主要的方式,曾经最流行的就是3322和花生壳。木马执行后会解析你配置好的域名,然后去连接对应的IP地址的端口,进行通信。
0×02 新型木马上线方式
从大量的APT攻击案例中可以发现,当今的木马在运行的隐蔽性,通信的穿透性,功能的多样性,跨平台性等方面有了很大的突破。
在研究分析过程中,有部分木马的上线方式,开始采用第三方域名进行通信。这无疑增强了木马的隐蔽性和反追踪能力。
上线方式的说明,请看下图:
这种木马使用的第三方域名实际上是利用第三方网站能够写入并及时修改自己的通信数据。木马编写者往往会寻找知名的网站,至少不会出现宕机的情况,以保持肉鸡的持久性控制。这样的网站很多,比如说博客类网站等等。可以提前发表一篇博文,并在博文里插入控制命令,之后特制的木马,就会去获取控制命令,同时木马也可以模拟编辑博文,写入执行结果的数据。
由于TCP通信涉及到socket对象的问题,部分木马会专门使用支持php的第三方网站。并拿到webshell后,上传一个进行数据转发的php文件。这种情况下,控制被控端的流畅度可以得到保证。
而一般情况下,采用这种方式的木马都是使用了HTTP协议进行通信,由于HTTP协议是无连接的。所以不会涉及到socket对象的问题。只要被控端为自己生成一个独一无二的ID,即可与其他被控端区别开来。只要在编写代码的时候,对接受数据,发送数据,执行控制命令这三个功能模块做好处理,控制的流畅度还是可以得到一定的提升。
采用第三方域名上线的木马,在隐蔽性方面有了很大突破,而且这种做法,也可以提高木马的穿透性,对于一些防火墙来说,至少知名的网站总归是允许进行数据通信的。
0×03 第三方域名上线方式的实现思路
先把思路搞清楚。木马上线采用的第三方网站为"博客园",注册两个帐号,一个为主控端用于发出控制命令所使用的账号A,另一个是被控端发送本机信息以及控制命令执行结果所使用的账号B。用账号A创建两篇文章,一篇为木马上线测试(下文简称文章A),一篇为木马功能测试(下文简称文章B)。
被控端处理上线事务的线程设计思路如下:
上线信息的格式:
[主机名称]&[当前时间]&[主机唯一ID]
对于[主机唯一ID],如果是第一次上线会生成此ID,如果不是则会读取已经生成好的ID。
主控端处理主机上线事务的线程设计思路如下:
由于这种上线方式采用的实际上是HTTP协议通信的,所以无法像TCP通信一样,存在相关的SOCKET事件。所以,主控端还需要有一个处理主机是否在线的线程,设计思路如下:
另外,为了防止文章A的评论区有很多评论,主控端在获取完评论信息(主机上线信息),之后,添加一个删除文章A的评论的线程即可。
0×04 第三方域名上线方式的简单代码实现
接下来,我们用简单的代码实现这个demo。为了快速实现这种木马上线方式,主控端采用C# WinForm实现,客户端采用Python实现。搞清楚了设计思路,用什么编程语言去实现就是次要的事情了。
下面是被控端启动后,向文章A提交评论(上线信息)的截图:
发送上线信息后,文章A的评论截图如下:
主控端的截图如下:
功能测试的通信流程和上线测试的流程思路是相似的。在这里就不在赘述,这种上线方式虽然采用了HTTP协议通信但是和直接使用封装的HTTP协议或者是浏览器访问,是有一定的区别的。它无法进行大批量的数据传输,像文件传输这样的功能虽然也可以实现,但是"用户体验"很差,所以这种上线方式的木马,大多被用来当作一个隐蔽的后门木马,只需要有一个文件下载和CMD Shell的功能。
0×05 总结
采用第三方域名上线方式的木马设计思路,已经很明确了,但是在实际实现的过程中还存在一些不足。包括上文中用code去实现,也有很多处理事务线程和上线性能等方面需要进一步改进。所以代码在此就不提供了。大家了解了这种思路就好。另外,对于将账号B的登录信息写入客户端,是否存在一定风险?对于这个问题,大可不必细究。
“博客园”的登录信息会被登录页面的js使用key进行加密然后提交,即使你分析出了登录信息也是加密过的,并非原始明文密码。另外,登录成功后,会有一个session或者cookie,可以直接拿来当作发表评论(主机上线信息)的令牌使用。也可以将cookie的生命周期加长,延长控制时间。
文章中还有很多"易喷点",欢迎来"喷"。
0×06一点题外话
对于木马上线域名的分析和追踪,在这篇文章《浅谈从反木马角度分析怎样提高木马反跟踪能力》中作者提出了在木马上线方式的时候使用UDP+TCP协议的方法来迷惑安全研究人员。实际上,这种办法起不到任何作用。因为,要分析木马的上线域名,最直接最有效的办法就是用wireshark抓包,过滤出dns协议的数据包,很快就能分析出来。
即使你在编写木马的时候,并未对上线地址采用“硬编码”,或者使用动态数组动态生成,又或者你进行了各种加密,又或者直接写入内存等“软编码”手段,这些只能对木马上线地址的静态分析起到一定的保护作用,如果去动态调试跟踪,也是可以得到上线地址的。
对于使用域名生成算法(DGA)生成的域名,目前已经有相应的机器学习的手段去检测是否为木马的C&C域名。不过目前看起来,目前对于木马上线地址的隐藏,最好的办法就是使用第三方域名,这样可以极好的保护木马操纵者。
- 上一篇:直流电机两端电压脉冲个数
- 下一篇:周迅被曝离婚:为何她总是被伤害?
相关推荐
- 吴玮老湿手把手教你拍小溪
-
https://v.qq.com/x/page/b30253em9sc.html?pcsharecode=点击观看高清视频,吴玮老湿手把手教会。吴玮老湿手把手教你拍溪水,高清视频手把手教会。慢门拍...
- 三星将上线Windows 10版Quick Share 数据传输不再难
-
【CNMO新闻】iPhone与Mac之间联动的一大优势在于AirDrop,让苹果用户可以快速地将手机上的信息、文件等传输到电脑上,电脑传输到手机同理。但是现在,三星计划让自己的用户在Windows1...
- 当超低能耗建筑变身幼儿园,会和小朋友产生什么神奇反应?
-
随着超低能耗建筑的发展,超低能耗技术已经被应用于多种建筑的设计当中,今天我们要参观的这所幼儿园就是一所超低能耗幼儿园。通过之前的系列视频,相信大家已经了解到超低能耗技术就是节能技术,在节能的基础上又能...
- 周迅被曝离婚:为何她总是被伤害?
-
与高圣远结婚后,周迅极少谈论自己的婚姻。但就在近日,她出了大新闻。5月22日,有网友发现,高圣远常用的社交账号INS上,突然删光了与周迅的合照。过去,他的相片中,周迅至少占一半。现在,一个都没有了。全...
- 木马前世今生:上线方式发展及新型上线方式实现
-
0×00前言在讲文章主题之前,我们还是习惯性地聊(che)一(che)聊(dan)。远程控制木马大家都不陌生,尤其是早期接触黑客技术的人,应该可以发现早在2007-2009年,这段时间内,国内的“黑...
- 直流电机两端电压脉冲个数
-
直流有刷电机电枢电流波形[1]...
- 孩子开心、家长放心,这个超低能耗幼儿园有多神奇?
-
数九寒天,冷在三九寒冷冬日里小朋友的免疫力难免会有所下降容易生病这让很多家长感到困扰生病不仅会影响孩子的身体健康还会耽误孩子的上课进度接下来安小居给大家介绍一所神奇的幼儿园,不管是凛冽冬日,还是烈日炎...
- 【《报任安书》徐涛朗读】
-
《报任安书》是司马迁写给友人任安的一封回信,全文约2800多字。在回信里,司马迁以激愤的心情陈述了替李陵将军求情的前因后果以及遭遇腐刑后为完成《史记》所承受的多重压力。这是一封泣血的书信,学习这篇文章...
- LOL大神玩家鬼才创作《防御塔的心声》
-
2019英雄联盟新赛季版本已经上线,去年《英雄联盟》进行了有史以来最大的改版,进行了符文重铸,今年改版程度虽然没有那么大,但一些设定上还是会让游戏的节奏产生一些新的变化,近日B站UP主“倒悬的橘子”创...
- 无线安全的高级利用:隔离网络里你不知道的Wi-Fi隐蔽传输通道
-
2018年4月,在荷兰阿姆斯特丹HackInTheBox安全会议上,我们分享了一个关于隔离网攻击技术的议题——GhostTunnel:CovertDataExfiltratio...
- 黑客主要术语?什么是木马?什么是肉鸡?
-
本节将对常见的一些黑客术语进行简单的介绍1.肉鸡所谓肉鸡是一种很形象的比喻,比喻那些可以随意被控制的电脑,对方可以是各种电脑包括但不限于个人电脑,服务器等,在某种情况黑客进攻时会用他们干扰敌人。对直接...
- 福建38岁巨婴,身负20万债款,逼父母偿还,自己却花2万元购耳机
-
在阅读此文前,为了方便您进行讨论和分享,麻烦您点击一下“关注”,可以给您带来不一样的参与感,感谢您的支持。...
- 【IT之家开箱】Hi MateBook D 16/14图赏:轻薄护眼屏,简约设计
-
距离618购物狂欢节还有一个多月时间,手机和PC厂商基本都会争取在5.1之前完成新品铺货。近期,主打大屏护眼与高效体验的HiMateBookD16和HiMateBookD...
- ffmpeg入门篇-linux编译安装ffmpeg
-
为什么说在linux上编译安装ffmpeg最复杂?因为编译之前我们要安装很多扩展库,每个人的环境不同,要安装的编解码库或多或少都有些区别。linux下安装ffmpeg,我们以centos7...
- 万字解析Linux内核调试之动态追踪
-
文章介绍几种常用的内核动态追踪技术,对ftrace、perf及eBPF的使用方法进行案例说明。1、什么是动态追踪动态追踪技术,是通过探针机制来采集内核或者应用程序的运行信息,从而可以不用修改内...