CVE-2023-29453
Təsvir
Şablonlar geri dırnaqları (`) Javascript sətir ayırıcısı kimi düzgün nəzərə almır və onları gözlənilən şəkildə ekranlaşdırmır (escape etmir). ES6-dan başlayaraq geri dırnaqlardan JS şablon literalları üçün istifadə olunur. Əgər bir şablonda Javascript şablon literalı daxilində Go şablon hərəkəti varsa, həmin hərəkətin məzmunundan literalı sonlandırmaq və Go şablonuna ixtiyari Javascript kodu yerləşdirmək üçün istifadə edilə bilər. ES6 şablon literalları kifayət qədər mürəkkəb olduğu və özləri sətir interpolasiyası edə bildiyi üçün, bu davranışa icazə verməyin aşkar təhlükəsiz yolu olmadığından, onların daxilində Go şablon hərəkətlərinin istifadəsini sadəcə qadağan etmək qərarına gəlindi (məsələn, "var a = {{.}}"). Bu, github.com/google/safehtml ilə eyni yanaşmadır. Düzəlişdən sonra Template.Parse belə şablonlarla qarşılaşdıqda dəyəri 12 olan ErrorCode ilə Xəta (Error) qaytarır. Bu ErrorCode hazırda ixrac edilməyib (unexported), lakin Go 1.21 buraxılışında ixrac ediləcəkdir. Əvvəlki davranışdan asılı olan istifadəçilər bunu GODEBUG flag-i jstmpllitinterp=1 vasitəsilə yenidən aktivləşdirə bilərlər, lakin burada geri dırnaqların artıq ekranlaşdırılacağı qeyd edilməlidir. Bundan ehtiyatla istifadə edilməlidir.
Necə düzəltmək olar
- zabbix zabbix-agent25.0.35, 6.0.18, 6.4.3 və ya daha yeni versiya
Təsirlənən məhsullar
| Məhsul | Təsirlənən versiyalar | Düzəldildiyi versiya |
|---|---|---|
| zabbix zabbix-agent2 | 5.0.0 ≤ v < 5.0.35, 6.0.0 ≤ v < 6.0.18, 6.4.0 ≤ v < 6.4.3 | 5.0.35, 6.0.18, 6.4.3 |
Versiyanızı yoxlayın
Məhsulu seçin və istifadə etdiyiniz versiyanı yazın; versiyanın təsirlənən aralıqda olub-olmadığını görün.
Attack Surface Management
Domenlərinizə bağlı aktivləri, onlarda işləyən texnologiyaları və məlum zəiflikləri bir siyahıda görün.