[SECURITY] Use HTTPS to resolve dependencies in Maven Build

This is a security fix for a high severity vulnerability in your Apache Maven pom.xml file(s).

The build files indicate that this project is resolving dependencies over HTTP instead of HTTPS.

This leaves your build vulnerable to allowing a Man in the Middle (MITM) attackers to execute arbitrary code on your or your computer or CI/CD system.

这是针对Apache Maven pom.xml文件中的高严重漏洞的安全修复。

构建文件表明该项目正在解决HTTP而不是HTTPS上的依赖关系。

这使得您的构建很容易允许中间的人(MITM)攻击者在您或您的计算机或CI/CD系统上执行任意代码。

(HTTP的请求可以被劫持,是不安全的,所以可能会收到中间人攻击,使用HTTPS则可以修复该问题,具体fix solition 请看文章最后)

This vulnerability has a CVSS v3.0 Base Score of 8.1/10.

POC code has existed since 2014 to maliciously compromise a JAR file in-flight.

MITM attacks against HTTP are increasingly common, for example Comcast is known to have done it to their own users.

Resources

Source

This contribution was automatically generated with an OpenRewrite refactoring recipe, which was lovingly handcrafted ❤️ to bring this security fix to your repository.

The source code that generated this PR can be found here: UseHttpsForRepositories

Detecting this and Future Vulnerabilities

This vulnerability was automatically detected by GitHub's CodeQL using this CodeQL Query.

You can automatically detect future vulnerabilities, like this one, by enabling the free (for open-source) CodeQL: GitHub Action.

I'm not an employee of GitHub, I'm simply an open-source security researcher for the Open Source Security Foundation.

Opting Out

If you'd like to opt out of future automated security vulnerability fixes like this, please consider adding a file called
.github/GH-ROBOTS.txt to your repository with the line:

复制代码
User-agent: JLLeitschuh/security-research
Disallow: *

This bot will respect the ROBOTS.txt format for future contributions.

Alternatively, if this project is no longer actively maintained, consider archiving the repository.

CLA Requirements

This section is only relevant if your project requires contributors to sign a Contributor License Agreement (CLA) for external contributions.

All contributed commits are already automatically signed off.

The meaning of a signoff depends on the project, but it typically certifies that committer has the rights to submit this work under the same license and agrees to a Developer Certificate of Origin

(see Developer Certificate of Origin for more information).

Sponsorship & Support

This work was originally sponsored by HUMAN Security Inc. and the new Dan Kaminsky Fellowship, a fellowship created to celebrate Dan's memory and legacy by funding open-source work that makes the world a better (and more secure) place.

This work was later sponsored by Open Source Security Foundation (OpenSSF): Project Alpha-Omega.

Alpha-Omega is a project partnering with open source software project maintainers to systematically find new, as-yet-undiscovered vulnerabilities in open source code -- and get them fixed -- to improve global software supply chain security.

This PR was generated with Moderne, a free-for-open source SaaS offering that uses format-preserving AST transformations to fix bugs, standardize code style, apply best practices, migrate library versions, and fix common security vulnerabilities at scale.

Tracking

All PR's generated as part of this fix are tracked here: JLLeitschuh/security-research#8

Use this link to re-run the recipe: https://app.moderne.io/recipes/builder/IfHkrYfxx?organizationId=QWxsIEdpdEh1Yg%3D%3D

fix solution修复指南

可以参考

maven仓库设置阿里云镜像加速(https://maven.aliyun.com/repository/public)_阿里云搜索maven加速-CSDN博客文章浏览阅读2.9k次。maven在国内连接到中央仓库下载jar包太慢了,如果想加速的话,可以切换到阿里云maven镜像库2023.12.17更新,更新https连接和更新新版阿里云链接下载jar包的时候很快,但是缺点就是maven相关的包比较慢_阿里云搜索maven加速https://blog.csdn.net/moshowgame/article/details/79912737

打开 maven 的配置文件( windows 机器一般在 maven 安装目录的conf/settings.xml ),在<mirrors></mirrors>标签中添加 mirror 子节点:

复制代码
<mirror>
  <id>aliyunmaven</id>
  <mirrorOf>*</mirrorOf>
  <name>阿里云公共仓库</name>
  <url>https://maven.aliyun.com/repository/public</url>
</mirror>
相关推荐
还听珊瑚海吗3 小时前
基于WebSocket和SpringBoot聊天项目ChatterBox测试报告
spring boot·websocket·网络协议
猿究院--冯磊7 小时前
计算机网络--HTTP协议
网络协议·计算机网络·http
元清加油8 小时前
【Goland】:协程和通道
服务器·开发语言·后端·网络协议·golang
JH307320 小时前
Maven的三种项目打包方式——pom,jar,war的区别
java·maven·jar
m0_521329031 天前
java-maven的生命周期
maven
-Xie-1 天前
Maven(二)
java·开发语言·maven
iナナ1 天前
传输层协议——UDP和TCP
网络·网络协议·tcp/ip·udp
舒一笑1 天前
Mac 上安装并使用 frpc(FRP 内网穿透客户端)指南
后端·网络协议·程序员
唐叔在学习1 天前
万字长文深度解析HTTPS协议
后端·https
黑客影儿1 天前
Java技术总监的成长之路(技术干货分享)
java·jvm·后端·程序人生·spring·tomcat·maven