概要
リモートの SUSE ホストに 1 つ以上のセキュリティ更新がありません。
説明
リモートの SUSE Linux SLED12 / SLES12 / SLES_SAP12 ホストには、SUSE-SU-2021:3593-1 のアドバイザリに記載された複数の脆弱性の影響を受けるパッケージがインストールされています。
binutils 2.37の更新:
* GNU Binutils ソースを構築するために C99 コンパイラとライブラリが必要になりました。
* arm-symbianelf 形式のサポートは削除されました。
* AArch64 用の Realm Management ExtensionRMEのサポートが追加されました。
* 動的相対再配置を報告するために、 x86 ELF ターゲット用の新たなリンカーオプション「-z report-relative-reloc」が追加されました。
* 新しいリンカーオプション「-z start-stop-gc」が、__start_*/__stop_* 参照の特別な処理を無効にするために追加されました。
--gc-sections。
* 「-Bsymbolic」および「-Bsymbolic-functions」オプションをキャンセルする新しいリンカーオプション「-Bno-symbolic」が追加されました。
* readelf ツールには、新しいコマンドラインオプションがあり、これを使用して、シンボルの数値の報告方法を指定できます。
--sym-base=0|8|10|16 は readelf に、base 8、base 10、または base 16 のいずれかの値を表示するように指示します。シンボリックベースの 0 は、ベース 10 では 10000 未満の値、ベース 16 ではそれより上の値を表示するデフォルトアクションを表します。
* 新しいフォーマットが nm プログラムに追加されました。「--format=just-symbols」を指定または -j を使用するだけで、プログラムにシンボル名のみを表示するように指示します。
* 新しいコマンドラインオプション「--keep-section-symbols」が objcopy および strip に追加されました。これにより、ファイルがコピーされたとき、未使用のセクションシンボルが削除されます。これらのシンボルを削除するとスペースを節約できますが、他のツールで必要になる場合があります。
* objcopy でサポートされる「--weaken」、「--weaken-symbol」、および「--weaken-symbols」オプションは現在、脆弱なシンボルをサポートするターゲット上で未定義のシンボルを脆弱にします。
* Readelf および objdump が .debug_sup セクションのコンテンツを表示および使用できるようになりました。
* Readelf と objdump は、デフォルトで別々のデバッグ情報ファイルへのリンクをたどるようになりました。この挙動は、readelf に対する新しい「-wN」または「--debug-dump=no-follow-links」オプション、および objdump に対する「-WN」または「--dwarf=no-follow-links」オプションの使用により停止できます。また、「--enable-follow-debug-links=no」構成時間オプションの使用により、古い挙動に復元することもできます。
=follow-links オプションのセマンティックもわずかに変更されました。有効になっている場合、このオプションにより、別のファイルからシンボルテーブルと文字列テーブルをロードできます。これを使用して、他のセクションをダンプするときに表示される情報を強化することができますが、別のファイルからの情報が自動的に表示されるようにはしません。
他のデバッグセクション表示オプションも有効な場合例「--debug-dump=info」は、メインファイルと別の debuginfo ファイルの両方で一致するセクションのコンテンツが * 表示されます。
ほとんどの場合、デバッグセクションはいずれかのファイルにのみ存在するためです。
しかし、非デバッグセクション表示オプションが有効化されている場合例「--sections」、別の debuginfo ファイルの一致する部分のコンテンツは「表示されません」。これは、ほとんどの場合、ユーザーはおそらく別の debuginfo ファイルから記号情報のみをロードする必要があったためです。この挙動を変更するには、新しいコマンドラインオプション --process-links を使用できます。これにより、di0pslay オプションをメインファイルと別々の debuginfo ファイルの両方に適用できます。
* Nm に新しいコマンドラインオプションがあります「--quiet」。これは、「no symbols」診断を抑制します。
binutils 2.36の更新:
Assembler の新機能
一般:
* ELF セクションのリンク順序属性を設定する際、シンボル名の代わりに数値セクションインデックスを使用できるようになりました。
* .nop ディレクティブを追加し、ターゲットに中立な方法で、単一の no-op 命令を生成します。この命令は、DWARF 行番号生成がアクティブな場合、DWARF 行番号生成に影響を与えます。
* Gas は現在、自動的に拡大および縮小できるハッシュテーブルを使用するため、 --reduce-memory-overheads および --hash-size を削除しました。
X86/x86_64
* AVX VNNI、HRESET、UINTR、TDX、AMX および Key Locker の命令のサポートを追加します。
* lcall および ljmp に対する非絶対セグメント値をサポートします。
* {disp16} 疑似プレフィックスを x86 アセンブラーに追加します。
* Linux/x86 では、 をデフォルトで --enable-x86-used-note で構成します。
ARM/AArch64
* Cortex-A78、Cortex-A78AE および Cortex-X1、Cortex-R82、Neoverse V1、および Neoverse N2 コアのサポートを追加します。
* ETMv4Embedded Trace Macrocell、ETEEmbedded Trace Extension、TRBETrace Buffer Extension、CSRECall Stack Recorder Extension、および BRBEBranch Record Buffer Extensionシステムレジスタのサポートを追加します。
* Armv8-R および Armv8.7-A ISA 拡張のサポートを追加します。
* Armv8.7 に対する DSB メモリ nXS バリア、WFET および WFIT 命令のサポートを追加します。
* -march に対する +csre 機能のサポートを追加します。AArch64 の CSRE 機能に対する CSR PDEC 命令を追加します。
* Armv8.4 AArch64 の -march に対する +flagm 機能のサポートを追加します。
* Armv8.7 AArch64 の -march に対する +ls64 機能のサポートを追加します。この機能にアトミックの 64 バイトロード/ストア命令を追加します。
* 用の +pauthポインター認証機能のサポートを追加します
AArch64 の -march。
Linker の新機能
* --error-handling-script=<NAME> コマンドラインオプションを追加します。これにより、未定義のシンボルまたは欠落しているライブラリに遭遇したときにヘルパースクリプトを呼び出すことができます。このオプションは、構成タイムスイッチを介して抑制できます --enable-error-handling-script=no。
* -z x86-64-{baseline|v[234]} を x86 ELF リンカーに追加し、x86-64-{baseline|v[234]} ISA レベルを必要に応じてマークします。
* -z unique-symbol を追加し、ローカルシンボル名が重複しないようにします。
* PE 形式の DLL の作成が、デフォルトでより安全な DLL 特性セットを使用するようになりました。
* リンカーは現在、.ctf セクションでタイプの重複を排除します。新しいコマンドラインオプション --ctf-share-types では、これを行う方法が説明されています
デフォルト値の share-unconflict は、最もコンパクトな出力を生成します。
* 現在は、リンカーはデフォルトで .ctf セクションから「変数セクション」を省略し、スペースを節約します。これは、ELF symtab に反映されていないシンボルテーブル独自の類似があるプロジェクトで作業している場合を除き、ほぼ確実に必要なものです。
その他のバイナリツールの新機能
* ar ツールの以前は使用されていなかった l 修飾子が、静的ライブラリの依存関係を指定するために使用されるようになりました。このオプションまたは --record-libdeps ロングフォームオプションの引数は、アーカイブの __.LIBDEP メンバーに逐語的に保存され、リンカーがリンク時にこれを読み取る可能性があります。
* Readelf は --lto-syms コマンドラインオプションを介して要求された場合に、 LTO シンボルテーブルセクションの内容を表示できるようになりました。
* Readelf は現在、-C コマンドラインオプションを受け入れて、シンボル名のデマングルを有効にします。さらに --demangle=<style>、
--no-demangle、 --recurse-limit 、 --no-recurse-limit のオプションも現在利用可能です。
binutils 2.35.1の更新:
* これは、バグ修正と、通常のルールに対する例外として 1 つの新しい機能を含む、以前の 2.35 バージョンのポイントリリースです。この新機能とは、アセンブラーの新しいディレクティブのサポートです:
「.nop」。このディレクティブは、ターゲットアーキテクチャに対して正しいエンコーディングが何であれ、単一のno-op命令を作成します。.spaceまたは.fillとは異なり、これは実際の命令であり、DWARF行番号テーブルの生成が有効化されている場合には、これに影響します。
binutils 2.35の更新:
* アセンブラは現在、DWARF-5 形式の行番号テーブルを生成できるようになりました。
* Readelf に「lint」モードが用意され、処理中のファイルに対する追加チェックが実行できるようになりました。
* Readelf は、シンボル名を切り捨てる必要がある場合に、「[...]」を表示するようになりました。
--silent-truncationオプションを使用することで、80列の制限まで可能な限り多くの文字を表示するという以前の動作を復元できます。
* リンカーは、コンパイラによってサポートされる -M -MP オプションとほぼ同じように、処理した入力をリストする依存関係ファイルを生成できるようになりました。
binutils 2.34の更新:
* 逆アセンブラobjdump --disassembleには、制御フロー命令の開始ポイントと終了ポイントの間のarc を表示する、ascii アートを生成するオプションが追加されました。
* binutils ツールが現在は debuginfod をサポートしています。Debuginfodは、ELF/DWARFデバッグ情報およびソースコードを配布するためのHTTPサービスです。ツールは、処理中のファイルに関するデバッグ情報をダウンロードするために、debuginfodサーバーに接続できるようになりました。
* アセンブラおよびリンカーは、 Z80 アーキテクチャ向けの ELF フォーマットファイルの生成をサポートするようになりました。
binutils 2.33.1の更新:
* Arm Scalable Vector Extension バージョン 2SVE2命令、Arm Transactional Memory ExtensionTME命令、Armv8.1-M Mainline および M-profile Vector ExtensionMVE命令に対するサポートを追加します。
* Arm Cortex-A76AE、Cortex-A77 、および Cortex-M35P プロセッサ、ならびに AArch64 Cortex-A34、Cortex-A65、Cortex-A65AE、Cortex-A76AE、および Cortex-A77 プロセッサへのサポートを追加します。
* .float16 ディレクティブを Arm と AArch64 の両方に追加し、16 ビット浮動小数点リテラルのエンコードを許可します。
* MIPS の場合、-m[no-]fix-loongson3-llsc オプションを追加して、Loongson3 LLSC エラータを修正するかしないでください。--enable-mips-fix-loongson3-llsc=[yes|no]構成時オプションを追加して、デフォルトの動作を設定します。構成オプションが使用されない場合のデフォルトを「no」に設定します。
* Cortex-A53 Erratum 843419 の回避策は、使用する回避策を選択できるようになりました。--fix-cortex-a53-843419は、オプションの引数--fix-cortex-a53-843419[=full|adr|adrp]を取り、これを使用して特定の回避策を強制的に使用できるようになりました。
詳細については、AArch64の--helpを参照してください。
* AArch64 ELF リンカーの ELF GNU プログラムプロパティの GNU_PROPERTY_AARCH64_FEATURE_1_BTI および GNU_PROPERTY_AARCH64_FEATURE_1_PAC のサポートを追加します。
* AArch64 に対して -z force-bti を追加し、入力における GNU_PROPERTY_AARCH64_FEATURE_1_BTI の欠如について警告を発している間に、出力で GNU_PROPERTY_AARCH64_FEATURE_1_BTI を有効にし、BTI で保護された PLT を使用します。
* PAC が有効な PLT を選択するために AArch64 に -z pac-plt を追加します。
* --source-comment[=<txt>] オプションを objdump に追加します。これが存在する場合、逆アセンブリで表示されるソースコード行にプレフィックスを提供します。
* --set-section-alignment <section-name>=<power-of-2-align> オプションを objcopy に追加し、セクションアライメントの変更を可能にします。
* Verilog ターゲットに対する objcopy に --verilog-data-width オプションを追加し、verilog hex フォーマットのデータ要素の幅をコントロールします。
* readelf--debug-dump=links および --debug-dump=followおよび objdump--dwarf=links および
--dwarf=follow-links)の個別のデバッグ情報ファイルオプションは、ファイルに1つ以上存在する場合、複数のリンクを表示またはフォロー(あるいはその両方)するようになりました。(これは通常、gccの-gsplit-dwarfオプションを使用すると発生します)。
さらに、objdumpの--dwarf=follow-linksは、他の表示オプションにも影響を与えるようになったため、たとえば、
--symsと組み合わせると、リンクされているデバッグ情報ファイルのシンボルテーブルも表示されます。さらに、
--disassembleと組み合わせた場合、--dwarf= follow-linksオプションにより、メインファイル内のコードを逆アセンブルする際に、リンクされたファイルのシンボルテーブルが必ず読み取られ、使用されるようになります。
* objdump および readelf に、Compact Type Format でエンコードされたダンピングタイプのサポートを追加します。
の更新プログラムは、次のセキュリティ問題に対処しています
- CVE-2021-20197ユーザーが任意のファイルを所有できるようにする競合状態を修正しましたbsc#1181452。
- CVE-2021-20284elf.c の _bfd_elf_slurp_secondary_reloc_section におけるヒープベースのバッファオーバーフローを修正しましたbsc#1183511
- CVE-2021-3487過剰なデバッグセクションサイズによるサービス拒否を修正しました。これにより、bfd の dwarf2.c read_section() で過剰なメモリ消費が引き起こされますbsc#1184620。
- CVE-2020-35448libbfd.c の bfd_getl_signed_32() にあるヒープベースのバッファオーバーリードを修正しましたbsc#1184794
- CVE-2020-16590process_symbol_table() の二重解放の脆弱性を修正しましたbsc#1179898]
- CVE-2020-16591process_symbol_table() の無効な読み取りを修正しましたbsc#1179899
- CVE-2020-16592bfd_hash_lookup() の use-after-free を修正bsc#1179900。
- CVE-2020-16593scan_unit_for_symbols() の null ポインターデリファレンスを修正しましたbsc#1179901
- CVE-2020-16598debug_get_real_type() の null ポインターデリファレンスを修正しましたbsc#1179902。
- CVE-2020-16599_bfd_elf_get_symbol_version_string() の null ポインターデリファレンスを修正しましたbsc#1179903
- CVE-2020-35493細工された PEF ファイルを介して bfd/pef.c の bfd_pef_parse_function_stubs 関数にあるヒープベースのバッファオーバーフローを修正しましたbsc#1180451。
- CVE-2020-35496bfd_malloc の戻り値をチェックしないことによる、 bfd モジュールでの複数の null ポインターデリファレンスを修正しましたbsc#1180454。
- CVE-2020-35507bfd_pef_parse_function_stubs() の NULL ポインターデリファレンスを修正しましたbsc#1180461
- CVE-2019-17451dwarf2.c の _bfd_dwarf2_find_nearest_line() で SEGV を引き起こす整数オーバーフローを修正しましたbsc#1153768
- CVE-2019-17450dwarf2.c の find_abstract_instance() でのサービス拒否が修正されましたbsc#1153770
- CVE-2019-9077無効な形式の MIPS オプションセクションを介した readelf.c の process_mips_specific() におけるヒープベースのバッファオーバーフローを修正しましたbsc#1126826
- CVE-2019-9075archive64.c の _bfd_archive_64_bit_slurp_armap() のヒープベースのバッファオーバーフローを修正しましたbsc#1126829
- CVE-2019-9074libbfd.c の bfd_getl32() での SEGV を引き起こす領域外読み取りを修正しましたbsc#1126831
- CVE-2019-12972bfd.c の _bfd_doprnt() におけるヒープベースのバッファオーバーリードを修正bsc#1140126
- CVE-2019-14444readelf.c の apply_relocations() の整数オーバーフローが修正されましたbsc#1143609。
- CVE-2019-14250simple-object-elf.c の simple_object_elf_match() における整数オーバーフローを修正しましたbsc#1142649
Tenable は、前述の記述ブロックを SUSE セキュリティアドバイザリから直接抽出しています。
Nessus はこれらの問題をテストしておらず、代わりにアプリケーションが自己報告するバージョン番号にのみ依存していることに注意してください。
ソリューション
影響を受けるパッケージを更新してください。
プラグインの詳細
ファイル名: suse_SU-2021-3593-1.nasl
エージェント: unix
サポートされているセンサー: Frictionless Assessment AWS, Frictionless Assessment Azure, Frictionless Assessment Agent, Nessus Agent, Agentless Assessment, Continuous Assessment, Nessus
リスク情報
ベクトル: CVSS2#AV:N/AC:M/Au:N/C:P/I:P/A:P
ベクトル: CVSS:3.0/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
現状ベクトル: CVSS:3.0/E:P/RL:O/RC:C
脆弱性情報
CPE: p-cpe:/a:novell:suse_linux:binutils-devel, p-cpe:/a:novell:suse_linux:binutils-gold, p-cpe:/a:novell:suse_linux:cross-ppc-binutils, p-cpe:/a:novell:suse_linux:binutils, p-cpe:/a:novell:suse_linux:libctf-nobfd0, p-cpe:/a:novell:suse_linux:cross-spu-binutils, cpe:/o:novell:suse_linux:12, p-cpe:/a:novell:suse_linux:libctf0
必要な KB アイテム: Host/local_checks_enabled, Host/cpu, Host/SuSE/release, Host/SuSE/rpm-list
エクスプロイトの容易さ: Exploits are available
参照情報
CVE: CVE-2019-12972, CVE-2019-14250, CVE-2019-14444, CVE-2019-17450, CVE-2019-17451, CVE-2019-9074, CVE-2019-9075, CVE-2019-9077, CVE-2020-16590, CVE-2020-16591, CVE-2020-16592, CVE-2020-16593, CVE-2020-16599, CVE-2020-35448, CVE-2020-35493, CVE-2020-35496, CVE-2020-35507, CVE-2021-20197, CVE-2021-20284
SuSE: SUSE-SU-2021:3593-1