HacKerQWQ的博客空间

HacKerQWQ的博客空间

You do things when the opportunities come along.

Despercate Cat 带来的Tomcat利用思路
目录[TOC] 前言跟我一起参加入职培训的师傅找我一起做RealWorld 4th的Desperate Cat,看了writeup,在做题过程中学到了很多,在最后也是成功复现,记录一波。 关键词: EL表达式 Tomcat Session存储 jsp编译过程 Tomcat reload条件 Desperate Cat背景在这篇推文RWCTF 4th Desperate Cat Writeup中,作者出了一道名为Desperate Cat的realworld CTF赛题,取材于现实攻防遇到的难点(不得不说,这样的题目才是真正的以赛代练) 下面是对该赛题的描述: 存在文件上传功能点 服...
利用链神器-tabby使用
tabby项目介绍项目地址 1https://github.com/wh1t3p1g/tabby 项目介绍 123TABBY是一款针对Java语言的静态代码分析工具。它使用静态分析框架 Soot 作为语义提取工具,将JAR/WAR/CLASS文件转化为代码属性图。 并使用 Neo4j 图数据库来存储生成的代码属性图CPG。 配置Neo图数据库 下载安装Neo Desktop https://neo4j.com/download/?ref=get-started-dropdown-cta 新建project,设置密码为pas...
neo4j图形数据库笔记
neo4j数据库安装从官网下载neo4j Desktop https://neo4j.com/download/?ref=get-started-dropdown-cta neo4j介绍简单查看 12:schema //查看表库:sysinfo //查看数据库信息 Neo4j的特点 SQL就像简单的查询语言Neo4j CQL 它遵循属性图数据模型 它通过使用Apache Lucence支持索引 它支持UNIQUE约束 它包含一个用于执行CQL命令的UI:Neo4j数据浏览器 它支持完整的ACID(原子性,一致性,隔离性和持久性)规则 它采用原生图...
PHP反序列化利用面总结
序列化与反序列化概念序列化:将对象转化为可存储的字符串 反序列化: 将字符串还原成对象 在PHP中用于序列化的函数为searilize,用于反序列化的函数为unserialize serialize serialize(mixed $value): string serialize() 返回字符串,此字符串包含了表示 value 的字节流,可以存储于任何地方。 这有利于存储或传递 PHP 的值,同时不丢失其类型和结构。 unserialize unserialize(string $str): mixed unserialize() 对单一的已序列化的变量进行操作,将其转换回 PH...
Webshell免杀之php(WebShell免杀篇一)
学免杀首先要了解代码特性,将各种trick(webshell相关)作用都发挥到极致,从而绕过所有waf,当然仅限于静态分析,动态的话使用aes加密即可。 本文将围绕php是个解释型语言的前提进行探索 代码执行优先级代码执行优先级简单来说就是执行代码的顺序 经过测试php是从上到下,从左到右进行解释执行 优先执行括号内的内容,但是不会因为括号越多越先执行 1234<?phpif(md5(md5(phpinfo()))===md5(exit())){ echo 1;} 因此这个例子的执行结果是phpinfo() 而这个例子是exit() 1234<...
source map源码泄露利用
webpack简介webpack是一个JavaScript应用程序的静态资源打包器(module bundler)。它会递归构建一个依赖关系图(dependency graph),其中包含应用程序需要的每个模块,然后将所有这些模块打包成一个或多个bundle。大部分Vue应用会使用webpack进行打包,如果没有正确配置,就会导致Vue源码泄露,可能泄露的各种信息如API、加密算法、管理员邮箱、内部功能等等。 漏洞利用当看到js中包含sourceMappingURL时 访问URL即可得到js.map文件 解密使用nodejs的reverse-sourcemap 1npm instal...
中间件利用面
本篇文章介绍一下中间件相关的利用面 常见的中间件有Jboss、Weblogic、Websphere、Tomcat、Apache、Nginx、IIS Jboss 由于红蓝对抗中出现Jboss的概率较高,因此记录一下Jboss的利用面 JBoss是一个基于J2EE的开放源代码应用服务器,代码遵循LGPL许可,可以在任何商业应用中免费使用;JBoss也是一个管理EJB的容器和服务器,支持EJB 1.1、EJB 2.0和EJB3规范。 Jboss未授权访问部署war默认情况下访问 http://ip:8080/jmx-console 就可以浏览 JBoss 的部署管理的信息不需要输入用户名和密...
java基础之jndi
介绍部分摘自:javasec之JNDI JNDI介绍JNDI(Java Naming and Directory Interface)是Java提供的Java 命名和目录接口。通过调用JNDI的API应用程序可以定位资源和其他程序对象。JNDI是Java EE的重要部分,需要注意的是它并不只是包含了DataSource(JDBC 数据源),JNDI可访问的现有的目录及服务有:JDBC、LDAP、RMI、DNS、NIS、CORBA。 Naming Service 命名服务: 命名服务将名称和对象进行关联,提供通过名称找到对象的操作,例如:DNS系统将计算机名和IP地址进行关联、文件系统将文...
java基础之RMI
RMI概念RMI代表Remote Method Invocation,允许一个JVM中的对象access/invoke另一个JVM中的对象。 RMI用于构建分布式应用,提供Java项目之间的远程沟通,在包java.rmi中提供 RMI工作原理RMI架构RMI基于C/S架构,需要客户端及服务器端实现远程调用。 在服务器程序内部,创建一个远程对象,并为客户端提供该对象的引用(使用注册表)。 客户端请求远程服务器对象并尝试调用其方法 Transport Layer:连接客户端和服务器端。 Stub:客户端的远程对象的代理(Proxy),对客户端来说充当通路的角色。 Skeleton:客...
Shiro漏洞分析及利用
Shiro概述Apache Shiro™是一个功能强大且易于使用的 Java 安全框架,它执行身份验证、授权、加密和会话管理。借助 Shiro 易于理解的 API,您可以快速轻松地保护任何应用程序——从最小的移动应用程序到最大的 Web 和企业应用程序。 官网:https://shiro.apache.org/ github地址:https://github.com/apache/shiro/ Shiro1.2.4反序列化漏洞(Shiro-550)漏洞描述在 Apache Shiro<=1.2.4 版本中 AES 加密时采用的 key 是硬编码在代码中的,这就为伪造 cookie ...
avatar
HacKerQWQ
striving
FRIENDS
friendA friendB