木马也叫RAT,或者叫远程管理软件,关于如何隐藏IP地址,应该有不少人在研究,比如ROOTKIT实现文件隐藏、进程隐藏、网络连接隐藏等等。本人才疏学浅,没有深入研究过ROOTKIT,只是谈谈应用层的技术。
下面给出流程图:
解释一下流程图的原理,UDP网络协议是面向无连接的,和TCP协议的三次握手不同。
用系统自带的查看网络连接的命令 netstat -ano 是查看不到远程IP地址和端口的,用第三方软件或者工具也同样查看不到,如以前的冰刃、360网络连接查看器等等。
下面结合源代码和效果图来说明下IP地址是如何隐藏的。
<以下代码请点击最下方“阅读原文”>
被控端关键源代码(C++)
控制端关键源代码(vb.net)
上面的代码只是用来测试用的,真正的木马源代码会有少量的变化。
下面是测试程序效果图。
被控端:
控制端:
控制端我这里用的是内网的IP地址,用公网IP地址也是一样的效果。
到了这里有人会问, 最后你这里还是会用TCP 来建立连接, TCP连接就会有网络连接的远程IP地址。是的,没错,确实能看到网络连接、IP地址也能查看到。这样是不是就没有必要之前的步骤了, 我个人看法是有必要; 为什么? 因为绝大多数木马都是开机自启动的, 自启动后控制端并不一定处于监听状态。
可能1个小时,也可能一天或者一个月。只要控制端不处于监听状态,被控端就一直查不到远程的IP地址。还有一个步骤这里说明下,当控制端发送完指令后,比如文件上传下载、执行命令、屏幕捕获等等木马常用的功能, 当发送完这些指令后, 控制端可以随时发送断开 TCP 连接的指令,让被控端再次进入UDP发送消息的流程中,这样 IP 地址再次隐藏。
最后是高潮部分。
看下远控程序的实际效果图:
作为观看这篇文章的奖励, 我有一个小礼物送给大家。
xmap
主要功能:获取局域网在线IP地址,MAC地址,MAC设备制造商.
使用方法:
方法一:直接命令行下执行xmap.
方法二:xmap 本机IP 本机子网掩码
注意:参数中间都有空格。
效果图如下:
下载地址:
链接: http://pan.baidu.com/s/1jGBwbkE 密码: b8p9
投稿:南拳daddy,本文属FreeBuf原创奖励计划,未经许可禁止转载