
Perl是高階、通用、直譯、動態的腳本程式語言,師法眾多語言特性(C、sed、awk、shell),廣泛應用於各領域,經分析數個原始程式,察覺因輸入值安全過濾欠周,易肇生segmentation fault,如Perl_my_setenv( )函數若遭遇本機輸入鉅量字串,將觸發整數溢位而破壞記憶體配置精確性;而遠端攻擊者經由變造之正規表示式語法,可衍生heap-buffer-overflow,迫使S_grok_bslash_N( )將機敏資訊寫入stderr位置,可越界讀取而獲悉重要設計關鍵,另惡意正規表示式亦可導致S_regatom( )函數溢位後,發動RCE攻擊,新版Perl已釋出並修補缺陷。
影響產品:perl 5.29.1、5.28.0、5.26.2.以前版本
解決辦法:下載perl 5.28.1,請參考https://www.perl.org/get.html。
資料來源:
- https://metacpan.org/changes/release/SHAY/perl-5.26.3
- https://rt.perl.org/Public/Bug/Display.html?id=133204
- https://rt.perl.org/Public/Bug/Display.html?id=133423
- https://rt.perl.org/Public/Bug/Display.html?id=133192
- https://rt.perl.org/Public/Bug/Display.html?id=131649
- https://securitytracker.com/id/1042181
- http://tech.mozilla.com.tw/posts/4282/address-sanitizerasan-%25E4%25B8%2580%25E5%2580%258B-cc-%25E8%25A8%2598%25E6%2586%25B6%25E9%25AB%2594%25E5%2581%25B5%25E9%258C%25AF%25E7%259A%2584%25E5%25B7%25A5%25E5%2585%25B7
- https://www.perl.org/get.html