0xNews - PyPi 파이썬 라이브러리 내 숨겨진 악성 코드 발견

0xNews - PyPi 파이썬 라이브러리 내 숨겨진 악성 코드 발견


jfrog 발표

https://jfrog.com/blog/python-malware-imitates-signed-pypi-traffic-in-novel-exfiltration-technique/


PyPi Python Package Index 저장소에서 누적 4만회 이상 다운로드 수행

Discord 접속 토큰, 암호를 훔치는데 악용될 수 있는 악성 파이썬 패키지 11개 발견


다음은 악성 파이썬 패키지 리스트

importantpackage / important-package

pptest

ipboards

owlmoon

DiscordSafety

trrfab

10Cent10 / 10Cent11

yandex-yt

yiffparty


다음 패키지 리스트 중 2개 - importantpackage, 10Cent10

감염된 시스템에서 리버스 쉘 reverse shell 획득 후 공격자가 감염된 시스템을 완전히 제어 가능하도록 함

 

다음 패키지 리스트 중 2개 - ipboards, trrfab

종속성 혼동 dependency confusion 혹은 네임스페이스 혼동이라는 기술을 이용

자동으로 가져오도록 설계된 정상적인 종속성으로 가장


악의적인 행위자가 인기 있는 변종의 철자가 틀린 이름을 가진 패키지를 고의적으로 게시하는 타이포스 쿼팅 공격과 달리 종속성 혼란은 정상적인 것과 동일한 이름을 가진 중독된 구성 요소를 공개 저장소에 업로드

하지만 더 높은 버전을 사용하여 효과적으로 대상 패키지를 강제 실행함으로써 구동

관리자는 악성 모듈을 다운로드 하여 시스템에 설치


패키지 importantpackage 의 종속성은 네트워크 기반 탐지를 피하기 위한 새로운 유출 메커니즘으로 유명

Fastly 의 CDN content delivery network 사용

pypi.org 와의 통신으로 공격자가 제어하는 서버와의 통신을 마스킹하는 작업이 포함


악성코드는 HTTPS 요청이 pypi.python.org 으로 전송되도록 함

하지만 PyPI 에 대한 정상적인 요청과 구별할 수 없음

나중에 CDN 에 의해 C&C 에 대한 HTTP 요청으로 다시 라우팅


마지막 패키지 리스트 중 2개 - ipboards, pptest

DNS 터널링을 데이터 유출 방법으로 사용하는 것을 발견

DNS 요청을 피해자 시스템과 원격 서버간 통신 채널로 사용하는 것



NPM Node Package Manager JavaScript 레지스트리, PyPI, RubyGems 과 같은 코드 레지스트리를 대상으로 하는 공격은 이제 일반적인 수준


패키지 관리자는 의도하지 않은 악성 코드 설치를 강력하고 성장 중인 공격 백터 중 하나

공격자의 공격 접근 방식이 점점 고도화와 정교화되어 가는 중

위 악성 패키지의 경우와 같이 멀웨어 패키지와 연계되고 회피 기술이 추가 되는 등 오픈소프 소프트웨어에 대한 공격이 점점 은밀해지고 있음


실제로 github 에서는 2022년 1분기 부터 유지 관리자와 관리자를 위한 2단계 인증 2FA 요구

NPM 패키지 ua-parser-js, coa, rc 등에 악성 코드가 숨겨져서 실행

https://github.blog/2021-11-15-githubs-commitment-to-npm-ecosystem-security/


댓글

이 블로그의 인기 게시물

0xNews - 미군을 주제로 하여 한국인을 노리는 피싱 공격 캠페인 경고

0xNews - 리눅스 커널에서 StackRot 라는 이름의 취약점으로 권한 상승 취약점 발견

0xNews - 리눅스 시스템에 원격 명령어 인젝션 공격이 가능한 새로운 openSSH 취약점 발견