-
Notifications
You must be signed in to change notification settings - Fork 149
YSOMAP食用指北
wh1t3P1g edited this page Apr 15, 2022
·
6 revisions
使用ysomap你需要有以下的基础:
- 对Java相关漏洞有一个基础的了解
ysomap共有两个用途:
- 生成序列化后的payload
- 利用ysomap的exploit包进行攻击
当前版本支持以下命令,且当前版本支持tab键补全命令
ysomap > help
help print this message
list <type> list exploits, bullets and payloads
use <type> <name> choose a exploit/payload/bullet
set <key> <value> set exploit/bullet's arguments
run run current session
show <type> show payload/bullet/exploit details
clear clear current sessions
session [c|i] recover to a session or create a new session
sessions print current running exploit sessions
stop stop current session
kill [uuid|all] kill sessions, like 'kill uuid' or 'kill all'
exit exit ysomap
其中以下命令:
- list [eploits|bullets|payloads] 查看当前版本ysomap所支持的exploits、payloads、bullets
- use 设置当前需要使用的exploit/payload/bullet
- set 设置当前的配置
- run 进行攻击或生成payload
- session session管理,1. session create 创建一个新的session 2. session insert uuid 恢复到指定uuid的session
- sessions 查看当前运行的sessions
- kill <uuid/all> 清除指定uuid的session
Updated:
设置特殊的key
- serialVersionUID 用于修改uid
set serialVersionUID oldUID1:newUID1;-8137949907733646644:-2491254866810955844
- serializeType 用于修改序列化器类型
set serializeType xxx
- encoder 用于添加编码器,目前只支持base64
set encoder base64
- output 用于修改最后生成内容的输出位置,支持console和file两种
set output console/file
接下来,介绍以下两种流程
当你需要使用ysomap生成特定的序列化数据时
第一步:use payload xxxx
设置一个payload
第二步:show options
获得当前payload的配置信息,会提示可以选择的bullet信息
第三步:use bullet xxxx
给当前的payload装上子弹(具体能达成的利用方式)
第四步:show options
可以看到包括payload和bullet的配置信息
第五步:set xxx xxx
设置当前需要配置的内容
第六步:run
配置完成后,执行并生成相应的序列化数据
当生成的序列化数据为json或xml时,序列化后的数据将直接打印在终端上;当生成的序列化数据为二进制数据,则会在当前目录生成一个obj.ser
文件
当你需要使用ysomap进行攻击时
第一步:use exploit xxxx
设置一个exploit
第二步:show options
获得当前exploit的配置信息,会提示需要设置payload或其他配置
第三步:如果需要设置payload,过程参考上面的步骤;
第四步:如果不需要设置其他payload,或其他设置已经设置完成 set xxx xxx
设置当前需要配置的内容
第五步:run
配置完成后,执行并进行相应的攻击
待补充