2021년 7월 13일 WooCommerce에서 발견된 치명적인 취약점 – 알아야 할 사항

게시 됨: 2021-07-15

최종 업데이트: 2021년 7월 23일

2021년 7월 13일 보안 연구원 Josh가 당사의 HackerOne 보안 프로그램을 통해 WooCommerce 및 WooCommerce 차단 기능 플러그인과 관련된 치명적인 취약점을 확인하고 공개했습니다.

문제에 대해 알게 된 우리 팀은 즉시 철저한 조사를 수행하고 모든 관련 코드베이스를 감사했으며 취약한 저장소에 자동으로 배포된 영향을 받는 모든 버전(90개 이상의 릴리스)에 대해 문제를 수정하는 패치를 만들었습니다.

WooCommerce 스토어가 있습니다. 어떤 조치를 취해야 합니까?

WooCommerce 5.5.1에 ​​대한 자동 소프트웨어 업데이트는 2021년 7월 14일에 영향을 받는 각 플러그인 버전을 실행하는 모든 상점에 배포되기 시작했지만 여전히 최신 버전을 사용하고 있는지 확인하는 것이 좋습니다. WooCommerce의 경우 5.5.2 * 또는 릴리스 분기에서 가능한 가장 높은 수 입니다. WooCommerce Blocks도 실행 중이라면 해당 플러그인의 버전 5.5.1을 사용해야 합니다.

중요 : 2021년 7월 23일 WooCommerce 5.5.2 릴리스와 함께 위에서 언급한 자동 업데이트 프로세스가 중단되었습니다.

패치 버전으로 업데이트한 후 다음을 권장합니다.

  • 특히 여러 웹사이트에서 동일한 비밀번호를 재사용하는 경우 사이트의 모든 관리자에 대한 비밀번호 업데이트
  • 사이트에서 사용되는 결제 게이트웨이 및 WooCommerce API 키 순환.

이 단계에 대한 자세한 정보는 아래에 있습니다.

* WooCommerce 5.5.2는 2021년 7월 23일에 출시되었습니다. 이 버전에 포함된 수정 사항은 최근 보안 취약점과 관련이 없습니다.

내 버전이 최신 버전인지 어떻게 알 수 있습니까?

아래 표에는 WooCommerce 및 WooCommerce Blocks에 대한 패치 버전의 전체 목록이 포함되어 있습니다. 이 목록에 없는 WooCommerce 또는 WooCommerce Blocks 버전을 실행 중인 경우 릴리스 분기에서 가장 높은 버전으로 즉시 업데이트하십시오.

패치된 WooCommerce 버전 패치된 WooCommerce 차단 버전
3.3.6 2.5.16
3.4.8 2.6.2
3.5.9 2.7.2
3.6.6 2.8.1
3.7.2 2.9.1
3.8.2 3.0.1
3.9.4 3.1.1
4.0.2 3.2.1
4.1.2 3.3.1
4.2.3 3.4.1
4.3.4 3.5.1
4.4.2 3.6.1
4.5.3 3.7.2
4.6.3 3.8.1
4.7.2 3.9.1
4.8.1 4.0.1
4.9.3 4.1.1
5.0.1 4.2.1
5.1.1 4.3.1
5.2.3 4.4.3
5.3.1 4.5.3
5.4.2 4.6.1
5.5.1 4.7.1
5.5.2 4.8.1
4.9.2
5.0.1
5.1.1
5.2.1
5.3.2
5.4.1
5.5.1

내 웹 사이트가 자동 업데이트를 받지 못하는 이유는 무엇입니까?

귀하의 사이트는 여러 가지 이유로 자동으로 업데이트되지 않을 수 있습니다. 가장 가능성이 높은 몇 가지는 다음과 같습니다. 영향을 받는 이전 버전(WooCommerce 3.3 미만)을 실행 중이고, 사이트에서 자동 업데이트가 명시적으로 비활성화되어 있고, 파일 시스템이 다음과 같습니다. 읽기 전용이거나 업데이트를 방해하는 잠재적으로 충돌하는 확장이 있습니다.

모든 경우(영향을 받지 않는 첫 번째 예는 제외)에 나열된 대로 릴리스 분기에서 최신 패치 버전(예: 5.5.2, 5.4.2, 5.3.1 등)으로 수동 업데이트를 시도해야 합니다. 위의 표.

데이터가 손상되었습니까?

현재 사용 가능한 증거를 기반으로 우리는 악용이 제한적이라고 생각합니다.

상점이 영향을 받은 경우 노출된 정보는 해당 사이트가 저장하고 있는 정보에 따라 다르지만 주문, 고객 및 관리 정보가 포함될 수 있습니다.

내 상점이 악용되었는지 어떻게 확인할 수 있습니까?

이 취약점의 특성과 WordPress(및 WooCommerce)가 웹 요청을 처리하도록 허용하는 매우 유연한 방식으로 인해 익스플로잇을 확인할 수 있는 확실한 방법은 없습니다. 웹 서버의 액세스 로그를 검토하여(또는 웹 호스트의 도움을 받아) 일부 악용 시도를 감지할 수 있습니다. 2019년 12월 사이에 확인된 다음 형식의 요청은 현재 악용 시도를 나타낼 가능성이 있습니다.

  • REQUEST_URI 일치하는 정규식 /\/wp-json\/wc\/store\/products\/collection-data.*%25252.*/
  • REQUEST_URI 일치하는 정규식 /.*\/wc\/store\/products\/collection-data.*%25252.*/ /store\/products\/collection-data.*%25252.*/(이 식은 효율적이지 않거나 대부분의 로깅 환경에서 실행 속도가 느립니다)
  • /wp-json/wc/store/products/collection-data 또는 /?rest_route=/wc/store/products/collection-data 에 대한 모든 비 GET(POST 또는 PUT) 요청

이 취약점을 악용하는 것으로 확인된 요청은 다음 IP 주소에서 왔으며 98% 이상이 목록의 첫 번째 주소에서 왔습니다. 액세스 로그에 이러한 IP 주소가 표시되면 취약점이 악용되고 있다고 가정해야 합니다.

  • 137.116.119.175
  • 162.158.78.41
  • 103.233.135.21

어떤 비밀번호를 변경해야 합니까?

암호가 해시되어 있으므로 암호가 손상되었을 가능성은 거의 없습니다.

WordPress 사용자 비밀번호는 솔트를 사용하여 해시되므로 결과 해시 값을 해독하기가 매우 어렵습니다. 이 솔티드 해시 접근 방식은 관리자의 비밀번호와 고객을 포함한 사이트의 다른 모든 사용자의 비밀번호를 보호합니다. 데이터베이스에 저장된 암호의 해시된 버전이 이 취약점을 통해 액세스되었을 수 있지만 해시 값은 식별할 수 없고 여전히 무단 사용으로부터 암호를 보호해야 합니다.

이것은 귀하의 사이트가 사용자에 대한 표준 WordPress 비밀번호 관리를 사용하고 있다고 가정합니다. 사이트에 설치한 플러그인에 따라 비밀번호나 기타 민감한 정보가 덜 안전한 방식으로 저장될 수 있습니다.

사이트의 관리자 사용자가 여러 웹사이트에서 동일한 암호를 재사용했을 수 있는 경우 자격 증명이 다른 곳에서 손상된 경우 해당 암호를 업데이트하는 것이 좋습니다.

또한 WordPress/WooCommerce 데이터베이스에 저장된 개인 또는 비밀 데이터를 변경하는 것이 좋습니다. 여기에는 특정 상점 구성에 따라 API 키, 지불 게이트웨이용 공개/개인 키 등이 포함될 수 있습니다.

확장 프로그램 개발자 또는 서비스 제공업체로서 WooCommerce 판매자에게 알려야 합니까?

라이브 WooCommerce 상점 또는 판매자와 협력하는 경우 이 문제에 대해 알리고/하거나 상점을 보안 버전으로 업데이트하기 위해 그들과 협력하는 것이 좋습니다.

확장 기능을 구축했거나 WooCommerce API에 의존하는 SaaS 서비스를 제공하는 경우 판매자가 서비스에 연결하기 위해 키를 재설정할 수 있도록 하는 것이 좋습니다.

상점 소유자로서 고객에게 경고해야 합니까?

고객에게 경고할지 여부는 궁극적으로 귀하에게 달려 있습니다. 고객에게 알리거나 비밀번호와 같은 항목을 재설정해야 하는 의무는 사이트 인프라, 귀하와 고객의 지리적 위치, 사이트에서 수집하는 데이터, 사이트 손상 여부와 같은 세부 정보에 따라 달라집니다.

고객을 보호하기 위해 취할 수 있는 가장 중요한 조치는 WooCommerce 버전을 이 취약점에 대한 수정 사항이 패치된 버전으로 업데이트하는 것입니다.

업데이트 후 다음을 권장합니다.

  • 특히 여러 웹사이트에서 동일한 비밀번호를 재사용하는 경우 사이트의 모든 관리자에 대한 비밀번호 업데이트
  • 사이트에서 사용되는 결제 게이트웨이 및 WooCommerce API 키 순환.

상점 소유자로서 고객의 비밀번호 재설정과 같은 추가 예방 조치를 취할 것인지 여부는 궁극적으로 귀하의 결정입니다. WordPress(및 따라서 WooCommerce) 사용자 비밀번호는 솔트를 사용하여 해시되므로 결과 해시 값을 해독하기가 매우 어렵습니다. 이 솔티드 해시 접근 방식은 고객의 비밀번호를 포함하여 사이트의 모든 사용자 비밀번호에 적용됩니다.

WooCommerce는 여전히 사용하기에 안전합니까?

네.

이런 사고는 드물지만 불행히도 가끔 발생합니다. 우리의 의도는 항상 즉시 대응하고 완전한 투명성으로 운영하는 것입니다.

취약점을 알게 된 이후로 팀은 수정 사항이 적용되고 사용자에게 이를 알리기 위해 24시간 내내 노력했습니다.

플랫폼 보안에 대한 지속적인 투자를 통해 대부분의 문제를 예방할 수 있지만 매장에 잠재적으로 영향을 미칠 수 있는 드문 경우지만 신속하게 수정하고 사전에 의사 소통하며 WooCommerce 커뮤니티와 협력하기 위해 노력합니다.

그래도 질문이 있으면 어떻게 합니까?

이 문제와 관련하여 추가 우려 사항이나 질문이 있는 경우 행복 엔지니어 팀이 도와드릴 수 있습니다. 지원 티켓을 여십시오.