随笔分类 -  Java

摘要:JavaWeb Java Web 组件 首先献上Tomcat架构神图: Servlet Servlet容器: 运行在Web服务器上的程序,作为来自HTTP客户端的请求和HTTP服务器上的数据库或应用程序之间的中间层,它负责处理用户的请求,并根据请求生成相应的返回信息提供给用户。 ​ 大体原理图如下: 阅读全文
posted @ 2024-03-04 22:55 Icfh 阅读(34) 评论(0) 推荐(0)
摘要:Java 双亲委派机制 首先得了解一下JVM和ClassLoader JVM 当前主流的有三种JVM: Sun公司:HotSpot BEA:JRockit IBM:J9VM 首先了解一下Java程序从编译到执行的整个生命周期: .java (经过javac.exe编译成class文件)=> .cla 阅读全文
posted @ 2024-03-01 22:54 Icfh 阅读(46) 评论(0) 推荐(0)
摘要:Java反射 概念 Java反射指在程序执行时: 对于类 ​ 能够获得类的所有属性和方法 对于对象 ​ 能够通过对象调用它的任意一个方法和属性(包括私有的方法和属性) 这种动态获取并调用类的方法的机制称为Java反射 获取一个类 通过类名 包括查看类的静态变量以及通过完整类名获取 public cl 阅读全文
posted @ 2024-03-01 15:38 Icfh 阅读(124) 评论(0) 推荐(0)
摘要:web-log 文件下载 访问地址后直接下载了log文件,BurpSuite抓包,在http响应报文字段中可以查看 这个log文件的命名是以日期,尝试查看当天的日志,发现了Java的SpringBoot服务 所以可以下载jar包 日志中的logname是要传的参数,可以实现web目录下的文件下载 代 阅读全文
posted @ 2023-09-20 19:59 Icfh 阅读(128) 评论(0) 推荐(0)
摘要:基础知识 1. Apache Commons Beanutils Apache Commons BeanUtils 是 Apache Commons 项目的一部分,它是一个用于简化 Java 对象的操作和属性访问的工具库。具体来说,它提供了一组用于操作 JavaBean 对象的工具和方法,使开发人员 阅读全文
posted @ 2023-09-20 19:57 Icfh 阅读(73) 评论(0) 推荐(0)
摘要:Commons Collections 7 基础知识 1.HashTable 散列表,也称为哈希表,以key-value形式进行访问的数据结构 HashTable具有线程安全:多个线程同时访问它时,不会导致数据不一致。 相对于HashMap、ConcurrentHashMap等线程安全性散列表,Ha 阅读全文
posted @ 2023-09-14 15:49 Icfh 阅读(39) 评论(0) 推荐(0)
摘要:环境搭建 需要依赖项如下: 调试分析 这条链子是基于CC2的,在CC2基础上替换了将InvokerTransformer替换成InstantiateTransformer,从而使用 Gadget Chain /* Gadget chain: ObjectInputStream.readObject( 阅读全文
posted @ 2023-09-12 23:01 Icfh 阅读(31) 评论(0) 推荐(0)
摘要:基础知识 1. Java 反射 1.1 getConstructor getConstructor 是Java反射API中的一个方法,用于获取类的公共构造方法的引用。构造方法是一种特殊的方法,用于创建类的实例(对象),并且通常在对象创建时进行初始化。 getConstructor的函数原型: pub 阅读全文
posted @ 2023-09-12 21:40 Icfh 阅读(149) 评论(0) 推荐(0)
摘要:基础知识 1. BadAttributeValueExpException 相关源码 可以看到这个异常类的支持序列化和反序列化,同时在反序列化readObject函数中会涉及到toString函数 public class BadAttributeValueExpException extends 阅读全文
posted @ 2023-09-05 22:36 Icfh 阅读(61) 评论(0) 推荐(0)
摘要:JDK8u71大版本中AnnotationInvocationHandler.readObject被修改了,为了使得CC1能够利用,又造了一条CC6 CC6解决的是CC1在高版本 jdk 上无法利用的问题 这里搬一下web佬Boogipop的整理图: ![image.png](https://cdn 阅读全文
posted @ 2023-09-03 16:02 Icfh 阅读(154) 评论(0) 推荐(0)
摘要:## 环境搭建 - Commons Collections 4.0 - JDK8 - ysoserial-master ## 基础知识 ### 1.Java字节码加载过程 学习一下p神的文章: ![image-20230816221641337](https://icfh-imgs-13133911 阅读全文
posted @ 2023-08-17 00:19 Icfh 阅读(44) 评论(0) 推荐(0)
摘要:**算是咕咕了好久** 所谓的CC链分析,是指针对于Apache Commons Collections的反序列化分析。 > Apache Commons Collections,简单而言,是Apache开源项目的一个重要组件。主要提供了各种数据结构的实现 ## 环境搭建 需要使用到commons- 阅读全文
posted @ 2023-08-16 16:50 Icfh 阅读(101) 评论(0) 推荐(0)
摘要:MyBatis-Plus是针对于MyBatis单表查询进行功能增强的框架,在多表查询上并未修改 在实现复杂关系映射时,可以使用@Results、@Result、@One、@Many注解组合完成复杂关系的配置 ## 多表查询小demo 按照教程写的时候踩了个坑, 弄了好久才弄出来 > 总的思路是: 要 阅读全文
posted @ 2023-08-13 00:04 Icfh 阅读(112) 评论(0) 推荐(0)
摘要:# 0x05 MyBatis & MyBatis-Plus ## ORM ORM(Object Relational Mapping,对象关系映射)是为了解决面向对象 对象自动持久化或者数据库数据读取的一项技术 ![image-20230808233136360](https://icfh-imgs 阅读全文
posted @ 2023-08-12 10:56 Icfh 阅读(30) 评论(0) 推荐(0)
摘要:本小节将介绍SpringBoot中的静态资源访问配置,文件上传以及拦截器。 实现一个文件上传和查看文件的简易SpringBoot Demo! ## 静态资源访问配置 主要是怎么做好文件和web访问下的映射关系 比如,在我的`src/main/resources`路径下,有如下层级关系 ![image 阅读全文
posted @ 2023-08-09 15:54 Icfh 阅读(42) 评论(0) 推荐(0)
摘要:## Restful API风格 RESTful是目前流行的互联网软件服务架构设计风格。 - 每一个`URI`代表一种资源 - 客户端使用`GET、POST、PUT、DELETE`四种表示操作方式的动词对服务端资源进行操作:`GET`用于获取资源,`POST`用于新建资源(也可以用于更新资源),`P 阅读全文
posted @ 2023-08-08 23:21 Icfh 阅读(36) 评论(0) 推荐(0)
摘要:## MVC架构 MVC架构的全称为 > M:model 模型 用于存储数据 > > V:view 视图 用于展示数据 > > C:controller 控制器 用于协调上述二者 我们一般发送HTTP请求都是由Controller进行拦截,然后Controller中有相应的处理逻辑。 向Model获 阅读全文
posted @ 2023-08-08 11:41 Icfh 阅读(24) 评论(0) 推荐(0)
摘要:## 什么是热部署 考虑到开发过程中,如果因为某个地方修改代码而要重新运行项目,则非常麻烦。。。 所以有了热部署,允许在边运行的时候,边修改项目代码然后边编译再运行 ## 配置热部署 - 导入依赖 ```java org.springframework.boot spring-boot-devtoo 阅读全文
posted @ 2023-08-07 23:22 Icfh 阅读(27) 评论(0) 推荐(0)
摘要:## 前言 此系列将记录SpringBoot的学习 ## 记录 ### 环境 - IDE:IDEA2023 - Java ### 如何构建项目 在新建项目中选择`Spring Initializer` ![image-20230807160202489](https://icfh-imgs-1313 阅读全文
posted @ 2023-08-07 16:13 Icfh 阅读(23) 评论(0) 推荐(0)
摘要:# Java反序列化(0):URLDNS的反序列化调试分析 URLDNS链子是Java反序列化分析的第0课,网上也有很多优质的分析文章。 笔者作为Java安全初学者,也从0到1调试了一遍,现在给出调试笔记。 ## 一. Java反序列化前置知识 > Java原生链序列化:利用Java.io.Obje 阅读全文
posted @ 2023-07-12 12:28 Icfh 阅读(67) 评论(0) 推荐(0)