对于Java程序员来说,null是令人头痛的东西。时常会受到空指针异常(NPE)的骚扰。连Java的发明者都承认这是他的一项巨大失误。那么,有什么办法可以避免在代码中写大量的判空语句呢?有人说可以使用 JDK8提供的 Optional 来避免判空,但在嵌套比较深的对象中,需要不断地判空,用起来还是有些麻烦。本篇博文设计了一种可以链式调用对象成员而无需判空的工具,相比原有的if nul
前言最近事情比较多,也没心思静下来好好学点新东西。面试的时候被问到反序列化过程,就回忆起个大概开头结尾的样子真蛮尴尬的,炒个冷饭,回顾一下之前学过的常用反序列化。 ps:如有错误烦请指正,不胜感激。(画图可能哪错了没注意到)Commons-CollectionsCommons-Collections <= 3.2.1CC1通过动态代理类AnnotationInvocationHandle
转载 2024-01-12 13:43:46
747阅读
写在前面Java Commons Collections的利用也被称为cc,是在学习反序列化漏洞必不可少的一个部分。希望能由简到繁来一起了解学习下它的利用。前置知识(序列化/反序列化)java序列化核心也就是:writeObject方法,即序列化类对象。readObject方法,即反序列化类对象。注意:反序列化类对象是不会调用该类构造方法serialVersionUID(根据这个版本号来判断序
转载 2023-08-16 20:30:10
18阅读
QuasarRAT AdwindAdzokArcomBabylonBlacknixBlue BananaBozokCoringaDarkCometDRATGh0stHuigeziMiniRATNanoNanoCoreNetWirePandoraPonySpyGatexRATXtreme RAT
原创 2023-05-31 10:39:17
67阅读
渗透学习不安全的反序列化之PHP反序列化 文章目录渗透学习前言*本文只做学习用途,严禁利用本文提到的技术进行非法攻击,否则后果自负,本人不承担任何责任。*一、CTF例题二、PHP反序列化漏洞和XSS跨站脚本总结 前言本系列用于记录本人渗透学习的过程,主要内容围绕Owasp TOP 10展开。接上篇不安全的反序列化之反序列化基础用简单案例接触了PHP反序列化,但对该漏洞的利用和实际场景浅尝辄止 。这
Commons Collections:Java中有一个Collections包,内部封装了许多方法用来对集合进行处理,CommonsCollections则是对Collections进行了补充,完善了更多对集合处理的方法,大大提高了性能。
原创 精选 2024-01-20 15:06:41
588阅读
返序列化用到的类分析 ChainedTransformer public ChainedTransformer(Transformer[] transformers) { super(); iTransformers = transformers; } public Object transform ...
转载 2021-10-25 09:01:00
72阅读
2评论
# 如何搭建Java工具:新手指南 作为一名新入行的开发者,学习如何搭建一套Java工具是一项非常重要的任务。Java工具通常包括编译器、构建工具、依赖管理工具、以及版本控制工具等。本文将指导你一步步完成这项工作。 ## 流程概述 以下是搭建Java工具的基本步骤: | 步骤 | 描述 |
原创 2024-08-17 06:44:33
102阅读
返序列化用到的类分析 ChainedTransformer public ChainedTransformer(Transformer[] transformers) { super(); iTransformers = transformers; } public Object transform ...
转载 2021-10-25 09:01:00
182阅读
2评论
一、反序列化安全问题的产生序列化及反序列化的场景在程序开发中经常会用到,比如通过浏览器上传文件到应用,如果JAVA应用对用户输入,即不可信数据做了反序列化处理,那么攻击者可以通过构造恶意数据输入,让反序列化产生非预期的对象,非预期的对象在产生过程中就有可能带来任意代码执行。因此我们首先需要构造恶意数据,常用的工具是Ysoserial,下载链接:​​https://github.com/frohof
原创 精选 2022-05-29 10:02:29
996阅读
2点赞
1评论
从论文里抠出来的工具列表如下,后面有黑产的工具以及网络上摘录的工具:分类:(1)有僵尸网络(是否代理服务器)&没有的==》(2)单一url&混合url(多线程,压测为主,demo工具居多) 1. 超强CC攻击器:只要输入攻击目标服务器的IP地址,设置好相关参数即可进行攻击。可设置攻击线程、攻击频率,利用大量代理服务器形成僵尸网络(设置代理服务器ip列表)。CC攻击工具致命
转载 2023-09-08 13:47:37
0阅读
java中本地命令执行常常用到反射+Runtime类Class rtClass = Class.forName("java.lang.Runtime"); Object rt = rtClass.getMethod("getRuntime").invoke(rtClass); rtClass.getMethod("exec",String.class).invoke
背景部门内部的trace的路信息通过开发插件包进行收集的,包括RPC的mock工具。收集下来的调用类似如下:1589802250554|0b51063f15898022505134582ec1dc|RPC|com.service.bindReadService#getBindModelByUserId|[2988166812]|{"@type":"com.service.models.Resu
## Java调用工具分析工具实现教程 ### 1.整体流程 首先,让我们通过以下表格展示整个实现Java调用工具分析工具的流程: | 步骤 | 操作 | | ---- | ---- | | 1 | 配置并搭建Java环境 | | 2 | 下载并安装调用工具 | | 3 | 配置调用工具 | | 4 | 分析调用数据 | ### 2.具体步骤及代码 #### 步骤1:配置并搭建
原创 2024-05-17 05:43:42
222阅读
微服务调用介绍在微服务架构下,调用跟踪包括前端到后端的调用、单个服务内部方法之间的调用、微服务之间的调用、应用服务和数据库之间的调用、应用服务和第三方服务中间的调用,例如Redis,MQ。 调用跟踪的作用有:定位多个微服务调用故障时哪个是故障点、性能分析、SQL分析、方法或服务调用合理性分析、调用逻辑和数据流分析。常用调用选型: Zipkin是Twitter开源的调用链分析工具
转载 2023-06-26 23:05:37
370阅读
本文讲解了Java安全中如何使用LazyMap类来构造cc1,详细易懂,小白首选
原创 2024-02-12 13:31:01
69阅读
 pinpointzipkincatSkywalkingJaegerOpenTracing兼容不支持支持不支持支持支持客户端支持语言java/phpJava/c#/goJavaJava/.NET/NodeJs/phpJava/c#/go/php/node存储Hbasees/mysql/cassandra/内存mysql/hdfsES,H2,mysql,TIDB,sharding sphe
skywalkingAPM(应用性能管理)工具路追踪 https://www.sohu.com/a/319806744_100123073 性能监控SkyWalking是一个开源的观测平台,用于从服务和云原生等基础设施中收集、分析、聚合以及可视化数据。SkyWalking 提供了一种简便的方式来清晰地观测分布式系统,甚至可以观测横跨不同云的系统。SkyWalking 更像是一种现代的应用程序性能
转载 2024-02-19 00:07:33
78阅读
在列出DevOps 工具之前,介绍一下什么是DevOps,虽然DevOps这个概念现在还没有标准的定义,但我们可以追溯一下其过去九年的历史发展过程(从2009年~2017年),列出几个相对明确又有所不同不同的定义,从而能够比较全面了解DevOps的内涵。【2009】 DevOps是一组过程、方法与系统的统称,用于促进开发、技术运营和QA部门之间的沟通、协作与整合;【2011】快速响应业务和客户
Java中可以使用HttpURLConnection来请求WEB资源。1、URL请求的类别分为二类,GET与POST请求。二者的区别在于:a:) get请求可以获取静态页面,也可以把参数放在URL字串后面,传递给servlet,b:)post与get的不同之处在于post的参数不是放在URL字串里面,而是放在http请求的正文内。2、URLConnection的对象问题Java代码URL url
  • 1
  • 2
  • 3
  • 4
  • 5