Патч безпеки SUPEE-11155 - Можливі проблеми?


28

Magento випустив новий патч безпеки для M1 та оновлення для M1 та M2.

На які найпоширеніші проблеми потрібно звертати увагу, застосовуючи цей патч / оновлення?

Magento 1

https://magento.com/security/patches/supee-11155

Magento 2

Це має бути останній реліз у серії 2.1, яка досягає свого EOL наприкінці цього місяця.


1
хтось перевіряв, що це означає у світі: "Котирування, створені клієнтами, які ввійшли як гість, після оновлення Magento більше не доступні. Розширення сторонніх замовлень і закриті випадки безпеки або не працюватимуть надійно, або не працюватимуть на всі ». ?
Kalvin Klien

Мене дуже цікавлять зміни, на які посилається виправлена ​​помилка PRODSECBUG-2330
Richie Frame

Відповіді:


11

Цей патч несумісний з патчем підтримки PHP 7.2 . Видалення ліній 1711 по 1761 дозволяє застосувати виправлення. Цей патч намагається виправити файли, видалені патчем підтримки 7.2. Видалення цих рядків повинно бути безпечним.


1
На якій версії M1 ви перебуваєте (чи яку версію патча ви завантажили)? Ми користуємося спеціальною версією 1.7, тому нам потрібно буде детальніше ознайомитись
Laura

1
@Laura Я на 1.9.2
Майкл Тессел

1
Існує нова версія виправлення, v4, яка обробляє PHP 7.2.
Лора

11

Помилка встановлення на 1.7.0.2 CE із усіма попередніми встановленими виправленнями (див. Нижче).

EDIT: Проблема (№1) викликана відсутнім файлом - додаток / код / ​​core / Mage / Каталог / Модель / Продукт / Опція / Тип / File.php.orig

Питання (№1) вирішується шляхом видалення рядків 874 - 1702 (з посиланням на File.php.orig) із сценарію виправлення.

Випуск (№2) виник через неправильне форматування патчу та файлу - js / tiny_mce / plugins / media / js / media.js

Питання (№2) було вирішено за допомогою команди dos2unix як для файлу патча, так і для файлу media.js

Виправлення встановлено успішно після вирішення двох описаних проблем.

Перевірка, чи патч можна успішно застосувати / повернути ...

ПОМИЛКА: Патч неможливо застосувати / повернути успішно.

додаток для виправлення файлів / додаток для файлу виправлення файлів / Mage.php / додаток / код / ​​ядро ​​/ маг / адміністратор / модель / Block.php додаток файлу виправлення / код / ​​ядро ​​/ маг / адміністратор / модель / користувач.php файл програми патчу / код / ​​ядро ​​/ маг /AdminNotification/etc/system.xml додаток для файлу виправлення / код / ​​core / Mage / Adminhtml / Block / Api / Role / Grid / User.php програма для файлу виправлення / код / ​​core / Mage / Adminhtml / Block / Каталог / Продукт / Редагувати /Tab/Super/Config.php додаток файлу виправлення / код / ​​core / Mage / Adminhtml / Блок / Бюлетень / Черга / Preview.php додаток файлу для виправлення / код / ​​core / Mage / Adminhtml / Блок / Бюлетень / Шаблон / Preview.php додаток для виправлення файлу / код / ​​core / Mage / Adminhtml / Блок / Дозволи / Роль / Grid / User.php додаток файлу виправлення / код / ​​core / Mage / Adminhtml / Блок / Продажі / Creditmemo / Grid.php Патч-файл програми / код / core / Mage / Adminhtml / Block / Sales / Invoice / Grid.php, файл програми для виправлення / код / ​​core / Mage / Adminhtml / Block / Sales / Order / Create / Header.додаток для файлу виправлення файлів / код / ​​core / Mage / Adminhtml / Блок / Продаж / Замовлення / Creditmemo / Create.php файл програми виправлення / код / ​​core / Mage / Adminhtml / Блок / Продаж / Замовлення / Grid.php файл патч-додаток / код /core/Mage/Adminhtml/Block/Sales/Order/Invoice/Create.php додаток для файлу виправлення / код / ​​ядро ​​/ Mage / Adminhtml / Блок / Продаж / Замовлення / Відвантаження / Create.php файл виправлення / додаток / код / ​​core / Mage /Adminhtml/Block/Sales/Order/View.php файл програми виправлення / код / ​​core / Mage / Adminhtml / Блок / Продаж / Відвантаження / Grid.php Патч-файл програми додавання / код / ​​core / Mage / Adminhtml / Блок / Продажі / Угоди /Grid.php додаток файлу виправлення / код / ​​ядро ​​/ Mage / Adminhtml / Блок / Система / Електронна пошта / Шаблон / Preview.php файл програми виправлення / код / ​​core / Mage / Adminhtml / Block / Template.php файл патч-додаток / код / core / Mage / Adminhtml / Block / Widget / Grid / Column / Renderer / Abstract.додаток файлу для виправлення файлів / код / ​​core / Mage / Adminhtml / Модель / LayoutUpdate / Validator.php програма для файлу виправлення / код / ​​core / Mage / Adminhtml / Model / System / Config / Backend / Baseurl.php /Mage/Adminhtml/Model/System/Config/Backend/Locale.php додаток файлу виправлення / код / ​​ядро ​​/ Mage / Adminhtml / Модель / Система / Налаштування / Backend / Серіалізований / Array.php файл патч-програми / код / ​​core / Mage /Adminhtml/controllers/Catalog/Product/AttributeController.php додаток файлу виправлення / код / ​​ядро ​​/ Mage / Adminhtml / контролери / Каталог / Продукт / ОглядController.php файл виправлення / додаток / код / ​​core / Mage / Adminhtml / контролери / Каталог / ProductController .php додаток файлу виправлення / код / ​​ядро ​​/ Mage / Adminhtml / контролери / Checkout / AgreementController.php додаток файлу виправлення / код / ​​core / Mage / Adminhtml / контролери / бюлетень / TemplateController.додаток для файлу виправлення файлів / код / ​​ядро ​​/ Mage / Adminhtml / контролери / Промо / КаталогController.php додаток файлу виправлення / код / ​​ядро ​​/ Mage / Adminhtml / контролери / Promo / QuoteController.php файл виправлення / додаток / код / ​​core / Mage / Adminhtml /controllers/Sales/Order/CreateController.php додаток файлу виправлення / код / ​​core / Mage / Adminhtml / контролери / SitemapController.php файл виправлення файл / код / ​​core / Mage / Adminhtml / контролери / Система / Email / TemplateController.php app / code / core / Mage / Каталог / Helper / Product.php Наступнийдодаток для файлу виправлення файлів / код / ​​core / Mage / Adminhtml / контролери / Система / Електронна пошта / TemplateController.php Програма для файлу виправлення / код / ​​core / Mage / Каталог / Helper / Product.php Наступнийдодаток для файлу виправлення файлів / код / ​​core / Mage / Adminhtml / контролери / Система / Електронна пошта / TemplateController.php Програма для файлу виправлення / код / ​​core / Mage / Каталог / Helper / Product.php Наступний

патч видалить файл-додаток / код / ​​core / Mage / Catalog / Model / Product / Option / Type / File.php.orig, якого не існує!
Припустимо -R? [n]
Застосувати все-таки? [n]
Пропуск виправлення. 1 з 1 лук ігнорував файл виправлення

додаток / код / ​​core / Mage / Каталог / контролери / Продукт / ПорівнятиController.php файл програми виправлення / код / ​​core / Mage / Checkout / Модель / Session.php додаток файлу для виправлення / код / ​​core / Mage / Checkout / контролери / OnepageController. додаток для файлів для виправлення файлів / код / ​​core / Mage / Cms / Helper / додаток для файлу виправлення файлів для файлів Data.php / код / ​​core / Mage / Cms / Модель / Wysiwyg / Config.php файл програми для виправлення / код / ​​core / Mage / Cms / тощо /config.xml файл програми виправлення / код / ​​ядро ​​/ Mage / компілятор / модель / Process.php додаток для файлу виправлення / код / ​​ядро ​​/ маг / ядро ​​/ помічник / абстракт.php файл файлу для виправлення / код / ​​ядро ​​/ маг / ядро ​​/ Довідка / додаток для файлу виправлення файлів / код / ​​ядро ​​/ Mage / Core / Модель / Дизайн / Package.php додаток для файлу виправлення / код / ​​ядро ​​/ Mage / Core / Модель / Електронна пошта / Шаблон / Filter.php Патч-файл програми / код /core/Mage/Core/Model/File/Validator/AvailablePath.php додаток файлу виправлення / код / ​​core / Mage / Core / Model / Observer.додаток для файлу виправлення файлів / код / ​​core / Mage / Core / тощо / config.xml файл програми виправлення / код / ​​core / Mage / Core / функции.php файл програми виправлення / код / ​​core / Mage / CurrencySymbol / Model / System / Currencysymbol .php додаток файлу виправлення / код / ​​core / Mage / завантажуваний / контролери / DownloadController.php додаток файлу виправлення / код / ​​ядро ​​/ Mage / SalesRule / модель / купон / Massgenerator.php файл програми виправлення / код / ​​core / Mage / SalesRule / Модель / Ресурс / Звіт / Правило / Createdat.php файл файлу виправлення / код / ​​core / Mage / Sendfriend / і т.д. / config.xml файл виправлення файлу / код / ​​core / Mage / Sendfriend / тощо / system.xml файл виправлення / додаток / дизайн /adminhtml/default/default/template/catalog/product/composite/fieldset/configurable.phtml додаток файлу виправлення / дизайн / adminhtml / за замовчуванням / за замовчуванням / шаблон / каталог / продукт / помічник / галерея.додаток для файлу виправлення файлів phtml / дизайн / adminhtml / за замовчуванням / за замовчуванням / шаблон / каталог / продукт / вкладка / інвентар /default/default/template/customer/tab/addresses.phtml файл виправлення / додаток / дизайн / adminhtml / за замовчуванням / за замовчуванням / шаблон / клієнт / вкладка / view.phtml файл виправлення / додаток / дизайн / adminhtml / за замовчуванням / шаблон / повідомлення / повідомлення /window.phtml файл виправлення файлу / дизайн / adminhtml / за замовчуванням / за замовчуванням / шаблон / продаж / замовлення / створення / data.phtml файл виправлення файл програми / дизайн / adminhtml / default / default / шаблон / продаж / замовлення / view / info.phtml додаток для виправлення файлів / дизайн / adminhtml / за замовчуванням / за замовчуванням / шаблон / система / валюта / курс / matrix.phtml додаток для файлу виправлення / locale / en_US / Mage_Adminhtml.csv додаток файлу виправлення / locale / en_US / Mage_Core.додаток для файлу виправлення у форматі csv / locale / en_US / Mage_Sales.csv файл програми виправлення / locale / en_US / Mage_Sitemap.csv файл виправлення js / mage / adminhtml / wysiwyg / tiny_mce / setup.js файл виправлення js / tiny_mce / plugins / media / js / media.js

Hunk №1 ВИМКНЕНО в 434. 1 з 1 парки НЕПОЛАДЕНО - збереження відхилень у файл js / tiny_mce / plugins / media / js / media.js.rej файл виправлення

js / varien / js.js файл виправлення lib / phpseclib / PHP / Compat / Function / array_fill.php файл виправлення файлу lib / phpseclib / PHP / Compat / Function / bcpowmod.php .php


Дякую. Ці два питання також були питаннями, з якими я стикався з 1.7.0.2 та PATCH_SUPEE-11155_CE_1.7.0.2_v3-2019-06-18-08-07-47.sh
Ентоні,

Виявлено 1.7.0.2 випусків.
shaune

9

Magento 1.9.1.0.

Патч успішно застосовано.

Після додавання товару до кошика та входу в систему кошик знову порожній.

Я не думаю, що це було раніше і, мабуть, були внесені зміни app/code/core/Mage/Checkout/Model/Session.php

ОНОВЛЕННЯ:

Я трохи це налагодив.

Коли я відновлю виправлену версію, app/code/core/Mage/Checkout/Model/Session.phpвона знову працює для мене. Тому я майже впевнений, що це стосується виправлення.

Я спершу подумав, що це було спільно з, $quote->unsetData();але мої тести були непереконливими, і видалити його все одно не було б виправлення.

Оскільки я зараз у відпустці, у мене є обмежений час для подальшого дослідження цього питання.

ОНОВЛЕННЯ 2:

Здається, це питання вирішено останнім виправленням (SUPEE-11219). До програми / коду / core / Mage / Checkout / Model / Session.php включені зміни.


У Magento є примітка до приміток до випуску: "Котирування, створені клієнтами, які ввійшли як гість, після оновлення Magento більше не доступні. Розширення сторонніх замовлень і закриті випадки безпеки або не працюватимуть надійно, або не працюватимуть взагалі. ". Я зараз прошу їх роз'яснити. devdocs.magento.com/guides/m1x/ce19-ee114/…
Kalvin Klien

Привіт @Claudio, ти знайшов рішення / відповідь на це питання? На даний момент я стикаюся з тим же: додати в кошик -> замовлення -> створення акаунта -> повернутися на головну сторінку, порожній кошик, але увійшов у систему ... Дякую заздалегідь.
Антуан Коцюба

Привіт @AntoineKociuba, на жаль, ні. Я не дуже шукав солютіонен, хоча чесно.
Клаудіо

Здається, це питання вирішено останнім виправленням (SUPEE-11219). До програми / коду / core / Mage / Checkout / Model / Session.php включені зміни.
Клаудіо

7

На M1, зокрема 1.9.2.1 w / всі попередні застосовані патчі. Я отримав таку помилку:

Hunk #1 FAILED at 483.
1 out of 1 hunk FAILED -- saving rejects to file js/tiny_mce/plugins/media/js/media.js.rej

Видалення рядків про цей файл із файлу патча та вручну застосовано цю зміну працювали для мене, коли я повторно застосував файл патчу.

Коли я подивився на різницю між файлом js / tiny_mce / plugins / media / js / media.js та файлом з OpenMage Mirror, вони були однаковими файлами.


Цей файл взагалі не торкався жодних патчів або оновлень вручну. Це здається проблемою в патчі? Якщо дивитися на назву, схоже, що до її виходу вже було 1-3 версії.
Kalvin Klien

Була ця проблема 1.9.1.1 із усіма застосованими попередніми виправленнями. Для мене працювала заміна js / tiny_mce / plugins / media / js / media.js файлом з дзеркала OpenMage. Хоча вміст файлів був однаковим, я думаю, що закінчення рядків у моєму наявному файлі чомусь були помилковими.
wr125

5
Запуск dos2unix на патчі перед застосуванням вирішив проблему для нас. Раніше не вдалося, як зазначено вище, завершено успішно після.
joesk

Запуск dos2unix у патч-файлі вирішив цю проблему для мене 1.9.2.3, але я не знайшов, що це вимагається 1.9.2.1 (я спробував це з цікавості, і це спричинило збій патча).
Дейв Герберт

5

1.9.1.0, після успішного застосування патча, потрапляйте нижче помилки під час входу адміністратора

Fatal error: Call to undefined function random_int() in /app/code/core/Mage/Core/Helper/Data.php on line 257 

як виправити?


Також після оновлення з 1.9.4.1 до 1.9.4.2 ми відчуваємо той самий випуск.
joesk

Я отримую те саме питання в 1.9.4.1 з 11155.
seanbreeden

7
Проблема виявилася перекриттям програми / коду / core / Mage / Core / function.php. Переконайтесь, що ніхто не перекрив цей файл, або виправлення не вийде з помилкою виклику невизначеної функції. Подивіться у "app / code / local / Mage / Core /
функции.php

1
ви дуже праві.
червень

1
Дуже дякую @seanbreeden!
Маурісіо Пас

3

На M1, 1.9.1.0 із усіма застосованими попередніми патчами я отримую численні помилки:

checking file app/Mage.php 
Hunk #1 FAILED at 813. 
1 out of 1 hunk FAILED

checking file app/code/core/Mage/Adminhtml/Block/Catalog/Product/Edit/Tab/Super/Config.php
Hunk #1 FAILED at 155.
1 out of 1 hunk FAILED

checking file app/code/core/Mage/Adminhtml/Model/LayoutUpdate/Validator.php
Hunk #1 FAILED at 180.
1 out of 1 hunk FAILED

checking file app/code/core/Mage/Cms/Helper/Data.php
Hunk #1 FAILED at 37.
Hunk #2 succeeded at 58 with fuzz 2 (offset -16 lines).
1 out of 2 hunks FAILED

checking file app/design/adminhtml/default/default/template/catalog/product/helper/gallery.phtml
Hunk #1 FAILED at 59.
1 out of 1 hunk FAILED

checking file js/tiny_mce/plugins/media/js/media.js
Hunk #1 FAILED at 483 (different line endings).
1 out of 1 hunk FAILED

Переглядаючи сам код у файлі патча, виявляється, що він взагалі не відповідає PHP у моїй установці.

Може, я пропустив патч десь по дорозі?


Я думаю, ви, мабуть, пропустили патч. Перевірте /app/etc/applied.patches.list
Kalvin Klien

см: magento.stackexchange.com/a/280148/202 щодо Hunk # 1 FAILED на 59 на gallery.phtml - можливо , у вас є , що зміни в коді, а?
ProxiBlue

@Matt Ви зрозуміли, який патч ви пропустили?
рупі

3

Magento 1.7.0.2

Я отримую:

Hunk #1 succeeded at 113 with fuzz 2 (offset 4 lines).
checking file js/tiny_mce/plugins/media/js/media.js
checking file js/varien/js.js

Hunk #1 succeeded at 707 (offset 5 lines).
checking file lib/phpseclib/PHP/Compat/Function/array_fill.php
checking file lib/phpseclib/PHP/Compat/Function/bcpowmod.php
checking file lib/phpseclib/PHP/Compat/Function/str_split.php

Це з PHP 7.2 патча?

ОНОВЛЕННЯ: схоже, що ці файли насправді були нормальними, це просто порожній простір.

Файл проблеми був:

checking file app/code/core/Mage/Catalog/Model/Product/Option/Type/File.php.orig

Я думаю, що це був якийсь файл, який залишився одним із патчів. Новий патч просто видаляє цей файл. У мене в цьому каталозі не було, тому з’явилася помилка.

ОНОВЛЕННЯ: список файлів, на які постраждали Magento 1.7.0.2

app/Mage.php
app/code/core/Mage/Admin/Model/Block.php
app/code/core/Mage/Admin/Model/User.php
app/code/core/Mage/AdminNotification/etc/system.xml
app/code/core/Mage/Adminhtml/Block/Api/Role/Grid/User.php
app/code/core/Mage/Adminhtml/Block/Catalog/Product/Edit/Tab/Super/Config.php
app/code/core/Mage/Adminhtml/Block/Newsletter/Queue/Preview.php
app/code/core/Mage/Adminhtml/Block/Newsletter/Template/Preview.php
app/code/core/Mage/Adminhtml/Block/Permissions/Role/Grid/User.php
app/code/core/Mage/Adminhtml/Block/Sales/Creditmemo/Grid.php
app/code/core/Mage/Adminhtml/Block/Sales/Invoice/Grid.php
app/code/core/Mage/Adminhtml/Block/Sales/Order/Create/Header.php
app/code/core/Mage/Adminhtml/Block/Sales/Order/Creditmemo/Create.php
app/code/core/Mage/Adminhtml/Block/Sales/Order/Grid.php
app/code/core/Mage/Adminhtml/Block/Sales/Order/Invoice/Create.php
app/code/core/Mage/Adminhtml/Block/Sales/Order/Shipment/Create.php
app/code/core/Mage/Adminhtml/Block/Sales/Order/View.php
app/code/core/Mage/Adminhtml/Block/Sales/Shipment/Grid.php
app/code/core/Mage/Adminhtml/Block/Sales/Transactions/Grid.php
app/code/core/Mage/Adminhtml/Block/System/Email/Template/Preview.php
app/code/core/Mage/Adminhtml/Block/Template.php
app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Abstract.php
app/code/core/Mage/Adminhtml/Model/LayoutUpdate/Validator.php
app/code/core/Mage/Adminhtml/Model/System/Config/Backend/Baseurl.php
app/code/core/Mage/Adminhtml/Model/System/Config/Backend/Locale.php
app/code/core/Mage/Adminhtml/Model/System/Config/Backend/Serialized/Array.php
app/code/core/Mage/Adminhtml/controllers/Catalog/Product/AttributeController.php
app/code/core/Mage/Adminhtml/controllers/Catalog/Product/ReviewController.php
app/code/core/Mage/Adminhtml/controllers/Catalog/ProductController.php
app/code/core/Mage/Adminhtml/controllers/Checkout/AgreementController.php
app/code/core/Mage/Adminhtml/controllers/Newsletter/TemplateController.php
app/code/core/Mage/Adminhtml/controllers/Promo/CatalogController.php
app/code/core/Mage/Adminhtml/controllers/Promo/QuoteController.php
app/code/core/Mage/Adminhtml/controllers/Sales/Order/CreateController.php
app/code/core/Mage/Adminhtml/controllers/SitemapController.php
app/code/core/Mage/Adminhtml/controllers/System/Email/TemplateController.php
app/code/core/Mage/Catalog/Helper/Product.php
app/code/core/Mage/Catalog/controllers/Product/CompareController.php
app/code/core/Mage/Checkout/Model/Session.php
app/code/core/Mage/Checkout/controllers/OnepageController.php
app/code/core/Mage/Cms/Helper/Data.php
app/code/core/Mage/Cms/Model/Wysiwyg/Config.php
app/code/core/Mage/Cms/etc/config.xml
app/code/core/Mage/Compiler/Model/Process.php
app/code/core/Mage/Core/Helper/Abstract.php
app/code/core/Mage/Core/Helper/Data.php
app/code/core/Mage/Core/Model/Design/Package.php
app/code/core/Mage/Core/Model/Email/Template/Filter.php
app/code/core/Mage/Core/Model/File/Validator/AvailablePath.php
app/code/core/Mage/Core/Model/Observer.php
app/code/core/Mage/Core/etc/config.xml
app/code/core/Mage/Core/functions.php
app/code/core/Mage/CurrencySymbol/Model/System/Currencysymbol.php
app/code/core/Mage/Downloadable/controllers/DownloadController.php
app/code/core/Mage/SalesRule/Model/Coupon/Massgenerator.php
app/code/core/Mage/SalesRule/Model/Resource/Report/Rule/Createdat.php
app/code/core/Mage/Sendfriend/etc/config.xml
app/code/core/Mage/Sendfriend/etc/system.xml
app/design/adminhtml/default/default/template/catalog/product/composite/fieldset/configurable.phtml
app/design/adminhtml/default/default/template/catalog/product/helper/gallery.phtml
app/design/adminhtml/default/default/template/catalog/product/tab/inventory.phtml
app/design/adminhtml/default/default/template/currencysymbol/grid.phtml
app/design/adminhtml/default/default/template/customer/tab/addresses.phtml
app/design/adminhtml/default/default/template/customer/tab/view.phtml
app/design/adminhtml/default/default/template/notification/window.phtml
app/design/adminhtml/default/default/template/sales/order/create/data.phtml
app/design/adminhtml/default/default/template/sales/order/view/info.phtml
app/design/adminhtml/default/default/template/system/currency/rate/matrix.phtml
app/etc/applied.patches.list
app/locale/en_US/Mage_Adminhtml.csv
app/locale/en_US/Mage_Core.csv
app/locale/en_US/Mage_Sales.csv
app/locale/en_US/Mage_Sitemap.csv
js/mage/adminhtml/wysiwyg/tiny_mce/setup.js
js/mage/adminhtml/wysiwyg/tiny_mce/setup.js.orig
js/tiny_mce/plugins/media/js/media.js
js/varien/js.js
js/varien/js.js.orig
lib/phpseclib/PHP/Compat/Function/array_fill.php
lib/phpseclib/PHP/Compat/Function/bcpowmod.php
lib/phpseclib/PHP/Compat/Function/str_split.php

2

У версії M1 1.9.4.0 із усіма застосованими попередніми виправленнями я отримав таку помилку

checking file app/Mage.php
Hunk #1 FAILED at 816.
1 out of 1 hunk FAILED

як я бачу з файлу патчів, він шукає

diff --git app/Mage.php app/Mage.php
index 1136f6e9351..eb9e6db3a9e 100644
--- app/Mage.php
+++ app/Mage.php
@@ -816,9 +816,9 @@ final class Mage
             ',',
             (string) self::getConfig()->getNode('dev/log/allowedFileExtensions', Mage_Core_Model_Store::DEFAULT_CODE)
         );
-        $logValidator = new Zend_Validate_File_Extension($_allowedFileExtensions);
         $logDir = self::getBaseDir('var') . DS . 'log';
-        if (!$logValidator->isValid($logDir . DS . $file)) {
+        $validatedFileExtension = pathinfo($file, PATHINFO_EXTENSION);
+        if (!$validatedFileExtension || !in_array($validatedFileExtension, $_allowedFileExtensions)) {
             return;
         }

але натомість ось що у мене є

        }

        try {
            if (!isset($loggers[$file])) {
                $logDir  = self::getBaseDir('var') . DS . 'log';
                $logFile = $logDir . DS . $file;

                if (!is_dir($logDir)) {
                    mkdir($logDir);

Я підтвердив на https://raw.githubusercontent.com/OpenMage/magento-mirror/1.9.4.0/app/Mage.php, що у нас є правильний код та версія.

Буде оновлено, якщо я знайду рішення


Те саме питання з 1.9.3.7
veli

Я згоден з @Haim. Я також отримую те саме питання після застосування патчу SUPEE -11155 на M1 версії 1.9.4.0. Нижче однієї помилки Перевірка, чи можна успішно застосувати / повернути патч ... -e ПОМИЛКА: Патч неможливо застосувати / повернути успішно. перевірка файлового додатка / Mage.php Hunk №1 НЕ ВІДКЛЮЧЕНО в 816. 1 з 1 парка НЕПРАВИЛИ Повідомте мене, якщо хтось знайде рішення
Vikas Gupta

2

Використання open-mage-lts 1.9.4.1

перевірка файлового додатка / дизайн / adminhtml / за замовчуванням / за замовчуванням / шаблон / каталог / продукт / помічник / gallery.phtml Hunk №1 ЗНАНИЛО в 59. 1 з 1 пар

Порівнюючи -lts до основного:

00:20 $ diff app/design/adminhtml/default/default/template/catalog/product/helper/gallery.phtml /tmp/gallery.phtml 
62c62
<                 <th><?php echo str_replace("&lt;br/&gt;","<br/>",$this->escapeHtml($type['label'])); ?></th>
---
>                 <th><?php echo $this->escapeHtml($type['label']); ?></th>

який був введений цим піаром в -lts

https://github.com/OpenMage/magento-lts/pull/596

https://github.com/OpenMage/magento-lts/pull/788


Виправлений код:

-                <th><?php echo $this->escapeHtml($type['label']); ?></th>
+                <th><?php echo $this->escapeHtml($type['label'], array('br')); ?></th>

Якщо ви використовуєте корпоративне видання 1.14.4.0, той самий код помилки викликаний попереднім патчем безпеки 10888. Виправлення цього в оновленому рядку 61 програми / design / adminhtml / default / default / шаблон / каталог / продукт / helper / gallery.phtml Від: <? Php foreach ($ _block-> getImageTypes () як $ typeId => $ type):?> До: <? Php foreach ($ _block-> getImageTypes () як $ typeId => $ type):?>
Бабер

2

У SUPEE-11155 (CE / EE) чогось не вистачає, це те, що у Mage_Catalog_Helper_Productфайлі класу getDefaultProductValueбуло введено метод, який покладається на DEFAULT_QTYпостійну змінну.

Проблема полягає в тому, що ця змінна не існує у багатьох різних файлах патчів, і є лише у кількох з них: https://ibb.co/LzcL0gn

Невже ми це заклеїмо? Мадженто, ти про це знаєш?

Thx всі


Що змушує вас сказати, що змінна не знаходиться в патчі - це проблема? Змінна, ймовірно, вже існує в цій версії Magento.
Пітер О'Каллаган

@ PeterO'Callaghan Nop, проблема полягає в тому, що ця змінна не існує весь час у цій версії. Перевірено на EE 1.14.0.1 та EE 1.14.2.2, і нічого. Щоб підтвердити це, ми можемо побачити, що у версіях CE 1.8 ця змінна не включена у виправлення та не є за замовчуванням у вихідному коді ні (див. Github.com/OpenMage/magento-mirror/blob/magento-1.8 / додаток / код /… ). Так що ми впевнені, що у нас, на жаль, існує проблема у кількох версіях CE / EE.
Антуан Коцюба

2

Це тільки я чи це не схоже на помилку?

PATCH_SUPEE-11155_EE_1.14.2.0_v3-2019-06-18-08-46-48.sh

  • Функція написана для отримання значення продукту за замовчуванням за назвою поля, але завжди поверне:
    • $ fieldData ['інвентар']; (інвентар)
    • self :: DEFAULT_QTY (ця константа не визначена)

Я чогось тут пропускаю?

   1026 diff --git app/code/core/Mage/Catalog/Helper/Product.php app/code/core/Mage/Catalog/Helper/Product.php
   1027 index 45756bf74dc..476483f35bb 100755
   1028 --- app/code/core/Mage/Catalog/Helper/Product.php
   1029 +++ app/code/core/Mage/Catalog/Helper/Product.php
   1030 @@ -485,4 +485,41 @@ class Mage_Catalog_Helper_Product extends Mage_Core_Helper_Url
   1031      {
   1032          return $this->_skipSaleableCheck;
   1033      }
   1034 +
   1035 +    /**
   1036 +     * Get default product value by field name
   1037 +     *
   1038 +     * @param string $fieldName
   1039 +     * @param string $productType
   1040 +     * @return int
   1041 +     */
   1042 +    public function getDefaultProductValue($fieldName, $productType)
   1043 +    {
   1044 +        $fieldData = $this->getFieldset($fieldName) ? (array) $this->getFieldset($fieldName) : null;
   1045 +        if (
   1046 +            count($fieldData)
   1047 +            && array_key_exists($productType, $fieldData['product_type'])
   1048 +            && (bool)$fieldData['use_config']
   1049 +        ) {
   1050 +            return $fieldData['inventory'];
   1051 +        }
   1052 +        return self::DEFAULT_QTY;
   1053 +    }
   1054 +
   1055 +    /**
   1056 +     * Return array from config by fieldset name and area
   1057 +     *
   1058 +     * @param null|string $field
   1059 +     * @param string $fieldset
   1060 +     * @param string $area
   1061 +     * @return array|null
   1062 +     */
   1063 +    public function getFieldset($field = null, $fieldset = 'catalog_product_dataflow', $area = 'admin')
   1064 +    {
   1065 +        $fieldsetData = Mage::getConfig()->getFieldset($fieldset, $area);
   1066 +        if ($fieldsetData) {
   1067 +            return $fieldsetData ? $fieldsetData->$field : $fieldsetData;
   1068 +        }
   1069 +        return $fieldsetData;
   1070 +    }

The Хороша новина в тому , що вона називається тільки через одну області в коді і до тих пір , поки у вас є дійсний ідентифікатор продукту не викликатиме цю функцію. Але якщо немає дійсного ідентифікатора продукту або хтось намагається використати цю функцію, виходячи з того, як вона була розроблена, проблеми, ймовірно, з'являться.

додаток / дизайн / adminhtml / за замовчуванням / за замовчуванням / шаблон / каталог / продукт / вкладка / інвентар.phtml

<?php echo (bool)$this->getProduct()->getId() ? (int)$this->getFieldValue('min_sale_qty') : Mage::helper('catalog/product')->getDefaultProductValue('min_sale_qty', $this->getProduct()->getTypeId()) ?>

2

Для тих, хто використовує PHP 5.3 (або менше 5.4), то ось деякі частини патча, які вам потрібно буде змінити.

Для довідки, це для PATCH_SUPEE-11155_CE_1.7.0.2_v4-2019-08-01-03-58-34

додаток / код / ​​core / Mage / Adminhtml / контролери / бюлетень / TemplateController.php

$allowedHtmlTags = ['text', 'styles'];

FIX:
$allowedHtmlTags = array('text', 'styles');

додаток / код / ​​core / Mage / Adminhtml / контролери / Система / Електронна пошта / TemplateController.php

$allowedHtmlTags = ['template_text', 'styles']

FIX:
$allowedHtmlTags = array('template_text', 'styles');

app / code / core / Mage / Cms / Helper / Data.php

$statusSwf = $statusSwf->asArray()[0];

FIX:
$statusSwf = $statusSwf->asArray();
$statusSwf = $statusSwf[0];

Примітка. Якщо ви змінюєте їх у файлі патчу, не забудьте змінити також позиції довжини, оскільки ви додаєте новий рядок у файл патчу. Наприклад для останнього, згаданого вище:

@@ -74,4 +75,19 @@ class Mage_Cms_Helper_Data extends Mage_Core_Helper_Abstract

change to 

@@ -74,4 +75,20 @@ class Mage_Cms_Helper_Data extends Mage_Core_Helper_Abstract
             ^^ incremented

2

EE 1.13.1.0 під керуванням PHP 7.0.x з модулем Inchoo PHP7:

Акції> Правила кошика (можливо, і інші): ви не можете зберегти правило, виняток - "Неправильне правило вказано".

Ми вирішили це, переписавши Mage_Adminhtml_Helper_Data :: removeTags з текстом з 1.14.xx (я використав 1.14.4.0 - не впевнений у точній версії, яка його змінила).

Оновлена ​​версія:

public function removeTags($html)
{
    $html = preg_replace_callback(
        "# <(?![/a-z]) | (?<=\s)>(?![a-z]) #xi",
        function ($matches) {
            return htmlentities($matches[0]);
        },
        $html
    );
    $html =  strip_tags($html);
    return htmlspecialchars_decode($html);
}

1

Мав те саме питання, що і @Mat

On M1, 1.9.1.0 with all previous patches applied, I get numerous errors:

У моєму рядку закінчення не було встановлено на unix / macosx на репо (інший розробник із використанням Win-dows).

використовував dos2unix для перетворення необхідних файлів і працював.

І як @chaoticgeek, у мене є:

Hunk #1 FAILED at 483. 1 out of 1 hunk FAILED -- saving rejects to file js/tiny_mce/plugins/media/js/media.js.rej

Це сталося на всіх репозах (6) до цих пір, 1.9.2.4, 1.9.3.8 х 2, 1.9.3.2 х 2 та 1.9.2.1.


Підтвердили те саме питання на EE 1.13.10
Лаура

1

той самий випуск на Magento CE 1.8.1 із усіма застосованими патчами:

перевірка файлового додатка / Mage.php Hunk №1 НЕ ВІДПОВІДАЄТЬСЯ 813. 1 з 1 пар

будь-яка допомога / ідея там?


1

додаток / код / ​​core / Mage / Adminhtml / контролери / System / ConfigController.php

змінити це на:

-> setGroupsSelector ($ groups) to -> setGroups ($ groups)


0

На M1, 1.9.1.0 у мене є

Hunk #1 FAILED at 483 (different line endings).

Навіть коли бігаю

find . -type f -exec dos2unix {} \;

нічого не змінюється.

Як я можу знати, який це файл? 486 - лінія шляху?


Не вдалося знайти будь-яке рішення, тому мені довелося пропустити шлях у середовищі Win. Оскільки виправлення працює лише з файлами, немає необхідності мати веб-сервер.
Гіпо

0

Зараз я перебуваю на v1.9.3.1 і в мене виникло кілька конфліктів. Я використовую третю версію патча (див. Ім'я файлу):

EDIT: Після деякої перевірки ми фактично не вистачаємо деяких попередніх виправлень. Буде оновлено пізніше.

PATCH_SUPEE-11155_CE_1.9.3.1_v3-2019-06-18-08-15-43.sh: 14: PATCH_SUPEE-11155_CE_1.9.3.1_v3-2019-06-18-08-15-43.sh: 127: not found
PATCH_SUPEE-11155_CE_1.9.3.1_v3-2019-06-18-08-15-43.sh: 14: PATCH_SUPEE-11155_CE_1.9.3.1_v3-2019-06-18-08-15-43.sh: 127: not found
PATCH_SUPEE-11155_CE_1.9.3.1_v3-2019-06-18-08-15-43.sh: 25: PATCH_SUPEE-11155_CE_1.9.3.1_v3-2019-06-18-08-15-43.sh: 0: not found
Checking if patch can be applied/reverted successfully...
-e ERROR: Patch can\'t be applied/reverted successfully.

checking file app/Mage.php
checking file app/code/core/Mage/Admin/Model/Block.php
checking file app/code/core/Mage/Admin/Model/User.php
Hunk #1 succeeded at 586 (offset -4 lines).
checking file app/code/core/Mage/AdminNotification/etc/system.xml
checking file app/code/core/Mage/Adminhtml/Block/Api/Role/Grid/User.php
checking file app/code/core/Mage/Adminhtml/Block/Catalog/Product/Edit/Tab/Super/Config.php
Hunk #1 FAILED at 155.
1 out of 1 hunk FAILED
checking file app/code/core/Mage/Adminhtml/Block/Newsletter/Queue/Preview.php
checking file app/code/core/Mage/Adminhtml/Block/Newsletter/Template/Preview.php
checking file app/code/core/Mage/Adminhtml/Block/Permissions/Role/Grid/User.php
checking file app/code/core/Mage/Adminhtml/Block/Sales/Creditmemo/Grid.php
checking file app/code/core/Mage/Adminhtml/Block/Sales/Invoice/Grid.php
checking file app/code/core/Mage/Adminhtml/Block/Sales/Order/Create/Header.php
checking file app/code/core/Mage/Adminhtml/Block/Sales/Order/Creditmemo/Create.php
checking file app/code/core/Mage/Adminhtml/Block/Sales/Order/Grid.php
checking file app/code/core/Mage/Adminhtml/Block/Sales/Order/Invoice/Create.php
checking file app/code/core/Mage/Adminhtml/Block/Sales/Order/Shipment/Create.php
checking file app/code/core/Mage/Adminhtml/Block/Sales/Order/View.php
checking file app/code/core/Mage/Adminhtml/Block/Sales/Shipment/Grid.php
checking file app/code/core/Mage/Adminhtml/Block/Sales/Transactions/Grid.php
checking file app/code/core/Mage/Adminhtml/Block/System/Email/Template/Preview.php
checking file app/code/core/Mage/Adminhtml/Block/Template.php
checking file app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Abstract.php
checking file app/code/core/Mage/Adminhtml/Model/LayoutUpdate/Validator.php
Hunk #1 FAILED at 180.
1 out of 1 hunk FAILED
1 out of 1 hunk FAILED
checking file app/code/core/Mage/Adminhtml/Model/System/Config/Backend/Baseurl.php
checking file app/code/core/Mage/Adminhtml/Model/System/Config/Backend/Locale.php
checking file app/code/core/Mage/Adminhtml/Model/System/Config/Backend/Serialized/Array.php
checking file app/code/core/Mage/Adminhtml/controllers/Catalog/Product/AttributeController.php
checking file app/code/core/Mage/Adminhtml/controllers/Catalog/Product/ReviewController.php
checking file app/code/core/Mage/Adminhtml/controllers/Catalog/ProductController.php
checking file app/code/core/Mage/Adminhtml/controllers/Checkout/AgreementController.php
checking file app/code/core/Mage/Adminhtml/controllers/Newsletter/TemplateController.php
checking file app/code/core/Mage/Adminhtml/controllers/Promo/CatalogController.php
checking file app/code/core/Mage/Adminhtml/controllers/Promo/QuoteController.php
checking file app/code/core/Mage/Adminhtml/controllers/Sales/Order/CreateController.php
checking file app/code/core/Mage/Adminhtml/controllers/SitemapController.php
checking file app/code/core/Mage/Adminhtml/controllers/System/Email/TemplateController.php
checking file app/code/core/Mage/Catalog/Helper/Product.php
checking file app/code/core/Mage/Catalog/controllers/Product/CompareController.php
checking file app/code/core/Mage/Checkout/Model/Session.php
checking file app/code/core/Mage/Checkout/controllers/OnepageController.php
Hunk #1 succeeded at 570 (offset 8 lines).
checking file app/code/core/Mage/Cms/Helper/Data.php
checking file app/code/core/Mage/Cms/Model/Wysiwyg/Config.php
checking file app/code/core/Mage/Cms/etc/config.xml
checking file app/code/core/Mage/Compiler/Model/Process.php
checking file app/code/core/Mage/Core/Helper/Abstract.php
checking file app/code/core/Mage/Core/Helper/Data.php
checking file app/code/core/Mage/Core/Model/Design/Package.php
checking file app/code/core/Mage/Core/Model/Email/Template/Filter.php
checking file app/code/core/Mage/Core/Model/File/Validator/AvailablePath.php
checking file app/code/core/Mage/Core/Model/Observer.php
checking file app/code/core/Mage/Core/etc/config.xml
checking file app/code/core/Mage/Core/functions.php
checking file app/code/core/Mage/CurrencySymbol/Model/System/Currencysymbol.php
checking file app/code/core/Mage/Downloadable/controllers/DownloadController.php
checking file app/code/core/Mage/SalesRule/Model/Coupon/Massgenerator.php
checking file app/code/core/Mage/SalesRule/Model/Resource/Report/Rule/Createdat.php
checking file app/code/core/Mage/Sendfriend/etc/config.xml
checking file app/code/core/Mage/Sendfriend/etc/system.xml
checking file app/design/adminhtml/default/default/template/catalog/product/composite/fieldset/configurable.phtml
checking file app/design/adminhtml/default/default/template/catalog/product/helper/gallery.phtml
Hunk #1 FAILED at 59.
1 out of 1 hunk FAILED
checking file app/design/adminhtml/default/default/template/catalog/product/tab/inventory.phtml
checking file app/design/adminhtml/default/default/template/currencysymbol/grid.phtml
checking file app/design/adminhtml/default/default/template/customer/tab/addresses.phtml
checking file app/design/adminhtml/default/default/template/customer/tab/view.phtml
checking file app/design/adminhtml/default/default/template/notification/window.phtml
checking file app/design/adminhtml/default/default/template/sales/order/create/data.phtml
checking file app/design/adminhtml/default/default/template/sales/order/view/info.phtml
Hunk #4 succeeded at 176 (offset 22 lines).
Hunk #5 succeeded at 189 with fuzz 1 (offset 22 lines).
checking file app/design/adminhtml/default/default/template/system/currency/rate/matrix.phtml
checking file app/locale/en_US/Mage_Adminhtml.csv
checking file app/locale/en_US/Mage_Core.csv
checking file app/locale/en_US/Mage_Sales.csv
checking file app/locale/en_US/Mage_Sitemap.csv
checking file js/mage/adminhtml/wysiwyg/tiny_mce/setup.js
checking file js/tiny_mce/plugins/media/js/media.js
checking file js/varien/js.js
checking file lib/phpseclib/PHP/Compat/Function/array_fill.php
checking file lib/phpseclib/PHP/Compat/Function/bcpowmod.php
checking file lib/phpseclib/PHP/Compat/Function/str_split.php

0

В даний час я стикаюся з цим питанням при оновленні з 1.9.4.1 до 1.9.4.2. Таким чином, створення порядку замовлення адміністратора та оформлення замовлення через фронтенд тепер призводять до 500 помилок внутрішнього сервера без будь-яких помилок, зафіксованих або показаних.


Проблема оформлення замовлення впливає на магазини php 7.1 та php 7.2, які використовують допис Authorize.net Direct. Ви бачите помилку 500 у цьому процесорі, Paypal чи інших? Ми також стурбовані тим, що скасувати замовлення за допомогою цього оновлення безпеки.
topicw

1
@themew Мені вдалося виправити помилку, змінивши модуль. Помилка для мене був / є несумісним кодом з PHP 5.4
Vaishal Patel

0

після застосованого патчу Supee-11155 я отримую проблему із збереженням транснаціонального шаблону електронної пошти для розсилки, а потім я змінився у

додаток \ код \ core \ Mage \ Adminhtml \ контролери \ Система \ Електронна пошта \ TemplateController.php

$allowedHtmlTags = ['template_text', 'styles'];

до

$allowedHtmlTags = ['template_text', 'styles', 'variables'];

зараз мене добре працює.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.