공격자는 합법적인 오픈소스 프로젝트로 위장하여 면접자에게 악성 코드를 실행하도록 유도해 자산을 훔칩니다.
작성자: 조커&암 씨제이, 슬로우 미스트 기술
편집: 크스엠티.
배경
2025년 8월 9일, 한 커뮤니티 회원이 첫 번째 면접에서 우크라이나 출신이라고 주장하는 Web3 팀으로부터 로컬에서 특정 GitHub 저장소를 복제하도록 요구받았습니다. 해당 저장소의 코드 보안성에 의문을 제기하여 최근 슬로우 미스트 보안팀에 도움을 요청했습니다. 우리는 즉시 해당 GitHub 오픈소스 프로젝트 (EvaCodes-Community/UltraX)를 분석했고, 실제로 문제가 있음을 발견했으며, 해당 회원의 동의 하에 보안 경고를 발표했습니다.

분석 과정
먼저, 해당 프로젝트의 GitHub 저장소를 방문했습니다: https://github.com/EvaCodes-Community/UltraX. 최근 변경 사항에서 최신 버전이 [email protected] 서드파티 패키지를 도입하여 원래의 [email protected]를 대체했음을 발견했습니다.
(이하 생략, 번역 계속됨)
악의적인 NPM 패키지에서 변수 aj에 악의적인 스크립트가 할당되었으며, 이 스크립트에는 메시지를 악의적인 서버로 보내는 makeLog 함수가 정의되어 있습니다. setHeader 함수는 스크립트가 가상 머신 환경에서 실행되고 있는지 시스템 정보를 확인하여 감지하고, 해당 정보를 악의적인 서버 (172[.]86[.]64[.]67)로 전송합니다.

또한 악의적인 코드는 npm install 명령어를 사용하여 socket.io-client 라이브러리를 설치하려고 시도하며, 이를 통해 C&C 서버 (172[.]86[.]64[.]67)와 소켓 연결을 설정하고 악의적인 서버의 "command" 메시지를 수신 대기합니다. 명령을 받으면 exec()를 사용하여 실행하고 실행 결과를 악의적인 서버로 다시 보냅니다. 악의적인 서버는 "whour" 명령을 통해 클라이언트의 현재 환경 정보를 얻을 수 있습니다.

변수 ak에는 브라우저와 사용자의 민감한 데이터를 훔치고 훔친 민감한 데이터를 악의적인 서버로 보내는 악의적인 스크립트가 할당되었습니다.

변수 al에도 대상 컴퓨터의 파일 시스템을 스캔하여 민감한 데이터 파일을 찾고, 훔친 민감한 데이터를 악의적인 서버로 전송하는 악의적인 스크립트가 할당되었습니다.

변수 am에 할당된 악의적인 스크립트는 키보드 로깅, 스크린샷 캡처, 클립보드 내용 모니터링 등의 기능을 구현하고 데이터를 악의적인 서버로 전송합니다.


두 개의 GitHub 계정이 이 저장소를 포크했으며, 이러한 포크 프로젝트를 분석한 결과 package.json 파일에 처음에 [email protected] 악의적인 NPM 패키지가 존재함을 발견했습니다.

침해 지표 (IoCs)
IP 주소:
144[.]172[.]112[.]106
172[.]86[.]64[.]67
URL:
http://144[.]172[.]112[.]106:1224/pdown
http://144[.]172[.]112[.]106:1224/client/5346/64
https://api[.]npoint[.]io/96979650f5739bcbaebb
http://172[.]86[.]64[.]67/api/service/makelog
http://172[.]86[.]64[.]67/api/service/process/
http://172[.]86[.]64[.]67:4181
http://172[.]86[.]64[.]67:4188/upload
http://172[.]86[.]64[.]67:4186/upload
http://172[.]86[.]64[.]67:4187/upload
SHA256:
af46c7917f04a9039eb0b439a7615ec07b7ad88048cb24fe23c454c16dffcd57 - rtk-logger-1.11.5.tgz
[email protected]를 사용하는 GitHub 저장소:
https://github[.]com/EvaCodes-Community/UltraX
[email protected]를 사용하는 GitHub 저장소:
https://github[.]com/kylengn/UltraX
https://github[.]com/taqveemahsan/UltraX
https://github[.]com/zinping/Pain_project
악의적인 NPM 패키지:
https://www[.]npmjs[.]com/package/rtk-logger
https://www[.]npmjs[.]com/package/redux-ace
NPM 패키지 다운로드 주소
https://registry[.]npmjs[.]org/rtk-logger/-/rtk-logger-1.11.5.tgz
요약
이번 사건에서 공격자는 합법적인 오픈소스 프로젝트 (EvaCodes-Community/UltraX)로 위장하여 면접자가 악의적인 코드를 다운로드하고 실행하도록 유도했습니다. 면접자가 악의적인 NPM 패키지가 포함된 프로젝트를 아무런 대비 없이 실행할 경우 민감한 데이터 유출 및 자산 도난으로 이어질 수 있습니다. 개발자와 사용자는 출처를 알 수 없는 GitHub 프로젝트에 대해 매우 주의해야 하며, 반드시 실행 및 디버깅이 필요한 경우 민감한 데이터가 없는 독립된 머신 환경에서 실행 및 디버깅할 것을 권장합니다.
면책 조항: 블록체인 정보 플랫폼으로서 본 사이트에 게시된 기사는 작성자 및 게스트의 개인적인 견해를 나타내며 Web3Caff의 입장과는 무관합니다. 기사의 정보는 참고용일 뿐이며 어떠한 투자 조언이나 제안도 구성하지 않으므로 귀하의 국가 또는 지역의 관련 법률을 준수하시기 바랍니다.





