【039-安全开发篇】JavaEE应用&SpringBoot框架&Actuator监控泄漏&Swagger自动化

思维导图

知识点:

1、JavaEE-SpringBoot-监控系统-Actuator

2、JavaEE-SpringBoot-接口系统-Swagger

3、JavaEE-SpringBoot-监控&接口&安全问题

章节点

3、Java:

功能:数据库操作,文件操作,序列化数据,身份验证,框架开发,第三方组件使用等.

框架库:MyBatis,SpringMVC,SpringBoot,Shiro,Log4j,FastJson等

技术:Servlet,Listen,Filter,Interceptor,JWT,AOP,反射机制待补充

安全:SQL注入,RCE执行,反序列化,脆弱验证,未授权访问,待补充

安全:原生开发安全,第三方框架安全,第三方组件安全等,架构分析,待补充

演示案例:

复制代码
SpringBoot-监控系统-Actuator
SpringBoot-接口系统-Swagger
安全案例-JVM泄漏&接口自动化

SpringBoot-监控系统-Actuator

SpringBoot Actuator模块提供了生产级别的功能,比如健康检查,审计,指标收集,HTTP跟踪等,帮助我们监控和管理Spring Boot应用。

  • 开发使用:
    1、引入依赖

    org.springframework.boot
    spring-boot-starter-actuator

    2、配置监控

bash 复制代码
#暴露
#application.properties
management.endpoints.web.exposure.include=*

#application.yml
management:
  endpoints:
    web:
      exposure:
        include: '*'

#安全配置:
#application.properties
management.endpoint.env.enabled=false
management.endpoint.heapdump.enabled=false

#application.yml
management:
    endpoint:
        heapdump:
            enabled: false #启用接口关闭
    env:
        enabled: false #启用接口关闭

2、图像化Server&Client端界面

Server:引入Server依赖-开启(@EnableAdminServer)

Client:引入Client依赖-配置(连接目标,显示配置等)

图形化界面3、安全问题

  • heapdump泄漏(会有源代码的信息)

jvisualvm分析器

JDumpSpider提取器(可下载)

把配置信息都显示出来了(开放的端口号和管理员的账号密码等等)

分析提取出敏感信息(配置帐号密码,接口信息 数据库 短信 云应用等配置)

安全写法:false两个

SpringBoot-接口系统-Swagger

Swagger是当下比较流行的实时接口文文档生成工具。接口文档是当前前后端分离项目中必不可少的工具,在前后端开发之前,后端要先出接口文档,前端根据接口文档来进行项目的开发,双方开发结束后在进行联调测试。(如果你对某个网站做安全测试,不能知道有什么接口(只能乱测),有了swagger能知道更全面,如果接口里面有敏感信息,那就算是中低威漏洞)

参考:https://blog.csdn.net/lsqingfeng/article/details/123678701

  • 开发使用
    1、引入依赖
java 复制代码
<--2.9.2版本-->
<dependency>
    <groupId>io.springfox</groupId>
    <artifactId>springfox-swagger2</artifactId>
    <version>2.9.2</version>
</dependency>
<dependency>
    <groupId>io.springfox</groupId>
    <artifactId>springfox-swagger-ui</artifactId>
    <version>2.9.2</version>
</dependency>

<--3.0.0版本-->
<dependency>
  <groupId>io.springfox</groupId>
  <artifactId>springfox-boot-starter</artifactId>
  <version>3.0.0</version>
</dependency>

2、配置访问

bash 复制代码
#application.properties
spring.mvc.pathmatch.matching-strategy=ant-path-matcher

#application.yml
spring
  mvc:
    pathmatch:
      matching-strategy: ant_path_matcher

配置备注:

2.X版本启动需要注释@EnableSwagger2

3.X版本不需注释,写的话是@EnableOpenApi

2.X访问路径:http://ip:port/swagger-ui.html

3.X访问路径:http://ip:port/swagger-ui/index.html

3、安全问题

自动化测试:Postman

泄漏应用接口:用户登录,信息显示,上传文件等

可用于对未授权访问,信息泄漏,文件上传等安全漏洞的测试.

配置这样配,然后勾选保存响应,运行api即可


时间戳(新增)

可精准空降视频,需要直接点击,或者拖动,

  1. 文档简述 ------ 00:00:00
  2. 演示案例:SpringBoot-监控系统-Actuator ------ 00:02:24
  3. 演示案例:JavaEE-SpringBoot-接口系统-Swagger ------00:42:00
  4. 演示案例:安全案例-JVM泄漏&接口自动化(没有特定的讲)

碎碎念

新增时间戳模块,更好的让同学们更好的看小迪一起定位。

相关推荐
vipxieliang3 天前
ValidX 在 DDD 领域驱动设计中的实践
java·spring boot
龙亘川3 天前
一网统管AI平台民生业务实践:基于城市数字底座赋能公积金业务服务升级
大数据·安全·智慧城市·开源软件·数据可视化·政务
kybs19913 天前
全球灾害数据分析可视化 毕业设计-附源码66794
vue.js·spring boot·mysql·安全·django·c#·asp.net
LorryJovens3 天前
【LAAP科研】双系统具身AGI范式研究——基于LAAP认知架构与Jev概率决策模型的系统性技术调研与范式验证
人工智能·gpt·安全·架构
其实防守也摸鱼3 天前
内网穿透与反向代理:原理、工具与实战指南
android·大数据·运维·安全·网络安全·自动化·渗透
码兄科技3 天前
24小时自助健身房系统软件开发实战指南:功能设计与部署方案
java·spring boot·uni-app
山东科恩光电3 天前
提升安全性的关键技术:安全触边在工业自动化中的应用解析
安全
paopaokaka_luck3 天前
智慧社区综合服务小程序(人脸识别、AI问答、Echarts图形化分析)
前端·javascript·spring boot·spring·数据分析·echarts
需要8263 天前
JVM 内存区域与对象创建:一次 GC 从哪来
java·jvm·spring boot·spring·servlet·tomcat