- 博客(13)
- 收藏
- 关注
原创 java内存马学习记录(一)Tomcat Listener内存马
这里的request是org.apache.catalina.connector.Request,实现了HttpServletRequest接口,因为jsp本质是servlet,可以直接调用。接口的监听器一般作用于tomcat初始化启动阶段,此时客户端的请求还没进入解析阶段,不适合用于内存马。Request类型的Listener触发难度比较低,直接访问就可以,适合注册作为内存马。Listener是最先被加载的,Listener分以下几种。接口应用于各个对象事件的监听,有许多继承它的接口。
2023-03-18 20:38:54
281
原创 Java rmi-codebase记录
不得不承认能学会这么多利用姿势全靠站在巨人的肩膀上8u191后的JNDI注入利用:这篇文章介绍的RMI攻击方法在低版本比较适用搞懂RMI、JRMP、JNDI-终结篇:三梦师傅的文章,更侧重代码调试和RMI的原理,写文章的思路也是针对JNDI利用,按照不同的jdk版本介绍相应的攻击手法。Java RMI远程利用分析:长亭师傅写的文章,主要在死磕rmi服务这块给了不少思路,缺点是代码和命令贴的不是很全一次攻击内网rmi服务的深思bsmali4师傅写的,关于如何绕JEP290写的相当详细。
2023-03-16 16:59:30
532
原创 codeQL学习记录(一)
CodeQL学习记录(一)记录官方教学语法题的答案1 Find the thief根据下述问题描述找出小偷难点在于9、10、11的聚合语句QuestionAnswer1Is the thief taller than 150 cm?yes2Does the thief have blond hair?no3Is the thief bald?no4Is the thief younger than 30?no5Does the thi
2022-04-30 16:10:57
135
原创 pikachu靶场记录
Pikachu靶场记录0x01 暴力破解基于表单的暴力破解没什么好说的,burpsuite找个字典直接爆破完事。验证码绕过(on server):刷新页面的时候,会向服务器的验证码接口发送请求,返回的是验证码图片和正确的验证码。这里有两种思路,一个是采用爬虫不停请求最新的验证码,然后爆破提交就是了,太讨巧。比较重要的是另一种思路:tips提示的验证码不会失效,利用Repeater模块可以验证。阅读源码可以发现请求服务器验证码接口后,服务器会把新的正确的验证码写在$_SESSION['vcod
2022-04-03 15:28:25
227
原创 CVE-2019-9615复现
CVE-2019-9615复现描述An issue was discovered in OFCMS before 1.1.3. It allows admin/system/generate/create?sql= SQL injection, related to SystemGenerateController.java.分析根据描述,跟进到SystemGenerateController.java与参数sql相关,跟进到getPara()这里调用的是HttpServletR
2022-04-03 13:59:21
3815
原创 Java学习记录:反射
Java反射记录学习Java反射机制(安全相关)。什么是反射?这里我引用学习JavaSE时对反射机制的介绍反射就是把Java类中的各个成分映射成一个个的Java对象。即在运行状态中,对于任意一个类,都能够知道这个类所有的属性和方法,对于任意一个对象,都能调用它的任意一个方法和属性。这种动态获取信息及动态调用对象方法的功能叫Java的反射机制。简单讲,反射机制允许我们获取类的信息,无视权限调用任何方法。从安全角度举一个例子,我们可以利用反射机制绕过一些沙盒,获取到能够执行命令的Runtime类。
2022-03-13 19:36:03
347
原创 Java学习记录:泛型
泛型基本介绍泛型又称参数化类型,是JDK5.0出现的新特性,解决数据类型的安全性问题在类声明或实例化时只要制定好需要的具体的类型即可Java泛型可以保证如果程序在编译时没有发出警告,运行时不会产生ClassCastException异常。同时有助于代码简洁、强壮泛型的作用:可以在类声明时通过一个标识表示类中某一个属性的类型,或者是某个方法的返回值的类型,或者是参数类型//在Java增加泛型类前,泛型通过继承实现public class ArrayList{ priv
2022-03-08 10:33:09
3001
原创 Java学习记录:常用类之String
String类String类的理解和创建对象String对象用于保存字符串,也就是一组字符序列字符串常量对象使用双引号括起的字符序列字符串的字符使用Unicode字符编码,一个字符(不区分字母还是汉字)占两个字节String类实现接口Serializable,可以序列化,可以在网络传输实现接口Comparable,对象可以比较大小String类的属性 private final char value[]用于存放字符串内容String类有final关键字修饰,不能被继承
2022-02-17 22:35:08
153
原创 Java学习记录之异常
异常Exception基本概念程序执行中发生的不正常情况称为异常执行过程中发生的两类异常事件Error : JVM无法解决的严重问题。如:JVM系统内部错误、资源耗尽等严重情况。比如StackOverflowError和OOM,Error是严重错误,程序会崩溃。Exception : 其他因编程错误或偶然的外在因素导致的一般性问题,可以使用针对性的代码进行处理。如空指针访问,试图读取不存在的文件,网络连接中断等。Exception分为两类:运行时异常和编译时异常异常体系图常见的
2022-02-17 15:24:00
195
原创 Java学习记录之注解
注解注解的理解注解Annotation也被称为元数据Metadata,用于修饰解释 包、类、方法、属性、构造器、局部变量等数据信息。和注释一样,注解不影响程序逻辑,但注解可以被编译或运行,相当于嵌入在代码中的补充信息在JavaSE中,注解的使用目的比较简单,比如标记过时的功能,忽略警告等。JavaEE中占据更重要的角色,如用于配置应用程序的任何切面,替代JavaEE旧版中遗留的繁冗代码和XML配置等基本注解介绍三个基本注解@Override : 限定某个方法,是重写父类方法
2022-02-10 02:21:59
440
原创 easy_tornado复现
Easy_tornado分析问题与解答cookie_secret是什么?答:根据Tornado官方文档的解释:这是settings中关于认证和安全方面的一个配置参数。settings又是什么?答:是一个python字典。通常用作于application的配置项。application是什么?答:这个问题会比较难直接回答。这需要先理解一个tornado web应用是如何工作的。我们先看Tornado官方给的一个Hello World程序的例子:import tornado.iol
2022-01-03 13:54:52
808
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人