파이썬 패키지의 원더랜드 PyPI 🐍📦

보안 전문가들, PyPI 저장소에 유포되는 악성 패키지에 대한 경고, 윈도우 및 리눅스 시스템에서 사이버스파이용 백도어를 배치하고 지속적인 문제 예측

주의 개발자 공식 파이썬 저장소가 악성 프로젝트로 침해되었습니다.

backdoor-gettyimages-823310866
이미지 출처: Getty Images

PyPI, 파이썬 패키지의 매혹적인 영역으로 오신 것을 환영합니다. 이 저장소에는 500,972개의 프로젝트, 5,228,535개의 릴리스, 그리고 인상적인 9,950,103개의 파일이 있어 전 세계 개발자들에게 보물창고 같은 역할을 합니다. 이 저장소는 파이썬 커뮤니티로부터 소프트웨어를 찾고 설치하는 것뿐만 아니라 개발자가 자신의 작품을 배포하는 플랫폼 역할도 합니다. 🎁💻

하지만, 모험처럼 표면 아래에는 숨겨진 위험 요소가 있습니다. 최근에 ESET 🛡️의 사이버 보안 전문가들은 PyPI 내에서 악성 파이썬 프로젝트들의 일련을 발견했습니다. 이 프로젝트들은 사이버 스파이웨어의 게이트웨이로 작동하는 맞춤형 백도어를 포함하고 있었습니다. 🕵️‍♂️💣

PyPI 내의 악성 영역

놀랍게도 PyPI에는 총 53개 프로젝트에 퍼진 116개의 악성 패키지가 발견되었습니다. 더 심각한 문제는 이들 패키지가 알지 못하는 사용자들에 의해 10,000회 이상 다운로드되었다는 것입니다. 😱💔

이러한 악성 패키지들은 정식판 파일 실행, 데이터 유출, 화면 스크린샷 캡처 등을 통해 파이썬 프로그래머들의 생활을 방해하기 위해 설계되었습니다. 일부 경우에는 백도어 대신 사용자 데이터를 탈취하는 악명높은 W4SP Stealer나 암호화폐를 대상으로 하는 클립보드 모니터가 배포되기도 했습니다. 📥💻😈

ESET의 사이버 보안 전문가들은 이러한 악성 패키지들이 오타스쿼팅으로 설치된 것이 아니라 사회 공학 기술을 통해 설치되었다고 믿습니다. 사용자들은 “pip”을 실행하고 “흥미로운” 패키지를 설치하도록 유도되어 공격자들의 함정에 빠진 것입니다. 다시 한 번 사회 공학이 성공했습니다! 🕵️🤷‍♂️

ESET의 연구원인 Marc-Etienne M. Léveillé은 “PyPI는 여전히 파이썬 프로그래머들의 장치를 위협하기 위해 사이버 공격자들에 의해 악용되고 있다”고 말합니다. 그는 자신의 블로그 글인 “PyPI의 파이썬 패키지들에 대한 아주 잔악한 혼합물”에서 개발자들이 어떤 공공 소프트웨어 저장소에서 코드를 다운로드하고 설치할 때 조심해야 한다고 경고합니다. 주의가 필요합니다! 🔒👀

악성 계획의 기술들

이 사악한 캠페인의 주도자들은 PyPI에 침투하고 악성 페이로드를 배포하기 위해 세 가지 다른 기술을 사용했습니다:

  1. 테스트 모듈 기술: 잡다한 악성 코드로 약간 난독화된 테스트 모듈을 은밀하게 배치하여 악의 없는 사용자들을 함정에 빠뜨립니다.

  2. PowerShell 코드 삽입: 일부 경우에는 PowerShell 코드가 setup.py 파일에 교묘하게 삽입되어 악성 의도를 숨깁니다.

  3. 약간 난독화된 악성 코드: 마지막으로, 공격자들은 자신들의 패키지 내에 약간 난독화된 악성 코드만 포함하여 탐지를 피하기 위해 의존했습니다.

윈도우와 리눅스에서 벌어진 전투

재미있게도 백도어 구현은 운영체제마다 다르게 이루어졌습니다. Windows에서는 악성 코드가 Python을 사용하여 실행되었고, Linux에서는 공격자들이 Go 언어를 사용하기로 선택했습니다. 😈🐧💻

파이썬 원더랜드 지키기

개발 커뮤니티에서 파이썬의 널리 사용이 이루어지기 때문에 개발자들은 타사 코드를 프로젝트에 통합할 때 주의를 기울여야 합니다. 무해해 보일 수 있는 패키지도 숨겨진 위험을 안고 있을 수 있습니다. ESET은 PyPI의 남용이 지속될 가능성이 있다고 경고하며, 개발자들이 다운로드하고 설치하는 코드를 면밀히 조사해야 한다고 당부합니다. 안전이 가장 중요합니다, 친구들아! 🛡️🚀

ESET이 결과를 게시한 시기에 대부분의 악성 패키지가 이미 PyPI에서 제거되었습니다. 안심하세요, 알려진 모든 악성 패키지는 지금 오프라인 상태입니다. 🚫🚨

“`html

Q&A: 해결해 주는 질문

Q: PyPI에서 설치하는 Python 패키지의 안전성을 어떻게 보장할 수 있을까요?

A: 훌륭한 질문입니다! 잠재적인 위험으로부터 스스로 보호하기 위해 몇 가지 미리 예방 조치를 취할 수 있습니다: – 코드 검토: 알려지지 않은 소스에서 온 패키지를 설치할 계획인 경우, 설치할 패키지의 코드를 철저히 검토해 보세요. – 이상 현상 확인: 패키지 내에서 이상한 동작이 있는지 확인하세요. 이상하게 가려진 또는 숨겨진 코드 부분을 찾아보세요. – 패키지 인기도 확인: 인기가 많고 잘 유지되는 패키지는 해킹될 위험이 낮습니다. 패키지의 다운로드 횟수, 업데이트 빈도, 그리고 커뮤니티 참여도를 확인하세요. – 최신 상태 유지: 패키지를 정기적으로 업데이트하여 가장 최신이고 안전한 버전을 사용하세요.

Q: PyPI는 앞으로 악성 패키지를 막기 위해 추가 조치를 취할 것인가요?

A: PyPI는 보고된 사례들을 신속히 처리하여 악성 패키지 bekbin을 막기 위해 노력하고 있습니다. 또한 보안 조치를 개선하고 사이버보안 커뮤니티와 협력하여 앞으로도 유사한 사건들이 발생하지 않도록 하겠습니다. 하지만 어떤 시스템이든 완전히 위협으로부터 면역이 되는 것은 아니므로 개발자들은 주의를 기울여야 합니다.

미래를 바라보며

이 사건은 디지털 세계의 끊임없는 위험을 경고하는 역할을 합니다. Python 커뮤니티에 점점 더 많은 개발자가 참여하며 PyPI가 자신의 저장소를 확장함에 따라 악성 패키지와의 전투는 계속될 것입니다. 이는 지속적인 경계 유지와 안전에 대한 적극적인 접근 방식이 필요함을 강조합니다. 함께 노력하여 더 안전하고 보안된 Python 생태계를 만들어봅시다! 💪🐍🛡️

관련 링크

사이버 보안과 소프트웨어 저장소의 세계를 더 자세히 알아보려면 다음 두 기사를 확인해보세요: – ChatGPT를 사용하여 코드 작성하는 방법새로운 리눅스 사용자가 OS를 보다 안전하게 보호할 수 있는 7가지 방법

이제 앞으로 나아가서 이 기사를 파이썬 개발자 친구들과 공유해보세요! 우리의 커뮤니티를 안전하게 유지하고 인식을 높이기 위해 행동에 옮겨봅시다. 댓글에 의견을 남기는 것을 잊지 마세요! 🗨️💻✨

이미지 출처: Getty Images

“`