この記事は機械翻訳のミラー記事です。元の記事にジャンプするにはこちらをクリックしてください。

眺める: 10163|答える: 4

[出典] .NETプログラムは、Javaプロジェクトlog4j2のリモートコード実行脆弱性をテストします

[リンクをコピー]
2021年12月11日 21:06:29に投稿 | | | |
過去2日間、友人の間で「Apache Log4j2リモートコード実行脆弱性」によって盗み取られました。主な理由はコンポーネント内のJava JNDIインジェクション脆弱性です。プログラムがユーザーが入力したデータをログに書き込みた際、攻撃者はApache Log4j2のリモートコード実行脆弱性をトリガーする特別なリクエストを構築し、この脆弱性を利用してターゲットサーバー上で任意のコードを実行します。

影響範囲

Apache Log4j 2.x <= 2.14.1

JNDI(Java Naming and Directory Interface)は、Java が提供する Java 命名およびディレクトリインターフェースです。 JNDIのAPIを呼び出すことで、アプリケーションはリソースやその他のプログラムオブジェクトを見つけることができます。 JNDIはJava EEの重要な一部であり、DataSource(JDBCデータソース)だけでなく、JDBC、LDAP、RMI、DNS、NIS、CORBA(百科事典より抜粋)などの既存のディレクトリやサービスにもアクセスできることに注意が必要です。

インターネット上には脆弱性の修正方法や脆弱性のスクリーンショットに関する記事は多くありますが、脆弱性のテスト方法についてはほとんど情報がありません。Javaは主にLog4j2を使ってコードをテストします次のように:


簡単に言えば、Log4j2はRMIまたはLDAPプロトコルを通じて以下のアドレスにアクセスし、プロトコルの内容に応じて悪意を持って作成されたコードを実行する可能性があります。

この脆弱性の存在は、Windows計算機を開くことでほぼ常にインターネット上で証明されます。コードは以下の通りです。

Log4J2は攻撃者のサーバーにアクセスする際にRMIまたはLDAPプロトコルを使用し、RMIとLDAPの両方がTCPベースであるため、直接アクセスが可能です.NETを使ってTCPポートを聞く場合、log4j2のログ印刷呼び出しが.NETのリスニングポートにアクセスしれば、脆弱性の可能性が証明され、なければ安全であることが証明されます

.NETは非常に小さなテストプログラムを生成します6KB、コードは以下の通りです:

log4jコンポーネントを使ってみてください2.14.0バージョンは印刷されており、レンダリングは以下の通りです。



log4jコンポーネントを以下にアップグレードしてみてください2.15.0バージョンを再度実行すると、その効果は次のようになります。



バージョンをアップグレードした後、印刷ログを呼び出すと、Javaプログラムは外部ポートにはアクセスしなくなりました

興味のある方は、以下のリンクを参照して脆弱性を再現し、計算機を呼び出せます。

ハイパーリンクのログインが見えます。
ハイパーリンクのログインが見えます。

最後に、テスト手順を添付します:

测试程序.rar (2.66 KB, ダウンロード数: 1)





先の:[実戦]。 NET/C# SQLiteデータベースを作成し、単に追加・削除・修正するだけです
次に:CentOSシステムデプロイメントのnacosチュートリアル
 地主| 2021年12月13日 13:37:35に投稿 |
Java 8 121以降、この脆弱性を再現するために以下の構成が必要です:

 地主| 2021年12月19日 12:10:22に投稿 |
2021年12月20日 23:09:51に投稿 |
ボスの動きを見てみましょう
2021年12月26日 16:54:47に投稿 |
もう一度学びに来てください。。。。。。。
免責事項:
Code Farmer Networkが発行するすべてのソフトウェア、プログラミング資料、記事は学習および研究目的のみを目的としています。 上記の内容は商業的または違法な目的で使用されてはならず、そうでなければ利用者はすべての結果を負うことになります。 このサイトの情報はインターネットからのものであり、著作権紛争はこのサイトとは関係ありません。 ダウンロード後24時間以内に上記の内容を完全にパソコンから削除してください。 もしこのプログラムを気に入ったら、正規のソフトウェアを支持し、登録を購入し、より良い本物のサービスを受けてください。 もし侵害があれば、メールでご連絡ください。

Mail To:help@itsvse.com