[G1-Sync] Manual knowledge update
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-2BF446
|
||||
id: [[P-Reinforce]]-AUTO-2BF446
|
||||
category: "10_Wiki/💡 Topics/AI"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
@@ -17,13 +17,13 @@ github_commit: "[P-Reinforce] Continuous Worker - 공급망 공격 (Supply Chain
|
||||
대부분의 소프트웨어 프로젝트는 수많은 서드파티 오픈소스 패키지와 의존성(Dependencies)을 바탕으로 구축됩니다. 공격자는 이러한 소프트웨어 공급망을 노리며, 유지보수자의 권한(예: npm 인증 토큰)을 피싱과 같은 기법으로 탈취합니다 [3, 4]. 이후 소스 코드 저장소(GitHub 등)에는 어떠한 커밋 흔적도 남기지 않고, 패키지 관리 레지스트리에 직접 악성 버전의 패키지를 게시하여 신뢰 체인을 무너뜨립니다 [3].
|
||||
|
||||
* **실제 공격 사례 (CVE-2025-54313):**
|
||||
2025년 7월 18일, 주당 3,000만 회 이상 다운로드되는 인기 npm 라이브러리인 `eslint-config-prettier`를 대상으로 대규모 공급망 공격이 발생했습니다 [2, 4, 5]. 공격자는 `npmjs.com` 로그인 페이지를 위장한 피싱 이메일로 메인테이너를 속여 권한 토큰을 탈취한 후, 4개 버전(8.10.1, 9.1.1, 10.1.6, 10.1.7)에 악성 코드를 심어 배포했습니다 [3, 4, 6]. 이 외에도 `eslint-plugin-prettier`, `synckit` 등 여러 패키지가 동시에 피해를 입었습니다 [6].
|
||||
2025년 7월 18일, 주당 3,000만 회 이상 다운로드되는 인기 npm 라이브러리인 `[[eslint-config-prettier]]`를 대상으로 대규모 공급망 공격이 발생했습니다 [2, 4, 5]. 공격자는 `npmjs.com` 로그인 페이지를 위장한 피싱 이메일로 메인테이너를 속여 권한 토큰을 탈취한 후, 4개 버전(8.10.1, 9.1.1, 10.1.6, 10.1.7)에 악성 코드를 심어 배포했습니다 [3, 4, 6]. 이 외에도 `[[eslint-plugin-prettier]]`, `synckit` 등 여러 패키지가 동시에 피해를 입었습니다 [6].
|
||||
|
||||
* **악성 페이로드 작동 방식:**
|
||||
해당 공격은 npm의 설치 후 스크립트(post-install script) 기능을 악용했습니다. 패키지가 설치되는 즉시 `install.js` 파일이 실행되며, 내부의 `logDiskSpace()`라는 위장된 함수를 통해 `node-gyp.dll`이라는 악성 DLL 파일을 드롭(drop)하고 Windows의 `rundll32` 시스템 프로세스로 이를 실행시켰습니다 [7]. 이를 통해 공격자는 Windows를 사용하는 개발자의 로컬 머신이나 CI(지속적 통합) 호스트에서 원격 코드 실행(RCE) 권한을 획득할 수 있었습니다 [2, 3]. (이 악성 코드는 Linux나 macOS 환경에서는 즉시 종료되도록 설계되었습니다 [7, 8]).
|
||||
|
||||
* **대응 및 방어 전략:**
|
||||
"유지보수자의 보안이 곧 공급망 보안(Maintainer Security is Supply Chain Security)"입니다 [1]. 향후 이러한 공격을 예방하기 위해서는 다중 인증(MFA)의 강제 적용, 권한이 좁게 제한된 토큰(scoped tokens)의 사용, 더 엄격한 npm 게시 정책이 필수적입니다 [1]. 프로젝트 차원에서는 `package-lock.json`이나 `yarn.lock` 파일을 검토해 침해된 버전을 배제하고 알려진 안전한 버전으로 고정(Pinning)해야 하며, 빌드 파이프라인의 비정상적인 활동을 즉각 감사해야 합니다 [9]. 또한, 서드파티 라이브러리의 취약점을 파악하고 공급망 리스크를 완화하기 위해 SCA(Software Composition Analysis) 도구를 정기적으로 활용해야 합니다 [10, 11].
|
||||
"유지보수자의 보안이 곧 공급망 보안(Maintainer Security is Supply Chain Security)"입니다 [1]. 향후 이러한 공격을 예방하기 위해서는 다중 인증(MFA)의 강제 적용, 권한이 좁게 제한된 토큰(scoped tokens)의 사용, 더 엄격한 npm 게시 정책이 필수적입니다 [1]. 프로젝트 차원에서는 `package-lock.json`이나 `yarn.lock` 파일을 검토해 침해된 버전을 배제하고 알려진 안전한 버전으로 고정(Pinning)해야 하며, 빌드 파이프라인의 비정상적인 활동을 즉각 감사해야 합니다 [9]. 또한, 서드파티 라이브러리의 취약점을 파악하고 공급망 리스크를 완화하기 위해 SCA(Software Composition [[Analysis]]) 도구를 정기적으로 활용해야 합니다 [10, 11].
|
||||
|
||||
## ⚠️ 모순 및 업데이트 (Contradictions & RL Update)
|
||||
- **과거 데이터와의 충돌:** 자동화 엔진에 의해 매핑된 지식으로, 추후 정밀 검증 필요.
|
||||
|
||||
Reference in New Issue
Block a user