Log4j Log4Shell脆弱性に関する问答

最近開催されたJFrogウェビナLog4j Log4Shell漏洞解释:所有你需要知道的にて,シニアディレクターのShachar选用一些(シャチャー・メナシェ)は,このセキュリティ問題とその検出・修正方法に関する情報を共有しました。
今回のウェビナ,で寄せられた質問をもとに,以下の问答で追加情報をご紹介します。
Log4jのセキュリティ問題
Log4jのエクスプロaaplトはいかにして成し遂げられるのでしょうか?
JFrogは,この脆弱性を詳細に説明した包括的なブログを公開しています。
“Log4Shellの脆弱性の原因は何か?”のセクションをご覧ください。
log4jのAPIコールも脆弱であると聞きましたが,JFrogではなぜコアだけに注目しているのですか吗?
Log4j-apiは脆弱ではなく,log4j-coreのみが脆弱です。
log4jのlog4shell脆弱性は,弹震症と比較して世界的な影響はどうですか吗?
log4shellと弹震症は,どちらも膨大な範囲のシステムに影響を与えるリモートコード実行の脆弱性です。弹震症は,アプリケーションであるbash (Linuxのごく一般的なシェル)の脆弱性であり,log4shellはlog4jライブラリの脆弱性です。いくつかの理由から,log4jのセキュリティ問題の方が,脅威を軽減する観点からは大きな課題となっています。
弹震症を検出するには,脆弱なバージョンのbashがインストールされているかどうかをローカルシステムで確認するだけで十分でしたが,bash自体は通常サードパーティの依存ファイルと一緒には出荷されません。
Log4shellのセキュリティ問題を検出するのははるかに困難です。log4jはライブラリであるため、検出にはすべての直接および間接(推移的/再帰的)依存関係をチェックする必要があります。さらに、log4shell の攻撃ベクトルは、Shellshock の攻撃ベクトル(未解析の入力を bash 環境に渡す)よりも一般的(未解析の入力を記録する)です。
更に,log4shellは修正が困難です。log4shellはラブラリなので,いくかのAPIが新しいバジョンで変更されています。これは,ソフトウェアベンダが,log4j自体をアップグレードするだけでなく,log4jと直接やりとりするファーストパーティコードを修正しなければならないかもしれないことを意味します。
そして,log4jのより新しいバージョンは,より新しいバージョンのJava(従来のJava 6/7に対してJava 8)を必要とします。これは,ソフトウェアベンダが同様にJavaコンポーネントをアップグレードしなければならないかもしれないことを意味し,それは,システム上の他のJavaベースのソフトウェアとの互換の問題を起こすかもしれません。
脆弱でないlog4jバジョン1にいてはどうでしょうか?log4jバージョン2の注目度の高さの影響を受けるでしょうか?
現在のエクスプロ@ @トは,バ@ @ジョン1を危険にさらしません。しかし攻撃者は,追加の脆弱性を見つけようと,log4jコンポーネントの調査に今より多くの努力をするかもしれません。
Log4jの検出とその修正ソリュ,ション
リポジトリにlog4jパッケ,ジがあるかどうかを判別する,,ルはありますか?
はい,あります。まず,ミッションクリティカルなソフトウェア開発ライフサイクル(SDLC)プロセスの中心的な部分としてJFrogDevOps的平台を使用しているJFrogのお客様は,log4jの脆弱性に対して素早く修正するために必要なすべてをすでにお持ちです。
Artifactoryのバ@ @ナリリポジトリ管理下で蓄積されたパッケージ,バイナリ,イメージ,メタデータを使って,ア,ティファクトやビルドを検索し,ソフトウェアのサプライチェーン全体で,推移的な依存関係を含むlog4jパッケージのあらゆる用途を発見することができます。またx射线ポリシやウォッチを作成して,log4jパッケージの脆弱なバージョンを使用しているビルドをプロダクションへリリースされることを防止することができます。
広く開発者コミュニティのために,さらにJFrogは,ローカルディレクトリ内のソースコードとバイナリの両方でLog4jの使用を判定する有用なオプンソスルのセットをリリスしました。
log4jのコンパイル時依存性を持っているサードパーティコンポーネントを使用したい場合,log4jを取り除く方法はありますか吗?
これは,パッケ,ジがlog4jの脆弱なバ,ジョンを使用している場合にのみ問題となります。その場合は,サ,ドパ,ティ製コンポ,ネントの修正版を入手する必要があります。ソスコドがあれば,修正されたlog4jのバジョンで自分でコンパルできます。
Spring框架のようにlog4jライブラリを参照するAPIライブラリを依存関係として使用している場合でも,log4jを参照する依存関係は脆弱なのでしょうか吗?
それは特定のケス,およびlog4jラブラリのどの部分が使用されているかに依存します。Log4j-coreは脆弱ですが,log4j-apiは脆弱ではありません。
最も包括的な結果を得るためには,JFrog x射线のようなソフトウェアコンポジションアナリシス(sca)スキャンツールを使用して,すべてのソフトウェア依存関係における脆弱性を特定することをお勧めします。このスキャンは,当然log4jに関連するものだけでなく,包括的に脆弱なコンポーネントを検出します。
それが叶わない場合,ソースコードとバイナリでlog4jの利用を特定するために,JFrogがコミュニティのために作成したOSSツールを使用できます(上記を参照)。
x光がlog4shellの脆弱性を持つアーティファクトを検出したら,そのアーティファクトの使用者を特定する方法はありますか吗?つまりArtifactoryを使用して,どのサービス/ユーザが脆弱なアーティファクトにアクセス/ダウンロードしたかを追跡し,それらの特定のサービスを分析できますか吗?
もろんです。JFrog平台はこのために作られました。x光と Artifactory を使って、脆弱なアーティファクトの使用者を特定し、次の方法でその使用をコントロールできます。
- Log4jパッケジの使用状態にいてのリポジトリ検索
- Cve-2021-44228の検索
- Artifactoryでbuild-infoクエリを実行することによる,log4j-coreライブラリに依存するすべてのビルドのリストアップ
- 違反の警告,脆弱なパッケ,ジのダウンロ,ドのブロックをするx射线ポリシ,の定義
詳細は,ブログ”您的Log4shell补救食谱使用JFrog平台をご覧ください。
x射线による静的および推移的な依存関係の識別の様子のデモを見ることができますか?
できます。x光のデモはこらからお申込みください。アティファクトの依存関係のすべてのレヤを見通す方法をご紹介します。