少走弯路之marshalsec的编译(RMI必备工具)

 
 

0x00 实验环境

实验机:Ubuntu18(公网Linux系统)

0x01 安装包

私聊我博客将会第一时间提供安装包环境:

0x02 避坑指南

由上篇文章:https://www.cnblogs.com/cute-puli/p/13466362.html

使用marshalsec辅助开启 RMI环境,此时存在一些误区,如下我将阐明整个安装编译流程:

(1)第一步:安装java1.8.0版本

Ubuntu默认java环境为11,因此我们需要自行下载Linux下java的1.8版本:

这里直接在官网下载即可,此时下载后,我们需要解压该压缩包至/usr/local目录下:

 在/usr/local目录下新建一个java目录,将上面的tar包解压至java目录下:

修改配置文件配置环境变量:/etc/profile

将如下配置方式原方不动的复制到该/etc/profile文件末尾即可:

 

export JAVA_HOME=/usr/local/java/jdk1.8.0_271
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

添加完成之后重启环境变量使之生效

source /etc/profile

查看此时的java版本是并没有变更的,使用以下命令即可将版本切换为java 1.8版本,输入number为对应的java的版本就完成了第一步安装1.8环境的java与切换使用的步骤:

update-alternatives --config java

(2)第二步:安装mvn命令

传统的Ubuntu是无法直接安装mvn命令的,直接使用apt-get 安装软件将提示:

复制Reading package lists... Done
Building dependency tree       
Reading state information... Done
E: Unable to locate package ****

此时需要自行到如下官网下载maven安装包:

http://maven.apache.org/download.cgi

下载完成后需要将该安装包解压至/opt目录下:

接下来与java的安装流程基本一致,为mvn命令配置全局的环境变量,打开/etc/profile文件,在末尾添加命令:

export M2_HOME=/opt/apache-maven-3.6.3
export PATH=$PATH:$M2_HOME/bin

添加完后使环境生效:

source /etc/profile

进入到/opt/apache-maven-3.6.3/conf输入以下内容查看mvn命令是否安装完成,下图为安装完成的显示:

mvn -version 或者mvn -v

(3)第三步:编译marshalsec

进入到marshalsec文件夹输入如下命令:

mvn clean package -DskipTests

当查看到绿色的SUCCESS时,即可成功编译好marshalsec的jar包:

(4)第四步:marshalsec使用

marshalsec命令格式如下,在target目录下即可正常使用该java 反序列化利用工具 marshalsec

java -cp target/marshalsec-0.0.1-SNAPSHOT-all.jar marshalsec.<Marshaller> [-a] [-v] [-t] [<gadget_type> [<arguments...>]]

 

使用方法参考如下网址:

https://blog.csdn.net/whatday/article/details/107942941

原文地址:https://www.cnblogs.com/cute-puli/p/14373826.html