自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 收藏
  • 关注

原创 CodeQL入坟篇

可以通过修改查询 select 语句来控制分析结果在源代码中的显示方式。这里可以利用警报查询的方式,警报查询必须在其元数据中 @kind problem 定义属性。Element和String。/***/这个例子的逻辑:首先定义两个类变量`c`和`superclass`去获取数据库中所有的类。**`getASuperType()`**这是codeql提供的类方法,用来获取类的**直接父类**。所以当c继承某个父类时,就会被显示。

2024-09-19 23:31:47 1977

原创 RuoYi代审(二)——4.5.0配置类、注解和定时任务

AOP即面向切面编程,能将业务逻辑和非业务逻辑分离、解耦。(1)Aspect(切面)切面是指分离处来的非业务逻辑,例如日志记录功能。@Aspect(2)Advice(通知)定义切面在什么时候执行,就是执行顺序。通知类型包括:Before:方法执行前After:方法执行后,无论方法结果如何AfterReturning:方法成功执行后AfterThrowing:方法抛出异常退出时执行Aroud:方法执行前后运行,替换方法,并且可以控制方法是否执行@Aspect@Before。

2024-09-19 15:46:26 1275

原创 RuoYi代审(一)——4.5.0环境搭建和项目架构

创建一个数据库RuoYi4.5.0,并执行上图sql文件中的语句。我这里用的是Navicat,随便就好。用IDEA打开源码,修改数据库连接:解压,运行redis-server.exe文件即可IDEA启动项目,浏览器访问:http://localhost:80,出现下面页面即环境搭建成功。

2024-09-19 15:46:08 367

原创 net安全(二)——asp.net

ViewState是类Control中的一个域,其他所有控件通过继承Control来获得了ViewState功能。它的类型是system.Web.UI.StateBag,一个名称/值的对象集合。同时,ViewState被称为视图状态,就是当前运行页面的一种状态。通常用来保存Web页面信息及所含控件的值。ViewState是ASP.NET中用来保存WEB控件回传时状态值一种机制。在WEB窗体(FORM)的设置为runat="server",这个窗体(FORM)会被附加一个隐藏的属性_VIEWSTATE。

2024-09-19 13:53:40 2073

原创 net安全(一)——C#语法

单问号用于对 int、double、bool 等无法直接赋值为 null 的数据类型进行 null 的赋值,意思是这个数据类型是 Nullable 类型的。但是,属性返回或设置一个特定的数据成员,而索引器返回或设置对象实例的一个特定值。C# 是 .Net 框架的一部分,且用于编写 .Net 应用程序,VB也是用来编写net程序的。使用委托的这个有用的特点,您可以创建一个委托被调用时要调用的方法的调用列表。属性(Property)是域(Field)的扩展,且可使用相同的语法来访问。方法定义了类的行为。

2024-09-19 13:53:35 1059

转载 Tomcat架构与源码分析(转载)

此外。

2024-08-31 23:29:14 100

原创 Java反序列化(四)——CC4、CC2

最近比较忙,CC5和CC7先不写了,写一篇大半天。引用我老学长John的图。

2024-08-15 12:44:41 923

原创 Java反序列化(三)——CC6、CC3

问题2解决:其实从这里的代码逻辑上看,只要superClass.getName().equals(ABSTRACT_TRANSLET)成立,_transletIndex就会赋值为i(>0),这样就不会走_auxClasses的逻辑,下面

2024-08-14 17:03:00 1410

原创 Java反序列化(二)——URLDNS链、CC1链

MapEntry这一种类来说,当Map遍历Entry(一个键值对)时,其底层就会将Map封装进MapEntry中,所以只需要遍历TransformedMap的Entry,并在遍历的过程中调用setValue,就能进入TransformedMap.checkSetValue(Object)中。而在遍历时,利用的是第一个参数Map,所以需要put个键值对进去,这样在遍历是才会非空,进入循环的逻辑里。

2024-08-13 16:57:34 1512

原创 Java反序列化(一)——基础知识

Java程序在运行钱需要先编译成.class文件,这个文件的内容被称为字节码,然后调用加载字节码,每一个类都会在方法区保存一份它的元数据,在堆中创建一个与之对应的Class对象。类的生命周期,经历7个阶段,分别是加载、验证、准备、解析、初始化、使用、卸载。除了使用和卸载两个过程,前面的5个阶段加载、验证、准备、解析、初始化的执行过程就是类的加载过程。验证、准备、解析合成为连接过程。

2024-08-10 22:27:43 878

原创 Struts2漏洞复现(一)——开发基础及执行流程

struts2相当于SSM架构中的springmvc,主要负责web层,作为控制器来建立模型与视图之间的数据交互。其核心内容包括:interceptor、action和valuestack。

2024-08-03 23:43:41 700 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除