概要
遠端 Amazon Linux 2 主機缺少安全性更新。
說明
遠端主機上安裝的 perl-Text-CSV_XS 版本早於 1.00-3。因此,它會受到 ALAS2-2026-4048 公告中所提及的多個弱點影響。
Text::CSV_XS 版本 1.65 之前Perl洩露無法在 getline 中剖析的記錄的剖析欄位。
getline 將記錄的欄位收集到新陣列中,並僅在剖析成功時傳回對該記錄的引用。當記錄有語法錯誤時,getline 會傳回 undef,並且永遠不會釋放陣列或錯誤之前剖析的欄位。
剖析不受信任 CSV 的長時間執行處理程序會保留傳送的每筆格式錯誤的記錄,因此重複的格式錯誤輸入會耗盡其記憶體。(CVE-2026-110754)
Text::CSV_XS 版本 1.65 之前的 Perl 允許二次 CPU 使用,方法是在 getline 中複製每筆僅 CR 輸入記錄的未剖析餘數。
在預設情況下 eol 未設定的情況下,getline 使用 Perl 的預設行分隔符號進行讀取,因此僅 CR 行結尾的輸入會作為一個區塊到達。在每筆記錄之後,剖析器會將整個未剖析的剩餘部分複製到新的緩衝區中,下一個呼叫會剖析並再次複製該緩衝區,因此工作會隨著輸入大小的平方而成長。
具有預設選項的讀取器傳送具有傳統 Mac 行結尾的 CSV 檔案,會在一兆位元組的輸入上花費數秒鐘的 CPU 時間。(CVE-2026-110755)
Text::CSV_XS 版本 1.65 之前的 FOR Perl當 UTF-8 標記的欄位在列印中無效的 UTF-8 位元組之前時,刪除記錄的結尾及其行結尾。
當記錄包含 UTF-8 標記的欄位時,print 會在每次緩衝區排清時保留無效 UTF-8 的尾端位元組,以便完成在兩個排清中分割的字元。在記錄的最終排清之後,沒有任何內容會寫入保留的位元組。最後一個欄位以這樣的位元組結尾的記錄會遺失它、任何結束引號和行結尾,而 print 仍會傳回 true。Combine 不受影響。
下一條記錄會寫入同一行,或者,當引用最後一個欄位時,缺少的結束引號會讓讀者將後面的每條記錄作為該欄位的一部分。(CVE-2026-110756)
Text::CSV_XS 版本 1.65 之前的 for Perl 允許透過在組合中寫入用作數字的字串來分割記錄。
combine 和 print:當欄位的值設定了 Perl 的整數或數值旗標時,不要檢查欄位是否需要引號。當 Perl 剖析為數字時,在數值運算中使用的字串上設定這些標誌,這允許前導和尾隨空格。使用二進位設定後,就像 csv 預設所做的那樣,12\n 會通過檢查 $qty ,例如 > 0,然後用其新行不帶引號寫入。
驗證為數字的值可以提前結束記錄,並將記錄後面的欄位變成單獨的列。
(CVE-2026-110757)
Text::CSV_XS 版本 1.65 之前的版本,Perl在 strip_trail_whitespace 中allow_whitespace下的全空白欄位開始之前讀取。
在「allow_whitespace」下,strip_trail_whitespace會從每個未加引號的欄位中移除尾端空格和定位點,而不會停在欄位的開頭。對於只有空白的欄位,它會讀取欄位堆積緩衝區之前的位元組。如果該位元組也是空格或定位點,則可能會歸零,而且遍歷會繼續向後移動,視配置器放置的位置而定。
在儲存欄位之前,通常會跳過前導空白,但全空白欄位仍會在與 quote_char 不同的前導escape_char之後到達,或當其行以兩個 CR 結尾時,作為 getline 中的引號欄位到達。CVE-2026-110758
Text::CSV_XS 版本 1.65 之前的 Perl 傳回一個不在空白最後一個欄位的輸入中的 0xFF 位元組,後面接著剖析中的單獨 CR。
當要剖析的輸入以分隔字元和單獨的 CR 結尾時,剖析器會將輸入的結尾視為下一個字元,並將欄位中的檔案結尾標記儲存為位元組0xFF。使用二進位集時,parse(a,\r) 會傳回欄位 a 和 \xFF。在 UTF-8 標記的輸入上,最後一個欄位是保留該單獨位元組的 UTF-8 標記字串,這是格式錯誤的 UTF-8。具有非空白最後一個欄位的相同輸入會被視為錯誤而拒絕。
當最後一列為空時,逐行讀取並咀嚼的 CRLF 檔案會以這種方式結束,因此應用程式會收到不在其輸入中的位元組。(CVE-2026-110759)
Tenable 已直接從所測試產品的安全公告擷取前置描述區塊。
請注意,Nessus 並未測試這些問題,而是僅依據應用程式自我報告的版本號碼作出判斷。
解決方案
執行 'yum update perl-Text-CSV_XS' 或 'yum update --advisory ALAS2-2026-4048' 來更新您的系統。
Plugin 詳細資訊
檔案名稱: al2_ALAS-2026-4048.nasl
代理程式: unix
支援的感應器: Frictionless Assessment AWS, Frictionless Assessment Agent, Nessus Agent, Agentless Assessment, Continuous Assessment, Tenable Cloud Security, Tenable Self-Hosted Container Security, Nessus
風險資訊
媒介: CVSS2#AV:N/AC:L/Au:N/C:C/I:C/A:C
媒介: CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
時間媒介: CVSS:3.0/E:U/RL:O/RC:C
弱點資訊
CPE: cpe:/o:amazon:linux:2, p-cpe:/a:amazon:linux:perl-text-csv_xs-debuginfo, p-cpe:/a:amazon:linux:perl-text-csv_xs
必要的 KB 項目: Host/local_checks_enabled, Host/AmazonLinux/release, Host/AmazonLinux/rpm-list
可輕鬆利用: No known exploits are available