다음은 SUPEE-10570 패치로 수정 된 파일 목록입니다.
app/Mage.php
app/code/core/Mage/Admin/Helper/Data.php
app/code/core/Mage/Admin/Model/Block.php
app/code/core/Mage/Admin/Model/Resource/Block.php
app/code/core/Mage/Admin/Model/User.php
app/code/core/Mage/Adminhtml/Block/Catalog/Category/Edit/Form.php
app/code/core/Mage/Adminhtml/Block/Catalog/Product/Grid.php
app/code/core/Mage/Adminhtml/Block/Newsletter/Template/Grid/Renderer/Sender.php
app/code/core/Mage/Adminhtml/Block/Sales/Order/Grid.php
app/code/core/Mage/Adminhtml/Block/Sales/Order/View/Info.php
app/code/core/Mage/Adminhtml/Block/System/Store/Edit/Form.php
app/code/core/Mage/Adminhtml/Block/Tag/Assigned/Grid.php
app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Store.php
app/code/core/Mage/Adminhtml/Block/Widget/Tabs.php
app/code/core/Mage/Adminhtml/Model/Config/Data.php
app/code/core/Mage/Adminhtml/Model/System/Store.php
app/code/core/Mage/Adminhtml/controllers/Catalog/ProductController.php
app/code/core/Mage/Adminhtml/controllers/CustomerController.php
app/code/core/Mage/Adminhtml/controllers/System/BackupController.php
app/code/core/Mage/Core/Model/Session/Abstract/Varien.php
app/code/core/Mage/Core/Model/Variable.php
app/code/core/Mage/Customer/Helper/Data.php
app/code/core/Mage/Customer/Model/Resource/Customer.php
app/code/core/Mage/Customer/controllers/AccountController.php
app/code/core/Mage/Customer/etc/config.xml
app/code/core/Mage/Customer/sql/customer_setup/upgrade-1.6.2.0.1.1.1-1.6.2.0.1.1.2.php
app/code/core/Mage/Downloadable/etc/config.xml
app/code/core/Mage/Downloadable/etc/system.xml
app/code/core/Mage/Downloadable/sql/downloadable_setup/upgrade-1.6.0.0.2.1.1-1.6.0.0.2.1.2.php
app/code/core/Mage/ImportExport/Model/Import.php
app/code/core/Mage/ImportExport/Model/Import/Entity/Product.php
app/code/core/Mage/Shipping/Model/Info.php
app/code/core/Mage/Widget/controllers/Adminhtml/Widget/InstanceController.php
app/design/adminhtml/default/default/template/catalog/product/attribute/set/main.phtml
app/design/adminhtml/default/default/template/customer/tab/view.phtml
app/design/adminhtml/default/default/template/customer/tab/view/sales.phtml
app/design/adminhtml/default/default/template/dashboard/store/switcher.phtml
app/design/adminhtml/default/default/template/downloadable/product/composite/fieldset/downloadable.phtml
app/design/adminhtml/default/default/template/downloadable/product/edit/downloadable/links.phtml
app/design/adminhtml/default/default/template/downloadable/sales/items/column/downloadable/creditmemo/name.phtml
app/design/adminhtml/default/default/template/downloadable/sales/items/column/downloadable/invoice/name.phtml
app/design/adminhtml/default/default/template/downloadable/sales/items/column/downloadable/name.phtml
app/design/adminhtml/default/default/template/newsletter/preview/store.phtml
app/design/adminhtml/default/default/template/report/store/switcher.phtml
app/design/adminhtml/default/default/template/sales/order/view/info.phtml
app/design/adminhtml/default/default/template/store/switcher.phtml
app/design/adminhtml/default/default/template/store/switcher/enhanced.phtml
app/design/adminhtml/default/default/template/system/convert/profile/wizard.phtml
app/design/adminhtml/default/default/template/tax/rate/title.phtml
app/design/adminhtml/default/default/template/widget/form/renderer/fieldset.phtml
app/locale/en_US/Mage_Catalog.csv
app/locale/en_US/Mage_ImportExport.csv
lib/Zend/Mail/Transport/Sendmail.php
편집하다
마지막으로 prod 웹 사이트 (CE 1.7.0.2)에 배포 한 후 중요한 차단 문제 (체크 아웃 프로세스가 차단됨)를 발견했습니다.
컨텍스트 :
1 단계 주소 후에 고객을 직접 생성하고 기록하면 다음 체크 아웃 단계 만보아야합니다.
문제 :
supee-10570 이후 1 단계 (계좌 생성의 경우) 후에 결제 프로세스가 중단되고 고객이 장바구니로 비우고 로그 아웃 된 상태로 홈페이지로 리디렉션됩니다.
긴급 수정 :
체크 아웃 / 고객 세션과 유사한 문제가 발생하는 경우 app / code / core / Mage / Core / Model / Session / Abstract / Varien.php (패치에 의해 추가 된 것)에서 414-430 행을 주석 처리하십시오. 아래 참조).
// if ($this->useValidateSessionPasswordTimestamp()
// && isset($validatorData[self::VALIDATOR_PASSWORD_CREATE_TIMESTAMP])
// && isset($sessionData[self::VALIDATOR_SESSION_EXPIRE_TIMESTAMP])
// && $validatorData[self::VALIDATOR_PASSWORD_CREATE_TIMESTAMP]
// > $sessionData[self::VALIDATOR_SESSION_EXPIRE_TIMESTAMP] - $this->getCookie()->getLifetime()
// ) {
// return false;
// }
// if ($this->useValidateSessionExpire()
// && isset($sessionData[self::VALIDATOR_SESSION_EXPIRE_TIMESTAMP])
// && $sessionData[self::VALIDATOR_SESSION_EXPIRE_TIMESTAMP] < time() ) {
// return false;
// } else {
// $this->_data[self::VALIDATOR_KEY][self::VALIDATOR_SESSION_EXPIRE_TIMESTAMP]
// = $validatorData[self::VALIDATOR_SESSION_EXPIRE_TIMESTAMP];
// }
편집 (2)
다음 조건은 항상 false를 반환한다고 생각합니다 (414-419 줄, 특히 417 + 418 줄의 마법사 _ 코어 _ 모델 _ 세션 _Abstract_Varien).
if ($this->useValidateSessionPasswordTimestamp()
&& isset($validatorData[self::VALIDATOR_PASSWORD_CREATE_TIMESTAMP])
&& isset($sessionData[self::VALIDATOR_SESSION_EXPIRE_TIMESTAMP])
&& $validatorData[self::VALIDATOR_PASSWORD_CREATE_TIMESTAMP]
> $sessionData[self::VALIDATOR_SESSION_EXPIRE_TIMESTAMP] - $this->getCookie()->getLifetime()
) {
return false;
VALIDATOR_PASSWORD_CREATE_TIMESTAMP는 항상 VALIDATOR_SESSION_EXPIRE_TIMESTAMP보다 큽니다. 세션 "만료"타임 스탬프는 계정을 만들 때 재정의되므로 세션 초기화보다 필연적으로 오래되었습니다.
예를 들어 결제 중에 고객을 생성하면 false가 반환되고 고객이 방금 쫓겨납니다 (= 결제 종료, 홈페이지로 리디렉션 및 장바구니 비우기). 꽤 나쁘다.
이 문제를 magento 팀에보고했습니다. 최대한 빨리 의견을 보내 드리겠습니다.
편집 (3)
새로운 패치는 wip입니다 (magento 패치 다운로드 페이지에 "SUPEE-10570 for CE 1.7.0.0-업데이트 된 패치가 예상되었으며 사용하지 마십시오 (0.06 MB)").
최초 차단 문제보고 후 1 개월 ~ EDIT
안녕하세요! 모든 상품이되기를 바랍니다. 사업 수입이 크게 줄어들지 않는 한 지금까지 초기 패치 상태를 유지하지 않았기를 바랍니다.
공식 페이지에서 다음과 같은 문장을 보았습니다. "Magento는 더 이상이 문제를 일으키지 않는 업데이트 된 패치 (SUPEE-10570v2)를 제공하고 있습니다. 그러나이 새로운 패치는 더 이상 두 가지 위험이 낮은 세션 처리 관련 문제를 방지하지 않습니다. SUPEE-10570을 보호하는 보안 문제. " supee-10570 공식 페이지에서.
릴리스 페이지에서 마지막으로 v2 파일 (PATCH_SUPEE-10570_CE_v1.7.0.2_v2-2018-03-29-08-52-37.sh)을 찾을 수 있습니다.
수정 사항을 자세히 조사했습니다. 마지막으로 magento 팀은 패치의 보안 부분을 삭제하기로 결정한 것 같습니다. 이 보안 허점이 심각한 피해를 초래하지 않기를 바랍니다 (공식 참고 사항에 따르면 중요도가 낮음).
v1을 되돌리고 v2를 적용한 후 다음 파일이 초기 상태 (v1이 적용되기 전)로 되돌려집니다.
app/code/core/Mage/Adminhtml/controllers/CustomerController.php
app/code/core/Mage/Customer/controllers/AccountController.php
app/code/core/Mage/Customer/Helper/Data.php
app/code/core/Mage/Customer/Model/Resource/Customer.php
추신 : 분명히 다른 파일도 수정되었습니다. 따라서 확인하십시오.