중요 알림 : Magento 보안 패치를 다운로드하여 설치하십시오. (SSH 액세스가없는 FTP)


50

Magento 보안 패치는 .sh파일 처럼 보입니다. 누군가 Magento 설치에 대한 SSH 액세스없이 이러한 패치를 어떻게 적용합니까?

또한이 패치는 누적됩니까? IE : Magento의 향후 버전에 포함될 예정입니까, 아니면 다시 적용해야합니까?

관리자 패널에 로그인하여 중요한 보안 경고를 받았기 때문에이 질문을합니다.

Magento Community Edition 다운로드 페이지 ( https://www.magentocommerce.com/products/downloads/magento/ ) 에서 중요한 보안 패치 2 개 ( SUPEE-5344SUPEE-1533 )를 다운로드하여 구현 하십시오 .

아직 수행하지 않은 경우 공격자가 Magento 소프트웨어에서 원격으로 코드를 실행하지 못하게하는 2 개의 이전 릴리스 패치를 다운로드하여 설치하십시오. 이 문제는 모든 버전의 Magento Community Edition에 영향을줍니다.

앞으로 Check Point Software Technologies의 보도 자료를 통해 이러한 문제 중 하나를 널리 알릴 수 있으며이를 악용하려는 해커에게 경고 할 수 있습니다. 문제가 공개되기 전에 패치가 예방 조치로 마련되어 있는지 확인하십시오.

과의 등이 2015년 5월 14일 :

Magento Community Edition 다운로드 페이지 ( https://www.magentocommerce.com/products/downloads/magento/ ) 에서 새 보안 패치 ( SUPEE-5994 ) 를 다운로드하여 설치하는 것이 중요합니다 . 모든 버전의 Magento Community Edition 소프트웨어에 영향을 미치는 여러 보안 취약점에 노출되지 않도록 사이트를 보호하려면이 중요 업데이트를 즉시 적용하십시오. 이 패치는 최신 Shoplift 패치 (SUPEE-5344)와 함께 설치해야합니다.

또한 다음 이메일을 받았습니다 :

친애하는 마 젠토 상인,

잠재적 인 공격으로부터 Magento 플랫폼을 더욱 안전하게 보호하기 위해 오늘날 여러 가지 중요한 보안 수정 사항이 포함 된 새로운 패치 (SUPEE-5994)가 출시되었습니다. 이 패치는 공격자가 고객 정보에 액세스 할 수있는 시나리오를 포함하여 다양한 문제를 해결합니다. 이러한 취약점은 당사의 다 지점 보안 프로그램을 통해 수집되었으며,이 문제로 인해 가맹점이나 고객이 영향을 받았다는보고를받지 못했습니다.

모든 버전의 Magento Community Edition 소프트웨어가 영향을 받으므로 솔루션 파트너 또는 개발자와 함께이 중요 패치를 즉시 배포하는 것이 좋습니다. 이 패치는 최신 Shoplift 패치 (SUPEE-5344)와 함께 설치해야합니다. 보안 문제에 대한 자세한 내용은 Magento Community Edition 사용자 설명서의 부록에서 확인할 수 있습니다.

Community Edition 다운로드 페이지에서 패치를 다운로드 할 수 있습니다. SUPEE-5994 패치를 찾으십시오. 이 패치는 Community Edition 1.4.1– 1.9.1.1에서 사용 가능합니다.

프로덕션 환경에 패치를 배포하기 전에 먼저 개발 환경에서 패치를 구현하고 테스트하여 패치가 제대로 작동하는지 확인하십시오. Magento Community Edition에 패치 설치에 대한 정보는 온라인으로 제공됩니다.

이 문제에 관심을 가져 주셔서 감사합니다.

2015 년 7 월 7 일 업데이트

2015 년 7 월 7 일 : 새로운 마 젠토 보안 패치 ( SUPEE-6285 ) – 즉시 설치
오늘날 중요한 보안 취약점을 해결 하는 새로운 보안 패치 ( SUPEE-6285 ) 가 제공 됩니다. 이 패치는 Community Edition 1.4.1 ~ 1.9.1.1에서 사용 가능하며 최신 릴리스 인 Community Edition 1.9.2의 핵심 코드의 일부로, 오늘 다운로드 할 수 있습니다. 참고 : SUPEE-6285 가 제대로 작동 하려면 먼저 SUPEE-5994 를 구현해야합니다 . https://www.magentocommerce.com/products/downloads/magento/ Community Edition 다운로드 페이지에서 Community Edition 1.9.2 또는 패치를 다운로드하십시오.

2015 년 8 월 4 일 업데이트

2015 년 8 월 4 일 : 새로운 마 젠토 보안 패치 ( SUPEE-6482 ) – 즉시 설치
오늘 우리는 4 가지 보안 문제를 해결 하는 새로운 보안 패치 ( SUPEE-6482 )를 제공하고 있습니다. API와 관련된 두 가지 문제와 두 사이트 간 스크립팅 위험. 이 패치는 Community Edition 1.4 이상 릴리스에서 사용 가능하며 Community Edition 1.9.2.1의 핵심 코드의 일부로, 오늘 다운로드 할 수 있습니다. 이 새로운 보안 패치를 구현하기 전에 먼저 모든 이전 보안 패치를 구현해야합니다. https://www.magentocommerce.com/products/downloads/magento/ 의 Community Edition 다운로드 페이지에서 Community Edition 1.9.2.1 또는 패치를 다운로드하십시오.

2015 년 10 월 27 일 업데이트

2015 년 10 월 27 일 : 새로운 마 젠토 보안 패치 ( SUPEE-6788 ) – 즉시 설치
오늘, 새로운 패치 ( SUPEE-6788 ) 및 Community Edition 1.9.2.2/Enterprise Edition 1.14.2.2를 릴리스하여 10 가지 이상의 보안 문제를 해결했습니다. 원격 코드 실행 및 정보 유출 취약점. 이 패치는 Guruincsite 맬웨어 문제 와 관련이 없습니다 . 확장 및 사용자 정의에 영향을 줄 수 있으므로 개발 환경에서 패치를 먼저 테스트하십시오. Community Edition 다운로드 페이지 / Enterprise Edition 지원 포털에서 패치를 다운로드하고 http://magento.com/security/patches/supee-6788 에서 자세히 알아보십시오 .

2016 년 1 월 20 일 업데이트

중요 : 새 보안 패치 ( SUPEE-7405 ) 및 릴리스 – 2016 년 1 월 2 일
오늘, Magento 사이트의 보안을 개선하기 위해 새 패치 ( SUPEE-7405 ) 및 Community Edition 1.9.2.3 / Enterprise Edition 1.14.2.3릴리스 합니다. . 보안 문제와 관련된 확인 된 공격은 없지만 고객 정보에 액세스하거나 관리자 세션을 인계하기 위해 특정 취약점을 악용 할 수 있습니다. Community Edition 다운로드 페이지 / MyAccount에서 패치 및 릴리스를 다운로드하고 https://magento.com/security/patches/supee-7405 에서 자세한 내용을 확인할 수 있습니다.

2016 년 2 월 23 일 업데이트

업데이트 된 SUPEE7405 패치 버전을 사용할 수 있습니다. 업데이트는 PHP 5.3에 대한 지원을 추가하고 파일 업로드 권한, 병합 카트 및 원래 릴리스에서 경험 한 SOAP API 관련 문제를 해결합니다. 새로운 보안 문제는 다루지 않습니다. Community Edition 다운로드 페이지 / MyAccount에서 패치 및 릴리스를 다운로드하고 https://magento.com/security/patches/supee-7405 에서 자세한 내용을 확인할 수 있습니다.


4
그들이 패치를 적용하는 쉘 스크립트를 사용하지만 사용 할 URL 제공 없다는 것을 또한 흥미 curlwget- 당신은 다운로드 페이지에 로그인하여 파일을 다운로드 사이트에 파일을 FTP해야한다는 바보의 종류를 다음에 적용합니다.
pspahn

5
참조 : byte.nl/wiki/How_to_apply_Magento_patch_SUPEE-5344를 모든 것이 여기에 고정되어 있는지 확인 : shoplift.byte.nl
제론

6
패치 모두 라인 아래 표준 git 패치 만 포함한다는 점에 주목할 필요가있다 __PATCHFILE_FOLLOWS__. 즉,이 내용을 파일에서 복사하여 .patch확장명 을 가진 새 파일에 추가 할 수 있습니다. 그런 다음 사용 git apply하여 적용하십시오.
Jonathan Hussey

안녕하세요, Magento에 둘 이상의 패치 파일이 설치 될 수 있습니까?
VijayS91

답변:


35

SSH 액세스없이 수동으로 패치 적용

여기에 좋은 지적이 있습니다. 패치는 .sh파일로 제공되며 FTP 전용 웹 사이트를 위해 Magento에서 제공하는 솔루션이 없습니다.

FTP를 통해 자신의 웹 사이트 코드를 로컬 환경에 복사하는 것이 좋습니다 (아마도 이미 가지고있을 것입니다). 그런 다음 .sh파일 을 실행하여 패치를 적용 하십시오.

이제 다시 업로드해야하는 파일을 찾아야합니다. .sh패치 파일을 열면 다음 두 섹션으로 구성됩니다.

  1. 패치를 적용 할 배쉬 쉘 코드. 이 코드는 모든 패치에 일반적입니다.
  2. 통합 패치 형식 의 실제 패치 . 이것은 변경된 일부 라인 만 표시합니다 (일부 컨텍스트 라인 포함). 이 줄 아래에서 시작__PATCHFILE_FOLLOWS__

두 번째 섹션에서 패치의 영향을받는 파일을 읽을 수 있습니다. 이 파일들을 FTP에 다시 업로드하거나 ... 모든 것을 업로드 할 수 있습니다.

bash / shell없이 수동으로 적용

  1. .sh파일을 실행할 수없는 경우 (Windows에서) 패치의 두 번째 섹션 ( 통합 패치 )을 추출하여 패치 도구 (예 : PHPStorm ) 를 사용하여 수동으로 적용 할 수 있습니다 .
  2. Magentary.com 웹 사이트 는 패치 된 파일 만 포함 된 각 Magento 버전에 대한 ZIP 파일을 제공합니다.

현재 및 향후 릴리스의 패치?

현재 릴리스 된 패치는 이미 릴리스 된 모든 버전에 적용됩니다. 물론 마 젠토가 새로운 버전 (주 또는 부)을 출시 할 수도 있습니다. 그런 다음 Magento가 개발 코드베이스에 패치를 자연스럽게 적용하기 때문에 모든 보안 패치를 포함합니다 (이 패치는 해당 코드베이스에서 시작된 경우도 있습니다).

업데이트 :
모든 마지막 패치 Magento는 또한 특정 최신 패치가 포함 된 Magento CE 및 EE의 새 버전도 출시했습니다. Magento 다운로드 페이지 에서 Release Archive 탭을 참조하십시오 .

JH에서 관리하는이 시트를 확인하여 어떤 Magento CE 및 EE 버전에 설치할 패치를 설치 하십시오 . https://docs.google.com/spreadsheets/d/1MTbU9Bq130zrrsJwLIB9d8qnGfYZnkm4jBlfNaBF19M


안녕하세요, Magento에 둘 이상의 패치 파일이 설치 될 수 있습니까?
VijayS91

고마워 @ 7ochem, 그것은 내 측면에서 +1 나를 위해 일한 ......
아기

2
또는 작곡가 패키지 github.com/firegento/magento
Aleksey Razbakov

6
작곡가는 절대로 프로덕션 서버에 있지 않아야합니다. 먼저 composer를 실행하고 업데이트 된 파일을 가져온 다음 변경된 파일을 업로드하십시오. 레벨 2는 젠킨스와 함께하는 것입니다.
Aleksey Razbakov

2
사실 ... 빌드 및 배포 ... 그러나 여전히 FTP를 사용하는 경우에는 그렇지 않을 것입니다. 이 답변에서도 그것을 충분히 설명하기 위해 넓을 것입니다. 이를 설정하는 방법과 변경 / 추가 / 삭제 된 파일 만 업로드하는 방법 (버전 및 항목 차이)
7ochem

24

불행히도 쉘 액세스없이 이러한 패치를 설치하는 '쉬운'방법은 없지만 두 가지 방법이 있습니다.

PHP를 통한 패치 설치

  1. FTP 클라이언트를 사용하여 특정 패치를 Magento 폴더의 루트에 업로드하십시오.
  2. applypatch.php라는 PHP 파일을 만들어 패치를 실행하고 Magento 폴더의 루트에 업로드하십시오. 버전 1.8.x-1.9.x에 대한 패치를 사용하지 않는 경우 여기에 올바른 패치 이름을 사용하십시오

<?php
print("<PRE>");
passthru("/bin/bash PATCH_SUPEE-5344_CE_1.8.0.0_v1.sh");
print("</PRE>");
?>

  1. http://your.domain.com/applypatch.php 의 파일을 방문하여 출력이 예상대로 보이는지 확인하십시오.

수동으로 패치 설치

.sh 파일에는 'DIFF'패치가 포함되어 있습니다. 이것들은 어떤 라인이 제거되고 추가되었는지를 보여줍니다. 조언하지는 않지만 FTP를 통해 파일을 수동으로 다운로드하고 선택한 편집기에서 이러한 파일을 편집 한 다음 FTP를 통해 다시 업로드 할 수 있어야합니다. 형식은 해석 하기가 어렵지 않으므로 모든 파일에 대해이 작업을 수행 할 수 있으며 몇 분 이상 걸리지 않아야합니다.


3
필요한 파일을 새 버전으로 간단히 편집하여 패치를 "적용"한 경우, 향후 패치를 시도하면 사용자에게 이미 패치가 완료되었음을 알릴 수 있습니까?
pspahn

4
적어도 SUPEE-5344 및 SUPEE-1533의 경우 app / etc / applied.patches.list에 기록 된 로그가있는 것으로 보입니다. 패치가 실제로 수행 한 작업에 대한 일반적인 정보를 제공합니다. Magento의 코드베이스 에서이 파일을 참조하기 위해 grep을 수행했지만 적용된 패치를 추적하는 논리가 없다는 것을 의미하는 아무것도 반환하지 않았습니다. 참고 : 패치는 핵심 핵과 구별 할 수없는 것 같습니다 : magento.stackexchange.com/questions/26335/patch-or-core-hack
sparecycle

4
이 방법을 사용하려면 웹 서버에 파일에 대한 쓰기 권한이 있어야합니다. 이 방법을 사용하면 웹 서버가 / media 및 / var 이외의 파일에 쓸 수 없도록
Kevin Schroeder

"공구가 제대로 작동하려면"오류 : "/ app / etc /"가 있어야합니다. " 도와주세요
Tahir Yasin

3

필자의 경우 버전 유지 관리에 bitbucket을 사용하고 bitBucket을 통해서만 변경 사항을 적용합니다.

패치를 적용 할 때 로컬 시스템에서 해당 패치를 적용하고 모든 것을 테스트하십시오. 내 웹 사이트가 작동하고 있습니다.

모든 chnages를 bitbucket으로 푸시하고 라이브 사이트에서 모든 변경 사항을 당기면 패치가 적용됩니다.

ssh 액세스 권한이없는 경우 수행하는 작업이

1) 로컬에 패치를 적용하고 비트 버킷에 변경 사항을 푸시하십시오. Bitbucket은 마지막 커밋에서 변경된 파일을 알려줍니다.

2) FTP를 통해 해당 파일을 수동으로 업로드하면 패치가 적용됩니다.


2

FTP / sFTP 또는 FileManager / 파일 업로드를 통해 Magento 패치 적용

방법 1 :-

이런 방식으로 패치를 적용하기 위해 단순히 변경된 파일을 교체합니다. 이 방법은 귀 하나 개발자가 핵심 Magento 파일을 변경 한 경우에는 맹목적으로 사용할 수 없습니다. 이러한 변경 사항은 패치 된 파일에 다시 적용되거나 변경 사항이 적용되지 않습니다.

다음 패치를 다운로드하려면 아래 URL을 방문하십시오.

https://magentary.com/kb/install-supee-9652-without-ssh/

https://magentary.com/kb/install-supee-8788-without-ssh/

https://magentary.com/kb/install-supee-7405-without-ssh/

https://magentary.com/kb/install-supee-6788-without-ssh/

http://magentary.com/kb/install-supee-6482-without-ssh/

http://magentary.com/kb/install-supee-6285-without-ssh/

https://magentary.com/kb/install-supee-5994-without-ssh/

https://magentary.com/kb/apply-supee-5344-and-supee-1533-without-ssh/

방법 2 :-

패치 파일을 https://magento.com/tech-resources/download#download1972로 다운로드하십시오 . magento의 루트에 패치 파일을 업로드하십시오.

patch.php라는 이름으로 하나의 파일을 만들고 다음 코드를 작성하십시오.

<?php
print("<PRE>");
passthru("/bin/bash PATCH_SUPEE-9652.sh");
print("</PRE>");
echo "Done";
?>

브라우저에서 patch.php를 실행합니다.

이와 같은 오류가 발생하면

"오류!이 sh 스크립트에서 사용되는 일부 필수 시스템 도구가 설치되지 않았습니다."패치 "도구가 누락되었습니다. 설치하십시오.

이는 sh 스크립트를 실행하기 위해 시스템 도구가 서버에 설치되어 있지 않음을 의미합니다.


-2

SSH 액세스 없이는 가능하지 않다고 생각하지만 cpanel 또는 다른 패널에서 항상 SSH 계정을 만들 수 있으며 호스팅을 통해 SSH 계정을 만드는 자습서를 찾을 수있는 큰 기회가 있습니다. 회사는 Google에 '호스팅 회사 이름 + ssh 작성'을 입력합니다.


-3

패치를 다운로드하십시오 (실제로 1은 EE, 다른 하나는 CE이므로).

cp -r public_html 백업 (public_html을 전체 magento 설치로 대체)

먼저 패치를 백업 디렉토리로 FTP하고 백업에서 실행하여 모든 확인을 확인하십시오. sh patchname.sh

다 괜찮아? 패치를 실제 설치 및 FTP로 FTP

http://devdocs.magento.com/guides/m1x/other/ht_install-patches.html

또한 "패치에 의해 변경된 파일에 소유권을 다시 적용하려면 웹 서버 사용자를 찾으십시오. ps -o"user group command "-C httpd, apache2 USER 열의 값은 웹 서버 사용자 이름입니다. CentOS의 Apache 웹 서버 사용자는 아파치이고 Ubuntu의 Apache 웹 서버 사용자는 www-data입니다 루트 권한이있는 사용자는 Magento 설치 디렉토리에서 chown -R web-server-user-name 명령을 입력하십시오. 예를 들어 Apache가 일반적으로 www-data로 실행되는 Ubuntu에서 chown -R www-data "를 입력하십시오.

ps 명령을 root로 실행하면 사용자로만 루트를 가져 와서 chown -R root를 실행하고 설치를 디버깅했습니다. 설치 된 사용자 계정의 사용자 이름으로 다시 실행했으며 모두 훌륭했습니다.


또한 파일 권한을 정리하기 위해이 PHP 스크립트를 사용했습니다 .. magenmarket.com/news-and-blog/…
Cozy

3
SSH를 통해 일련의 명령을 실행하는 것이 좋습니다. OP의 문제는 "SSH없이 어떻게 하는가?"입니다.
7ochem

!! 당신의 사면을 간청합니다! 내 오류
Cozy
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.