代码审计
文章平均质量分 67
划水的小白白
永远热爱,永远热泪盈眶
展开
-
Java代码审计17之fastjson反序列化漏洞(2)
1、类加载与反射调用1.1、类加载1.2、测试代码1.3、通过类的加载和反射调用evil类2、Fastjson TemplatesImpl链调试2.1、链路总览2.2、调试构造利用链3、fastjson反序列化TemplatesImpl 利⽤3.1、开启 Feature.SupportNonPublicField 得作用3.2、构造利用payload3.3、模拟实际环境原创 2023-09-25 02:00:00 · 579 阅读 · 0 评论 -
Java代码审计16之fastjson反序列化漏洞(1)
1、简介fastjson2、fastjson的使用2.1、将类序列化为字符串2.2、将字符串还原为对象2.3、小结以上2.4、稍微扩展思路3、fastjson漏洞利⽤原理与dnslog4、JdbcRowSetImpl利用链4.1、JdbcRowSetImpl的基本知识4.2、利用代码复现4.3、生成poc4.4、模拟真实场景4.5、利用链代码分析原创 2023-09-15 02:45:00 · 428 阅读 · 0 评论 -
Java代码审计15之Apache log4j2漏洞
1、log4j简介2、复现2.1、高版本测试2.2、测试代码2.3、补充之dns探测2.3.1、rmi、ldap也可以dnslog探测2.3.2、dnslog外带信息3、漏洞原理3.1、漏洞的危害大的背景3.2、具体的代码调试4、靶场测试4.1、dns探测4.2、工具下载与使用4.3、测试4.4、手工可以测出,部分扫描器扫不到5、bypass原创 2023-08-31 01:45:00 · 1312 阅读 · 0 评论 -
Java代码审计14之JDNI注入以及rmi和Ldap的利用
1、Jndi、Ldap、Rmi协议1.1、什么是ladp协议1.2、jndi协议1.3、rmi协议2、jndi注入2.1、简介与jdk版本限制2.2、rmi协议的利用2.2.1、更换idea的执行jdk版本2.2.2、生成恶意class文件payload2.2.3、模拟测试低版本jdk2.2.4、模拟高版本测试2.3、rmi攻击的疑问之两个两个步骤3、ladp协议利用3.1、测试ldap3.2、不同jdk版本的测试4、dns探测原创 2023-08-24 01:45:00 · 786 阅读 · 0 评论 -
Java代码审计13之URLDNS链
1、简介urldns链2、hashmap与url类的分析2.1、Hashmap类readObject方法的跟进2.2、URL类hashcode方法的跟进2.3、InetAddress类的getByName方法3、整个链路的分析3.1、整理上述的思路3.2、一些疑问的测试3.3、hashmap的put方法分析3.4、反射3.5、整个代码4、补充说明原创 2023-08-22 01:45:00 · 463 阅读 · 0 评论 -
Java代码审计12之反序列化漏洞的审计与利用
1、重点函数,2、漏洞源码3、利用工具 ysoserial4、修复漏洞原创 2023-08-20 19:15:00 · 643 阅读 · 0 评论 -
java代码审计11之反序列化基础学习
1、 序列化与反序列化2、序列化与反序列化案例2.1、使用idea生成代码与serialVersionUID2.2、实例化对象2.3、序列化对象2.4、反序列化3、稍微深入serialVersionUID综上小结,4、transient 作⽤5、反序列化漏洞6、反序列化漏洞的理解6.1、项目代码中,没有重写 readObject 方法,且反序列化的参数可控,可以造成漏洞吗6.2、只有重写 readObject方法 才会造成反序列化漏洞吗6.3、小结反序列化漏洞之前的文章,php原创 2023-08-18 00:00:00 · 313 阅读 · 0 评论 -
JAVA代码审计10之sql注入审计
1、审计注意2、JDBC2.1、Statement(存在注入)2.2、PreparedStatement(安全)2.3、CallableStatement(可造成注入)3、Mybatis框架安全3.1、两种方式:3.2、like的解决:3.3、IN语句3.4、Order/Group by语句原创 2023-08-17 01:30:00 · 121 阅读 · 0 评论 -
java代码审计9之XXE
1、简介2、 java XXE审计函数3、漏洞3.1、正常的业务3.2、有回显的情况3.3、无回显的情况3.4、修复原创 2023-08-10 01:45:00 · 335 阅读 · 0 评论 -
java代码审计8之命令执行
1、Java命令执行的函数1.1、Runtime类1.2、追踪三个函数的关系1.3、ProcessBuilder类1.4、ProcessImpl类2、SpEL表达式2.1、正常使用的场景2.2、造成漏洞2.3、漏洞修复2.4、多种产生漏洞的情况2.5、发现漏洞,重要关注两点:之前的文章,php代码审计12之命令执行原创 2023-08-04 01:45:00 · 789 阅读 · 0 评论 -
Java代码审计7之XSS
1、漏洞代码2、修复XSS2.1、单个文件修复2.2、通用过滤3、一些补充之前的文章,php代码审计14之XSS原创 2023-07-29 01:30:00 · 316 阅读 · 0 评论 -
java代码审计6之ssrf
1、java支持的网络请求协议:2、Java 中能发起⽹络请求的类2.1、仅⽀持 HTTP/HTTPS 协议的类2.2、⽀持 sun.net.www.protocol 所有协议的类2.3、审计关键词3、靶场3.1、漏洞代码13.2、ftp协议读取技巧3.3、无回显之探测内网3.4、无回显之探测文件之前的文章,php代码审计8之SSRF原创 2023-07-27 01:45:00 · 260 阅读 · 0 评论 -
java代码审计5之文件操作/目录遍历
1、基础简介2、文件操作类修复3、目录遍历原创 2023-07-26 02:15:00 · 160 阅读 · 0 评论 -
java代码审计4之文件上传
1、修复方案2、一些tips2.1、上传恶意文件,返回404未必是上传失败(主要还是得看代码)2.2、黑名单jsp,可以使用jspx/war绕过2.3、存在一些场景,可以控制上传后的路径。可以导致目录穿越漏洞2.4、jsp制作war包2.5、上传的jsp不解析的话,原创 2023-07-25 01:00:00 · 227 阅读 · 0 评论 -
java代码审计3之servlet学习(2)
1、请求转发和跳转1.1、转发与重定向1.2、实现代码1.3、测试2、 Filter过滤器2.1、基本知识2.2、场景与实现代码2.3、测试2.4、请求前/后过滤2.5、fiter内存马与另一种路由3、全局变量ServletContext原创 2023-07-22 20:45:00 · 87 阅读 · 0 评论 -
java代码审计2之servlet学习(1)
1、基本知识1.1、Servlet1.2、番外之jsp后门清理注意2、路由相关2.1、注解2.2、web.xml2.3、tomcat默认的server3、servlet生命周期3.1、简述过程3.2、测试init、service、destroy3.3、初始化之注解3.4、初始化之web.xml4、servlet请求与响应4.1、get传参4.2、POST传参原创 2023-07-21 02:30:00 · 163 阅读 · 0 评论 -
java代码审计1之环境搭建
1、安装jdk2、配置tomcat3、配置maven3.1、配置环境变量3.2、配置源和maven配置文件4、idea4.1、配置maven4.2、新建web项目4.3、遇到的问题(弹出404页面)原创 2023-07-20 02:30:00 · 338 阅读 · 0 评论 -
php代码审计15.3之phar伪协议与反序列化
1、基础2、生成phar格式文件3、例子4、小试牛刀原创 2023-07-15 21:45:00 · 732 阅读 · 0 评论 -
php代码审计15.2之Session与反序列化
1、php.ini配置文件中与session相关的配置1.1、pip文件中的相关配置1.2、session本地存储文件2、Session序列化漏洞利用2.1、限制2.2、一般的反序列化情况2.3、 Session中的序列化漏洞3、session序列化之ctf3.1、题目文件3.2、分析class.php文件3.3、可控session的问题3.4、通过上传写入session3.5、补充点原创 2023-07-14 02:15:00 · 119 阅读 · 0 评论 -
php代码审计15.1之反序列化
1、常见魔术方法1.1、序列化的__sleep1.2、反序列化的__wakeup1.3、其他常见魔术方法2、 访问控制修饰符2.1、基本知识2.2、存在非public属性时的反序列化3、造成漏洞的前提4、常见的魔术方法5、漏洞复现5.0、pop链的含义5.1、CVE-2016-7124(绕过__wakeup)5.2、常规利用(__destruct函数)5.3、__toString漏洞示例5.4、无pop利用链且echo反序列化5.4.1、php7版本,5.4.2、php5版本原创 2023-07-12 01:45:00 · 196 阅读 · 0 评论 -
php代码审计14之XSS
一、漏洞产生原因1、数组key值可控导致加载不到报错1.1、原因:1.2、注意:2、yii框架造成反射型xss2.1、原因:模板文件获取参数2.2、修复二、漏洞修复1、返回头设置json原创 2023-07-12 01:30:00 · 366 阅读 · 0 评论 -
php代码审计13之url跳转
该漏洞没有需要过多说的,主要说下修复方式,和ssrf几乎一致原创 2023-07-11 00:00:00 · 232 阅读 · 0 评论 -
php代码审计12之命令执行
1、关注函数2、绕过限制2.1、命令连接符2.2、空格绕过与点绕过2.2.1、空格2.2.2、点“.”替换2.2.3、参考文章,3、其他补充3.1、die函数使用技巧3.2、php代码被加密原创 2023-07-10 23:45:00 · 152 阅读 · 0 评论 -
php代码审计11之代码执行
0、姊妹篇1、关注函数2、部分函数解读2.1、eval()2.2、assert()2.3、preg_replace()2.4、create_function()2.5、array_map2.6、双引号代码执行3、其他补充3.1、phpinfo被禁用3.2、php文件可以存在任何字符串原创 2023-07-05 02:30:00 · 149 阅读 · 0 评论 -
php代码审计10之文件上传
0、基础参考1、关注函数1.1、move_uploaded_file1.2、copy1.3、相关函数2、绕过与限制2.1、00截断2.2、CGI解析漏洞2.3、IIS 5.0 和 6.0 解析漏洞3、实现文件上传功能3.1、前端html3.2、后端接收php3.3、请求数据包3.4、相应返回数据包原创 2023-07-05 02:15:00 · 154 阅读 · 0 评论 -
php代码审计9之XXE
0、基础参考1、注意点2、关注函数2.1、new DOMDocument()2.2、new SimpleXMLElement()2.3、simplexml_load_string()3、利用3.1、存在回显3.2、无回显(以下未进行本地测试)3.3、工具之XXER(未测试)原创 2023-07-04 00:15:00 · 190 阅读 · 0 评论 -
php代码审计8之SSRF
1、关注函数2、SSRF支持的协议2.1、http/https:2.2、file:2.3、dict:2.4、gopher:2.5、ftp/ftps:2.6、tftp:2.7、imap/imaps/pop3/smtp/smtps:2.8、telnet:3、绕过3.1、读取文件绕过4、修复原创 2023-07-04 00:00:00 · 322 阅读 · 0 评论 -
php代码审计7之sql注入
1、order by造成的注入1.1、背景知识1.2、存在问题的代码1.3、解决办法2、宽字节注入2.1、造成情况2.2、漏洞结果3、编码造成注入4、insert注入的payload原创 2023-07-03 00:00:00 · 294 阅读 · 0 评论 -
php代码审计6之文件包含
1、造成漏洞四个函数2、截断后边拼接的字符2.1、场景:2.2、00截断限制2.3、垃圾字符填充2.4、在目标服务器创建文件3、远程文件包含4、涉及伪协议4.1、 fillter、file4.2、data协议4.3、php://input协议4.4、 phar:// 协议4.5、 zip协议4.6、其他协议参考5、其他小tips5.1、快速寻找文件包含漏洞5.2、写了吗一直无法连接5.3、CMD的小技巧(重要)5.4、数据库的存储最终也会以文件的形式保存在本地原创 2023-07-02 23:45:00 · 326 阅读 · 0 评论 -
php代码审计5之目录遍历与任意文件删除
1、目录遍历2、任意文件删除关注函数2.1、unlink2.2、file_exists()原创 2023-07-02 23:15:00 · 241 阅读 · 0 评论 -
php代码审计4之文件操作(读取/下载/写入)
1、文件读取常见函数2、文件写入函数2.1、写入小技巧(绕过exit)3、文件下载原创 2023-07-01 03:30:00 · 213 阅读 · 0 评论 -
php代码审计3之变量覆盖
1、常见函数2、其他一些tips2.1、记得查看下漏洞代码是否可被执行2.2、die输出类似与echo一样2.3、__FILE__关键字的作用2.4、show_source('绝对路径')原创 2023-07-01 02:45:00 · 100 阅读 · 0 评论 -
php代码审计2之http头注入与crlf
在URL跳转漏洞的地方不仅仅要试试SSRF,还要试试CRLF注入。本质是php的header函数在低版本存在http头注入,其危害主要取决于代码将获取到的请求头信息后续的操作,这种小tips在特殊时期也可以用来绕过一些限制,原创 2023-06-30 00:15:00 · 213 阅读 · 0 评论 -
php代码审计1之弱类型得缺点
1、字符串的开头为字母2、字符串开头出现了数字3、小结4、涉及函数(in_array与array_search)4.1、in_array 函数的作用4.2、问题4.3、另一种修复思路5、涉及函数(is_numeric)6、涉及函数( switch )原创 2023-06-29 23:30:00 · 131 阅读 · 0 评论 -
Java代码审计(7)Sql注入审计
1、基础1.1 常见注入点1.2 数据库特性1.2.1 数据库特定表1.2.2 注释符1.2.3 数据库报错1.2.4 MySQL 5.0 中information_schema表1.3 SQL注入靶场1.4 框架2、JDBC初探2.1 JDBC执行对象2.2 Statement2.3 PreparedStatement(预编译)2.4 CallableStatement3、Mybatis框架安全3.1 MyBatis使用3.1.1 MyBatis了解3.1.2 MyBat原创 2022-01-25 23:30:00 · 2434 阅读 · 0 评论 -
Java代码审计(6)XSS审计思路
0、前言0.1 XSS的审计思路0.2 补充一些知识1、反射型XSS审计2、存储型XSS审计2.1、搭建项目:2.2、审计3、存在过滤的XSS项目4、XSS的修复4.1、XSS的修复的主要分为两点:原创 2022-01-25 23:15:00 · 897 阅读 · 0 评论 -
Java代码审计(5)JavaEE介绍
0.补充0.1 解耦与MVC0.2 关于删除与伪删除1.认识框架1.1 框架技术1.2 分析优势2. 常见框架简介2.1 Struts22.2 Hibernate2.3 Spring2.4 Spring MVC2.5 Mybatis3. 常见框架介绍3.1 Spring3.2 SSH工作流程3.3 Shiro技术介绍3.4 Spring MVC3.5 Struts24. MyBatis4.1 概念4.2 MyBatis框架优缺点4.3 MyBatis基本要素5.原创 2022-01-20 23:45:00 · 652 阅读 · 0 评论 -
Java代码审计(4)JavaWeb介绍
0、补充知识1.Servlet技术1.1 JavaWeb概述1.2 Servelt 与 Servlet 容器1.2.1 Servlet容器概念1.2.2 tomcat简介1.2.3 Tomcat的一些漏洞1.2.3.补充端口被占用,怎么办1.2.4 Servlet容器响应客户请求的过程1.2.5 `映射关系:`1.2.6 HttpServletRequest中一些重要的方法1.3、转发与重定向1.4、配置路径和类的访问映射1.4.1 两种方法,第一个:1.4.2 方法二:2.原创 2022-01-20 23:30:00 · 934 阅读 · 0 评论 -
Java代码审计(3)Java基础(下)
3. java集合3.1 Set集合3.2 list集合3.3 Map集合4. IO集合4.1 File类4.2 IO流的分类4.3 对象的反序列化5. 常用的API5.1 String5.2 StringBuffer类6. 多线程6.1 多线程概念6.2 线程生命周期6.3 多线程实现方式7. 异常处理与网络编程7.1 异常处理7.1.1 异常分类7.1.2 异常处理手段7.2 网络编程原创 2022-01-14 20:13:35 · 313 阅读 · 1 评论 -
Java代码审计(2)Java基础(上)
文章目录0、前言1. 概述和基本语法1.1 java语言简介1.1.1 面向对象1.1.2 健壮性1.1.3 跨平台性1.2 核心机制—Java虚拟机1.3 核心机制—垃圾回收1.4 注释1.4.1 单行注释1.4.2 多行注释1.4.3 文档注释1.5 关键字1.6 标识符1.7 命名规范1.8 变量1.8.1 变量的定义1.8.2 变量的分类1.8.2.1 按数据类型分类1.8.2.2 被声明的位置划分1.8.2.3 按所属的数据类型划分1.8.3 数据类型转换1.8.3.1 基本数据类型转换1.8.3原创 2022-01-08 01:15:00 · 524 阅读 · 0 评论