我是木马程序
我是一个木马程序,被绑在浏览器安装包里。随着浏览器的安装,我很容易闯入这台电脑。
我躲在了 temp 目录下,这里有很多文件,来来往往的人很多,但不容易被发现。
过了一会儿,我发现好家伙,我不是这台电脑里唯一的木马。我来晚了。这台电脑的主人真是个新手,一点安全感都没有!
“喂,新来的,你为什么闯入这里?”,一个小程序发现了我,我看了一眼,差不多20KB上下。
“你是谁,我的任务不能告诉你”,我回答到。
“别紧张。我也是一个木马程序。我猜你是这样的。80%是准备偷数据的吗?但是我觉得你要白跑了,这里除了几十个G有价值的视频文件什么都没有”,男孩不屑地说。
我没有搭理他,独自找了个安静的地方,观察观察,见机行事。
端口反弹
时光飞逝,电脑里的程序们一个个休息,CPU我终于有空了,准备好了数据和代码,打算大干一场。
我忙得满头大汗,不知道男孩不知道什么时候又出现了。
“好家伙,没看见啊,你竟然是个挖矿木马!”,小子坏笑道。
“嘘!小声点”,我赶紧堵住了他的嘴。
这小子力气挺大的,挣开了,“怕什么,这里没有杀毒软件,我们可以随便玩!”
“难怪我进来这么容易,连杀毒软件都没有,这台电脑的主人心也够大!”
之后,我准备监控一个端口,等待外面的同伙进来保持联系。
“你在干嘛?”,小个子问。
“监控端口,等我的同伙连上来,这样我们就可以上线了。”
“你不能这样做。虽然这里没有杀毒软件,但还是有防火墙,外面很容易连接。”,小个子说。
“那咋办?”
“外面不允许连接,你可以主动连接啊!你可以伪装成浏览器,连接你哥哥的80端口,防火墙看到80,将作为一个普通的互联网请求,一般会释放,这个控制端和服务端反向连接操作,称为端口反弹,你出来混合没有人教你,这个水平也是木马?”
这家伙说的我都有些不好意思了,按照他的建议,我成功连接到了我的控制服务器,随时等待他给我下发指令。
这样持续了几天,每天晚上空闲的时候,我都开始工作,一直很顺利,直到···
DNS隐蔽通信
那天,小个子气喘吁吁地跑过来,告诉我一个坏消息:“不好,就在刚才,电脑主人安装了杀毒软件,最近都比较低调,让我们保持沉默吧!”
我很快切断了通信连接,不敢轻举妄动。
几天后,我有点焦虑,总是这么潜伏不是办法,必须联系外面啊!外面的兄弟一定很焦虑!
小个子看到了我的焦虑,给了我一个想法:“可以试试用DNS协议秘密传输数据”
“DNS?如何传输数据?”
“您可以使用数据base64编码后,作为域名字段,通过发送DNS以分析请求的方式发送数据!”,小个子给我画了一张示意图。
“这个域名能传输多少数据少数据!”,我提出了质疑。
“你笨,请求不够,多发几个!”
我打算试一试,看看是否可靠。
不要说,我竟然成功地传递了数据,但在杀毒软件眼皮下顶风作案,心里还是挺忐忑的。
ICMP隐蔽通信
这个动作用了几天就不好用了。数据发送失败,80%被盯上,我又找到了小木马。
“看来用DNS域名有点太高调了。别担心,你也可以用它ICMP协议传输。”,小子又给了我一招。
“这是什么协议?”
“ICMP(Internet Control Message Protocol)就是Internet用于控制报文协议IP控制信息在主机和路由器之间传输。控制信息是指 *** 本身的信息,如 *** 无法连接,主机是否可用,路由是否可用。 你看,这是它的数据格式:”
“我知道,我可以在报纸的数据部分传输我想发送的内容”
“不错!ICMP这个东西不是传输层的协议,不会打开和使用端口,么容易引起注意ping程序都是用它来工作的,你可以冒充他偷偷和外面通信”,小木马自信地说。
这家伙知道很多。根据他教我的,我又用了。ICMP协议偷偷跟外面联系上了,希望这一次别再被发现了。
HTTP隐蔽通信
不幸的是,天不遂人愿啊,这次比以前短了,才第三天就失效了!
“好家伙,这个安全软件可以啊,看来逼我放大招式,我们这次换成HTTP来传输”,小木马说。
“啥?用HTTP?不是更容易暴露吗?”,我问到。
“你不知道,最危险的地方是最危险的地方。HTTP流量上网这么大,混在里面不容易引起注意!而且,我还有一个绝招。···”,这家伙假装神秘,说了一半又咽了回去。
“你快说,是我急死了”,我催促到。
“为了不引起注意,传输的数据必须编码。HTTP不是基于文本的传输协议,我们可以使用它tab表示1,空格表示0,所以即使被抓住也是空白,什么也看不见,怎么样?”
好家伙,这招真的很棒!
我很快重新编码数据,一个接一个地封装HTTP在数据包里,一个个发出去。
已经好几天没发现了,看来这个招数还挺好用的。
就在我骄傲的时候,小木马又传来了一个坏消息:“赶紧找个地方躲起来。安全软件全面扫描···”
我很快切断了所有的通信连接,关闭了所有活动的过程。我不知道我是否能逃脱这场灾难~
隐藏是一匹木马最重要的能力。如果你不能隐藏它,那就是在出师之前先死。
隐藏主要包括三个方面:
- 文件隐藏
- 进程隐藏
- 通信隐藏
本文以故事的形式介绍了木马常用的隐藏通信方式,文章比较简单,但实际情况远比这复杂。
在实际应用中,隐藏通信的核心是将信息数据隐藏在正常的通信流量中而不被发现,这涉及到 *** 协议、解密技术,甚至信息理论和编码知识的综合应用。
面对文章中的几种方式,如果要做安全检测,打算如何判断是可疑流量还是正常通信?
本文转载自微信公众号「宇宙编程技术」,可以通过以下二维码关注。转载本文请联系宇宙编程技术公众号。