파이썬 데이터 분석 도구가 하루 중 반만 동작하면서 악성 코드로 변해버렸습니다. 그것은 키와 토큰을 훔쳤습니다

파이썬 데이터 분석 도구가 하루 중 반만 동작하면서 악성 코드로 변해버렸습니다. 그것은 키와 토큰을 훔쳤습니다

20 hardware

사이버 범죄자는 PyPI에 악성 버전의 elementary-data 패키지를 업로드했습니다

익명의 해커는 데이터 모니터링 도구인 *elementary-data* 0.23.3 버전을 수정한 악성 버전을 PyPI 저장소에 업로드했습니다. 이 악성 패키지는 SSH 키, AWS 자격 증명, API 토큰 및 비트코인, 라이트코인, 도지코인, 이더리움 등 암호화폐 지갑 파일과 같은 기밀 정보를 수집하고 원격 서버로 전송했습니다. 수집된 데이터는 `trin.tar.gz` 아카이브에 압축되어 공격자에게 전달되었습니다.

저장소 접근 방법

공격자는 *elementary-data* 프로젝트의 GitHub Actions 워크플로 중 하나에서 취약점을 이용했습니다. 자동으로 부여받은 `GITHUB_TOKEN`을 사용해 풀 리퀘스트를 만들었고, 그 안에서 원본 패키지를 악성 버전으로 교체했습니다. 자동화된 워크플로 덕분에 PR이 승인되고 감염된 릴리스가 게시되었습니다.

악성 패키지 존재 기간

- 4월 25일, 02:20 (MSK) – 해커가 PyPI에 악성 버전을 업로드했습니다.
- 02:24 – 그는 또한 GitHub Container Registry에 감염된 Docker 이미지를 배포해 공격 범위를 확장했습니다.
- 같은 날 13:45 – 프로젝트 관리자는 모든 손상된 파일을 삭제하고 깨끗한 0.23.4 버전을 출시했습니다.

이렇게 악성 패키지는 사용자에게 11시간 이상 제공되어 데이터 유출 가능성을 높였습니다.

피해 부문

개발자들은 *Elementary dbt*, Elementary Cloud 리소스 및 다른 프로젝트 버전은 이번 사고에 영향을 받지 않았다고 확인했습니다.

사용자가 취해야 할 조치
1. 감염된 0.23.3 버전을 삭제하고 안전한 0.23.4 릴리스를 설치합니다.
2. 패키지 캐시를 정리합니다 (`pip cache purge` 또는 유사 도구 사용).
3. `.trinny-security-update` 마커 파일이 있으면 삭제합니다. 이 파일은 악성 코드 실행을 나타냅니다.

개발자가 취한 조치
- PyPI 게시 토큰을 업데이트했습니다.
- GitHub 및 GitHub Container Registry 토큰을 재검토하고 갱신했습니다.
- 취약한 GitHub Actions 워크플로를 삭제했고, 나머지 작업 흐름은 보안 검사를 거쳤습니다.

이렇게 *elementary-data* 팀은 저장소에 대한 통제를 복구하고 사용자에게 추가 위협으로부터 보호했습니다

댓글 (0)

의견을 남겨 주세요. 예의를 지키고 주제에서 벗어나지 말아 주세요.

아직 댓글이 없습니다. 댓글을 남기고 의견을 공유해 주세요!

댓글을 남기려면 로그인해 주세요.

댓글을 남기려면 로그인