좌절된 공급망 해킹은 워싱턴 DC 전역에 경종을 울린다.
한 관계자는 "이것은 오픈 소스 생태계에서 이전에는 볼 수 없었던 내부자 위협과 같다."라고 말했다.
널리 사용되는 소프트웨어 유틸리티를 전복시키려는 시도가 좌절되면서 워싱턴 D.C. 전역에서
오픈 소스 공급망의 취약성과 외국 국가가 이를 악용하기 위해 은폐와 단검을 사용하는
인간 첩보원을 어느 정도까지 적극적으로 활용하고 있는지에 중요한 의문이 제기되고 있다.
무슨 일이 있었는가?
Microsoft의 소프트웨어 엔지니어인 Andres Freund는 3월 29일에 널리 사용되는 Linux 운영 체제의
두 가지 버전에 통합된 매우 인기 있는 오픈 소스 데이터 압축 도구의
두 가지 버전 안에 전문적으로 숨겨진 악성 코드 조각을 발견했다.
이로 인해 보안 전문가와 정부 기관은 Xz로 알려진 손상된 코드가 영향을 받는 Linux 사용자에 대한
스파이 캠페인이나 사이버 공격을 시작하는 데 사용되는 것을 방지하기 위해 미친 듯이 앞다퉈 움직였다.
미국 정부의 주요 민간 사이버 보안 기관인 CISA는 이 문제를 해결하는 방법에 대한 신속한 지침을 발표했다.
해킹의 영향
이러한 시기적절한 노력과 익스플로잇 자체의 표적 특성으로 해킹의 여파를 대부분 예방할 수 있었던 것으로 보인다.
그럼에도 불구하고 수행 방법만큼이나 수행 한 작업에 대해 사이버 보안 세계에 전율을 일으켰다.
실제 혹은 개인이 아닐 수도 있는 Jia Tan으로 알려진 사용자는 개발자 커뮤니티에서 선의의 믿음을 구축하기 전에
약 2년 동안 개발자 커뮤니티에서 진정한 신뢰를 구축한 후 Xz의 제어권을 인수했다.
해킹 사건을 조사해온 연구원 맥 로저스에 따르면, Jia Tan은 자신의 신뢰성을 적극적으로 보증한
최소 5명의 다른 깃허브(GitHub) 사용자들로부터 평판을 높인 것으로 보인다.
백악관 국가 사이버실은 "이러한 유형의 인간 기반 디지털 첩보원은 오픈 소스에서 거의 전례가 없는 일" 이라며,
"이것은 오픈소스 생태계의 내부자 위협과 같으며, 이전에는 실제로 못했다."라고 말했다.
그러나 전직 정부 사이버 전문가들은 의심의 여지가 없다고 말했다.
전직 NSA 해커인 제이크 윌리엄스는 "미국 정부에는 이 일로 주말을 허비한 사람들이 있다고 100% 확신한다"며
"이 사건의 진상을 파악하기 위해 부지런히 일하고 있다"고 말했다.
다른 연구원들은 Xz 익스플로잇 코드가 얼마나 능숙했는지를 감안할 때 국가가 개입했을 가능성이 있다고 말했다.
또 다른 전직 NSA 해커인 데이브 아이텔은 이 사건을 2020년 정부 IT 계약업체 솔라윈즈에 대한
크렘린궁 스파이 활동을 포함해 최근 기억에 남는 가장 큰 러시아 해킹 사건에 비유했다.
장기적인 우려
이 사건으로 인해 사이버 전문가들은 누구나 검사, 사용, 편집 또는 배포할 수 있는
소프트웨어인 오픈 소스 코드의 보안 영장을 재검토해야 한다.
Xz와 같은 오픈 소스 소프트웨어는 현대 디지털 경제의 중요한 엔진이지만, 종종 한 명의 자원 봉사자에 유지 관리 된다.
그리고 Jia Tan이 Xz를 표적으로 삼았을 수도 있는 징후도 있는데, 이는 이전 개발자가 과로에 대해 불평했기 때문이다.
백악관 국가 사이버실 관계자 라잔은 "오픈소스 코드 보호를 위해
우리가 다음에 무엇을 할 것인지에 대해 많은 대화가 필요하다고 생각한다"고 말했다.
화이트햇 해커 맥 로저스는 "인터넷상의 사물에 대한 흥미롭지 않은 중요한 종속성이기 때문에
사람들이 감사할 줄 모르는 방식으로 유지 관리하는 수천 개의 코드 프로젝트가 있다"며
"이 공격은 그 사실을 먹잇감으로 삼고 있다"고 말했다.
--------------------------------------------------------------------------------------------------------------------
미국정부 사이버 보안 기관 CISA의 보고서
XZ Utils 데이터 압축 라이브러리, CVE-2024-3094에 영향을 미치는 공급망 손상 보고
CISA와 오픈 소스 커뮤니티는 XZ Utils 버전 5.6.0 및 5.6.1에 포함된 악성 코드에 대한 보고에 대응하고 있다.
이 활동에는 CVE-2024-3094 할당되었다.
XZ Utils는 데이터 압축 소프트웨어이며, Linux 배포판에 있을 수 있다.
악성 코드는 영향을 받는 시스템에 대한 무단 액세스를 허용할 수 있다.
CISA는 개발자와 사용자가 XZ Utils 5.4.6 Stable과 같은 타협하지 않은
버전으로 XZ Utils를 다운그레이드하고, 악의적인 활동을 찾아 긍정적인 결과를 CISA에 보고할 것을 권장한다.
설명
xz의 업스트림 tarball에서 5.6.0 버전부터 악성코드가 발견되었다.
일련의 복잡한 난독을 통해 liblzma 구축 프로세스는 소스 코드에 존재하는 위장된 테스트 파일에서
미리 구축된 개체 파일을 추출한 다음, liblzma 코드의 특정 기능을 수정하는 데 사용한다.
그 결과 이 라이브러리에 연결된 모든 소프트웨어에서 사용할 수 있는
수정된 liblzma 라이브러리가 생성되어 이 라이브러리와의 데이터 상호 작용을 가로채고 수정한다.
성명서
현재 조사에 따르면 패키지는 Red Hat 커뮤니티 생태계 내의 Fedora 41 및 Fedora Rawhide에만 있다.
RHEL(Red Hat Enterprise Linux) 버전은 영향을 받지 않는다.
XZ버전 5.6.0과 5.6.1 라이브러리에 있는 악성 인스트럭션은 tarball 다운로드 패키지에만 포함되어 있다.
Git 배포판에는 악성 코드 구축을 시도하는 M4 매크로가 없다.
2단계 아티팩트는 악성 M4 매크로가 있는 경우 빌드 시간 동안 주입을 위해 Git 리포지토리에 있다.
빌드에 병합하지 않으면 2단계 파일은 피해가 없다.
파인더의 데모에서 OpenSSH 데몬을 방해하는 것으로 나타났다.
OpenSSH는 liblzma 라이브러리에 직접 연결되어 있지는 않지만, systemd가 liblzma에 연결되기 때문에
맬웨어에 노출되는 방식으로 systemd와 연결하며 통신한다.
XZ는 무엇인가?
XZ는 거의 모든 리눅스 배포판, 커뮤니티 프로젝트와 상용 제품 배포판에 존재하는 범용 데이터 압축 포맷이다.
기본적으로 파일 전송을 통해 공유할 수 있도록 대용량 파일 형식을 더 작고 관리하기
쉬운 크기로 압축(및 압축 해제)하는 데 도움이 된다.
악성코드는 무엇인가?
XZ 버전 5.6.0 및 5.6.1 라이브러리에 존재하는 악성 삽입은 난독화되어 다운로드 패키지에만 포함되어 있다.
Git 배포판에는 악성 코드 빌드를 발사하는 M4 매크로가 없다.
2단계 아티팩트는 악성 M4 매크로가 있는 경우 빌드 시간 동안 주입을 위해 Git 리포지토리에 있다.
그 결과 악성 빌드는 systemd를 통해 sshd의 인증을 방해한다.
SSH는 시스템에 원격으로 연결하는 데 일반적으로 사용되는 프로토콜이며, sshd는 액세스를 허용하는 서비스이다.
적절한 상황에서 이 간섭으로 인해 악의적인 행위자가 sshd 인증을 중단하고,
원격으로 전체 시스템에 무단으로 액세스할 수 있다.
이 악성 코드의 영향을 받는 배포판은 무엇인가?
현재 조사에 따르면 패키지는 Red Hat 커뮤니티 에코시스템 내의 Fedora 40 및 Fedora Rawhide에만 있다.
RHEL(Red Hat Enterprise Linux) 버전은 영향을 받지 않는다.
Debian 불안정(Sid)용으로 구축된 XZ 5.6.x 버전에서 인젝션이 성공적으로 구축되었다는 보고와 증거가 있다.
다른 배포도 영향을 받을 수 있다. 다른 배포판 사용자는 해당 배포자에게 지침을 문의해야 한다.
영향을 받는 배포를 실행하는 경우 어떻게 해야 하는가?
개인 및 비즈니스 활동 모두에서, xz 버전을 다운그레이드할 수 있을 때까지
Fedora 40 또는 Fedora Rawhide 사용을 즉시 중단해야 한다.
비즈니스 환경에서 영향을 받는 배포를 사용하는 경우 다음 단계를 위해 정보 보안 팀에 문의하는 것이 좋다.
--------------------------------------------------------------------------------------------------------------
컴퓨터와 관련된 내용은 매일같이 오랜 기간 많은 공부를 해도 끝이 없네요.
배움의 끝은 아직도 갈 길이 멀고도 먼 길입니다.