首页 > 其他分享 >JNDI-Injection-Exploit 下载/解决相关问题

JNDI-Injection-Exploit 下载/解决相关问题

时间:2024-04-21 21:34:10浏览次数:21  
标签:central maven JNDI Exploit https apache org Injection 2.5

环境:

  • Centos 8
  • jdk 1.8
  • maven 3.8.8



1、jdk 1.8 安装

jdk 官网:https://www.oracle.com/java/technologies/javase/javase8u211-later-archive-downloads.html

我选择的版本是:jdk-8u391-linux-x64.tar.gz

cd /usr/local/
tar -xvf jdk-8u391-linux-x64.tar.gz

设置环境,在/etc/profile文件最后写入

# 如果你不知道你的版本,ls 查看文件
export JAVA_HOME=/usr/local/java/jdk1.8.0_391	
export JRE_HOME=/usr/local/java/jdk1.8.0_391/jre
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$PATH

使环境变量生效

source /etc/profile
java -version	# 如果报错,就检查在 /etc/profile 设置的路径



2、maven 安装

cd /usr/local/
wget https://archive.apache.org/dist/maven/maven-3/3.8.8/binaries/apache-maven-3.8.8-bin.tar.gz
tar -xzf apache-maven-3.8.8-bin.tar.gz 

设置环境,在/etc/profile文件最后三行写入

# 注意你的路径
MAVEN_HOME=/usr/local/apache-maven-3.8.8
export MAVEN_HOME
export PATH=${PATH}:${MAVEN_HOME}/bin

使环境变量生效

source /etc/profile
mvn -v	# 如果报错,就检查在 /etc/profile 设置的路径



3、JNDI-Injection-Exploit 安装

git clone https://github.com/welk1n/JNDI-Injection-Exploit.git
cd JNDI-Injection-Exploit
mvn clean package -DskipTests	# 这里可能会报错,因为配置文件中的中央仓库位置已经更改,下面给出两种解决方法

报错内容如下

原因:Maven 无法从中央仓库 https://repo.maven.apache.org/maven2 下载 maven-clean-plugin-2.5.pom 文件

根本原因:这个中央仓库发生变动,导致文件路径发生改变

[ERROR] Plugin org.apache.maven.plugins:maven-clean-plugin:2.5 or one of its dependencies could not be resolved: Failed to read artifact descriptor for org.apache.maven.plugins:maven-clean-plugin:jar:2.5: Could not transfer artifact org.apache.maven.plugins:maven-clean-plugin:pom:2.5 from/to central (https://repo.maven.apache.org/maven2): transfer failed for https://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven-clean-plugin/2.5/maven-clean-plugin-2.5.pom: Received fatal alert: protocol_version -> [Help 1]
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/PluginResolutionException

解决方法

  • 手动安装插件(不推荐)
  • 更换中央仓库

1)手动安装插件(不推荐)

变动后的中央仓库:https://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven-clean-plugin/2.5/

a、去中央仓库下载maven-install-plugin-2.5.jar

b、参数搜索

导入插件,需要自己搜索下列第二、第三个参数

  • -Dfile=jar包的路径
  • -DgroupId=依赖配置项里的 groupId
  • -DartifactId=依赖配置项里的 artifactId
  • -Dversion=依赖配置项里的 version
  • -Dpackaging=jar
# 查找相关参数
cat ./apache-maven-3.8.8/conf/settings.xml |grep -E 'groupId|artifactId|version'

c、导入插件

# 根据你自己的情况修改这些参数
mvn install:install-file -Dfile=./maven-install-plugin-2.5.jar -DgroupId=org.myco.myplugins -DartifactId=myplugin -Dversion=2.5 -Dpackaging=jar
# 再次运行
cd JNDI-Injection-Exploit
mvn clean package -DskipTests

如果你碰巧连install插件都没有,那你还是换个库吧

2)更换中央仓库

下面给出了几个<mirror>将其写入./apache-maven-3.8.8/conf/settings.xml文件的<mirrors>标签中

<mirrors>
    ...
		<mirror>
            <id>alimaven</id>
            <mirrorOf>central</mirrorOf>
            <name>aliyun maven</name>
            <url>http://maven.aliyun.com/nexus/content/repositories/central/</url>
        </mirror>
        <mirror>
            <id>alimaven</id>
            <name>aliyun maven</name>
            <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
            <mirrorOf>central</mirrorOf>
        </mirror>
        <mirror>
            <id>central</id>
            <name>Maven Repository Switchboard</name>
            <url>http://repo1.maven.org/maven2/</url>
            <mirrorOf>central</mirrorOf>
        </mirror>
        <mirror>
            <id>repo2</id>
            <mirrorOf>central</mirrorOf>
            <name>Human Readable Name for this Mirror.</name>
            <url>http://repo2.maven.org/maven2/</url>
        </mirror>
        <mirror>
            <id>ibiblio</id>
            <mirrorOf>central</mirrorOf>
            <name>Human Readable Name for this Mirror.</name>
            <url>http://mirrors.ibiblio.org/pub/mirrors/maven2/</url>
        </mirror>
        <mirror>
            <id>jboss-public-repository-group</id>
            <mirrorOf>central</mirrorOf>
            <name>JBoss Public Repository Group</name>
            <url>http://repository.jboss.org/nexus/content/groups/public</url>
        </mirror>
        <mirror>
            <id>google-maven-central</id>
            <name>Google Maven Central</name>
            <url>https://maven-central.storage.googleapis.com
            </url>
            <mirrorOf>central</mirrorOf>
        </mirror>
        <!-- 中央仓库在中国的镜像 -->
        <mirror>
            <id>maven.net.cn</id>
            <name>oneof the central mirrors in china</name>
            <url>http://maven.net.cn/content/groups/public/</url>
            <mirrorOf>central</mirrorOf>
        </mirror>
</mirrors>

换源之后,再次运行

cd JNDI-Injection-Exploit
mvn clean package -DskipTests

成功

参考

标签:central,maven,JNDI,Exploit,https,apache,org,Injection,2.5
From: https://www.cnblogs.com/IFS-/p/18149529

相关文章

  • web server apache tomcat11-08-JNDI Resources
    前言整理这个官方翻译的系列,原因是网上大部分的tomcat版本比较旧,此版本为v11最新的版本。开源项目从零手写实现tomcatminicat别称【嗅虎】心有猛虎,轻嗅蔷薇。系列文章webserverapachetomcat11-01-官方文档入门介绍webserverapachetomcat11-02-setup启动web......
  • Web应用安全现状(包含Injection、File System Traversal、Broken Access Control攻击介
    目录1、Web应用安全现状1.1Web应用发展历程1.2Web应用安全1、Web应用发展历程早期的WWW网,用户通过Web浏览器,相关信息流仅由服务器向浏览器单向传送。多数站点并不验证用户的合法性,因为根本没有必要这样做;所有用户同等对待,提供同样的信息。如今的万维网与早期的万维网......
  • 【DVWA】20. SQL Injection (Blind)SQL注入盲注(全等级Sqlmap版)
    文章目录0.盲注介绍0.1布尔盲注0.2时间盲注0.3常用函数if()length()substr()、substring()ascii()、ord()1.Low1.1源码分析1.2实操2.Medium2.1源码分析2.2实操3.High3.1源码分析3.2实操4.Impossible4.1源码分析0.盲注介绍盲注,有两种主要类型,包......
  • Spring反序列化JNDI分析
    漏洞原理Spring框架的JtaTransactionManager类中重写了readObject方法,这个方法最终会调用到JNDI中的lookup()方法,关键是里面的参数可控,这就导致了攻击者可以利用JNDI注入中的lookup()参数注入,传入恶意URI地址指向攻击者的RMI注册表服务,以使受害者客户端加载绑定在攻击者RMI注册表......
  • 绕过JDK高版本限制进行JNDI注入
    前面学过了log4j2的打法,但CVE2021属实是有点久远了,打NSS搜了道java,那道题有点意思,是绕过高版本的打一个ldap,然后二次打fastjson。但是复现的时候,我配环境那里我始终有问题,感觉还是配少了......
  • 本地class序列化用绕过高版本jdk的JNDI题目
    [HZNUCTF2023final]ezjava这道题,困扰许久,不是题目逻辑,而是ldap服务起不了。题目介绍:Trytofxxkit(Log4j打log4j?进网页,开局几个字,提示fastjson:1.2.48:尝试一下常用的log4j2payload打一打DNS测一下:{{urlenc(${jndi:dns://xxxxxxxxx})}}得到回显,可以看到版本为jd......
  • DVWA-Command Injection通关教程-完结
    DVWA-CommandInjection通关教程文章目录DVWA-CommandInjection通关教程LowMediumHighImpossibleLow打开靶场,发现这是一个可以输入ip,测试连通性的界面源码分析这里直接将target变量放入shell_exec()执行ping命令,没有进行任何过滤,用户端可以直接拼接特定的命令,来......
  • Oracle WebLogic Server JNDI注入漏洞(CVE-2024-20931)复现
    先从镜像站拉取OracleWebLogicServerJNDI注入漏洞(CVE-2024-20931)然后在docker中启动这个镜像即可在网页中访问,搭建网站成功使用利用工具来进行验证是否存在漏洞获取DNS查看是否有回显有回显漏洞存在创造反弹shell,先查看攻击机的ip进行反弹shell编码使用nc开启监听端......
  • log4j2的JNDI注入简单测试
    配环境的锅,这次走最基本的路子,以求maven爹别给我报错了。这里版本是java8u101。首先要知道:JDK6u141、7u131、8u121之后:增加了com.sun.jndi.rmi.object.trustURLCodebase选项,默认为false,禁止RMI和CORBA协议使用远程codebase的选项,因此RMI和CORBA在以上的JDK版本上已经无法触发......
  • 应用使用JNDI,数据库无法连接,导致的进程无法启动问题处理
    起因数据库迁移,导致的ip改变,并且更换了用户密码。解决方法找到服务器应用目录,例如:/home/weblogic/Oracle/Middleware/user_projects/domains/abc进入config目录config.xml配置文件,属于中间件的整体配置,删除使用JNDI的应用的标签内容jdbc目录为weblogic的数据库配置文件重......