심각도 9.2의 PHP 취약점: 웹사이트의 70%를 위협하는 악용에 대한 2개의 긴급 패치

관리자들이 10점 만점에 9.2점으로 평가한 PHP 취약점으로 인해 유럽 디지털 비즈니스의 상당 부분을 지원하는 언어로 긴급 프로토콜이 활성화되었습니다. 몇 시간 내에 발표된 두 패치는 수백만 개의 웹사이트와 악용하다 이미 자체 이름이 있습니다: PHP2Shell.

작업의 핵심

  • 10점 만점에 9.2점의 오류가 2개 있습니다. 프로젝트 팀은 공지 후 12시간이 조금 넘는 시간 동안 두 패치를 모두 게시할 계획을 세웠으며, 공개 세부 정보나 악용 징후가 나타나면 이를 발표하라는 명시적인 경고를 받았습니다.
  • 비용은 언어가 아닌 숙박 시설에 달려 있습니다. 업데이트 비용을 지불하는 사람은 유지 관리 기간 없이 프로덕션을 유지하는 호스팅 제공업체, 대행사 및 내부 팀입니다.
  • 스페인은 공급업체를 통해 진출합니다. 수천 개의 중소기업과 지방 정부는 자체 보안 팀 없이 위험을 물려받는 소수의 호스팅 회사와 콘텐츠 관리자에 의존하고 있습니다.

월요일에 통보가 왔습니다. 프로젝트 공식 사이트의 관리자는 심각도 9.2(최대값의 2/10)인 두 개의 패치를 발표했다고 발표했으며, 오픈 소스 언어 주기에 특이한 지시를 내렸습니다. 버전이 출시되자마자 지금 업데이트할 준비를 하십시오. 그 메모에는 순간의 긴장감을 잘 측정하는 문구가 포함되어 있었습니다. 누출이나 활발한 악용이 있는 경우 팀은 출판을 진행할 권리를 보유합니다..

요즘 해당 분야에서 유통되는 수치(잠재적으로 영향을 받는 웹사이트의 최대 70%)는 수사적인 라이센스가 아닙니다. PHP는 여전히 WordPress, Drupal, 대부분의 콘텐츠 관리자 및 작동하기 때문에 어떤 회사도 건드리지 않는 레거시 애플리케이션이 사용되는 계층입니다. 공격 표면은 언어로 정의되는 것이 아니라 수년간 업데이트되지 않은 설치 수로 정의됩니다.

A 9.2는 유지 관리 기간으로 수정되지 않습니다.

심각도 척도는 상업적인 긴급성이 아닌 영향과 악용의 용이성을 측정합니다. 9.2는 공격자가 자격 증명 없이도 적은 노력으로 서비스를 손상시킬 수 있음을 의미합니다. 작동으로 변환: 분기별 패치 일정을 위한 여지가 없습니다.

오픈 소스와 이를 상업적으로 활용하는 사람들 사이에는 격차가 있는 것 같습니다. PHP 프로젝트는 자원봉사자와 자체 보안 작업에 자금을 조달하는 방법을 수년 동안 논의한 거버넌스 구조의 지원을 받는 반면, 해당 코드에 수백만 달러를 청구하는 회사는 심각한 버그가 요구하는 비율에 거의 기여하지 않습니다. Log4j, OpenSSL과 동일한 패턴입니다.그리고 소프트웨어 공급망을 통해 동일한 두려움이 흐르고 있습니다.

심각도 9.2 버그는 저장소에서 수정되지 않았습니다. 아무도 기억하지 못하는 모든 서버에서 아직 수정되었습니다.

불편한 부분은 그 다음이다. PHP를 업데이트하면 호환성이 손상되고 클라이언트가 계속 호출하는 더 이상 사용되지 않는 기능과 확장 기능이 남게 됩니다. 각 버전 점프는 보안과 가용성 간의 절충안입니다. 일반적으로 업데이트된 재고가 없는 사람이 결정을 내립니다.. 업데이트는 쉽습니다. 설득하세요. 아니죠.

숙박 시설은 판매하지 않은 청구서를 가정합니다.

대규모 공유 호스팅 제공업체는 타격을 흡수하는 링크입니다. 귀하의 제품은 시스템 관리가 아니라 편의성을 제공하므로 고객은 보안 권고를 읽지 않을 것입니다. 그렇기 때문에 업데이트는 기본적으로 활성 분기에서 실행되고 여전히 이전 버전을 사용하는 사용자에게 알림이 전송됩니다. 이는 몇 주 동안 잔여 비율을 노출시키는 합리적인 정책입니다.

스페인에서는 위험이 동일한 경로를 통해 이동합니다. 수천 개의 중소기업, 사무실 및 지방 정부가 국내 제공업체로부터 호스팅 계약을 맺거나 제3자로부터 서비스를 재판매하고 있으며, 자체 기술팀을 보유하고 있지 않은 경우도 많습니다. 이들에게 표준 권장 사항(업데이트, 기록 검토, 무결성 확인)에는 다음과 같은 일반적인 문제가 수반됩니다. 웹사이트가 다운될 때까지 웹사이트가 어떤 버전을 실행하는지 아무도 알 수 없습니다. INCIBE 회사 공지사항은 공급업체 전화가 없을 때 가장 먼저 확인할 수 있는 곳입니다.

패치가 존재하기 전에 유통되었던 PHP2Shell이라는 이름도 시장에 대해 뭔가를 말해줍니다. 수정을 받기 전에 실패 이름을 지정하는 것은 압박감의 표시입니다.: 관리자의 대응 속도를 높이는 동시에 파업할 곳을 찾는 모든 사람에게 공개 알림 역할을 합니다. 보안 커뮤니티에서는 이러한 이중 우위가 효과가 있는지 수년간 논의해 왔습니다.

수많은 검토에 직면한 오픈소스 거버넌스

우리는 이미 이 스크립트를 보았습니다. 2021년 Log4j와 2014년 OpenSSL Heartbleed 취약점은 동일한 결론을 남겼습니다. 글로벌 인프라를 지원하는 소프트웨어는 소규모 프로젝트 리소스로 유지 관리되며 교정 비용을 지불할 때 거의 항상 동일한 손에 맡겨집니다. 스페인에서는 해당 사업이 Indra 및 Telefónica Tech의 사이버 보안 영역에 속해 있으며, 이를 가능하게 하는 언어는 계속해서 기부를 요청하는 동시에 감사, 재고 및 마이그레이션에 대한 비용을 청구합니다.

근본적인 모순을 지적할 가치가 있다. 실제로 얼마나 많은 중요 패치가 적용되었는지 측정하는 사람은 없습니다.: 부문에서는 채택이 아닌 출판을 측정합니다. 저장소에서 수정되고 프로덕션에 설치되지 않은 9.2는 공개 대화가 이미 다른 것으로 이동했다는 악화 요인으로 인해 이전과 마찬가지로 위험합니다. 이 격차는 그룹의 랜섬웨어 몇 주 후, 언론의 스포트라이트가 꺼졌을 때. 이 뉴스룸에서는 매 분기마다 계속해서 해당 내용을 볼 수 있습니다.

모니터링해야 할 이정표는 패치 게시가 아니라 그 이후에 발생하는 것입니다. 프로젝트에서 활성 악용을 확인했는지 또는 일부 유럽 CERT가 특정 설치에 대한 손상 알림을 게시했는지 여부입니다. 거기에서 PHP2Shell이 ​​시기 적절한 경고인지 또는 사건을 통해 얻은 열 번째 교훈.