제퍼넷 로고

악성 NuGet 패키지의 표적이 된 .NET 개발자

시간

.NET 소프트웨어 개발자를 위해 NuGet 리포지토리에서 호스팅되는 베이커의 XNUMX개 패키지는 실제로 설치 시스템을 손상시키고 백도어 기능이 있는 암호 도용 맬웨어를 다운로드하는 악성 트로이 목마 구성 요소입니다.

소프트웨어 공급망 보안 회사인 JFrog는 21월 13일 발표된 분석에서 그 이후로 제거된 166,000개의 패키지가 1회 이상 다운로드되었으며 Coinbase 및 Microsoft ASP.NET과 같은 다른 합법적인 소프트웨어를 가장했다고 밝혔습니다. JFrog는 회사 연구원이 init.psXNUMX 파일이 설치 시 실행될 때 의심스러운 활동을 발견한 다음 실행 파일을 다운로드하고 실행했을 때 공격을 감지했습니다.

악성 코드의 발견은 공격자들 사이에서 .NET 및 C# 프로그래밍 언어가 덜 알려져 있음에도 불구하고 부주의한 개발자를 손상시키기 위한 방법으로 공격자들이 소프트웨어 공급망으로 더 나아가고 있음을 강조한다고 보안 연구 이사인 Shachar Menashe는 말했습니다. JFrog.

"NuGet 패키지 설치에서 악성 코드를 실행하는 기술은 사소하지만 Python이나 JavaScript보다 덜 문서화되어 있으며 일부는 더 이상 사용되지 않기 때문에 일부 초보 공격자는 이것이 불가능하다고 생각할 수 있습니다."라고 그는 말합니다. "아마도 NuGet은 악성 패키지에 대한 자동 필터링 기능이 더 우수할 것입니다."

소프트웨어 공급망은 개발자의 시스템을 손상시키거나 개발자의 응용 프로그램을 통해 최종 사용자에게 눈에 띄지 않는 코드를 전파하려는 공격자의 표적이 되고 있습니다. PyPI(Python Package Index)와 JavaScript 중심의 Node Package Manager(npm) 생태계는 빈번한 공급망 공격의 대상 오픈 소스 프로젝트를 대상으로 합니다.

다음으로 구성된 .NET 소프트웨어 생태계에 대한 공격 거의 350,000개의 고유 패키지JFrog에 따르면 악성 패키지가 NuGet을 표적으로 삼은 것은 이번이 처음입니다. 이전에 개발자에게 피싱 링크 푸시.

Typosquatting 여전히 문제

이 공격은 타이포스쿼팅이 계속해서 문제가 되고 있음을 강조합니다. 이러한 유형의 공격은 사용자가 일반적인 패키지를 잘못 입력하거나 오류를 알아차리지 않기를 바라면서 유사한 발음 이름(또는 일반적인 철자 오류가 있는 동일한 이름)을 가진 패키지를 생성하는 것과 관련이 있습니다.

개발자는 새 패키지를 프로그래밍 프로젝트에 포함하기 전에 잘 살펴봐야 한다고 JFrog 연구원이 말했습니다. Natan Nehorai와 Brian Moussalli는 온라인 자문에 썼습니다..

"NuGet 리포지토리에서 이전에 악성 코드 공격이 관찰되지 않았음에도 불구하고 우리는 악성 코드를 전파하기 위해 타이포스쿼팅과 같은 방법을 사용하는 최근 캠페인에 대한 증거를 하나 이상 찾을 수 있었습니다."라고 그들은 썼습니다. "다른 리포지토리와 마찬가지로 소프트웨어 공급망이 안전하게 유지되도록 소프트웨어 개발 수명 주기의 모든 단계에서 안전 조치를 취해야 합니다."

즉각적인 코드 실행에 문제가 있음

개발 도구에 의해 자동으로 실행되는 파일은 보안 취약점이며 공격 노출 영역을 줄이기 위해 제거하거나 제한해야 한다고 연구원들은 말했습니다. 이 기능은 예를 들어 Go 패키지 생태계와 비교할 때 npm 및 PyPI 생태계에 포이즈닝 문제가 있는 중요한 이유입니다.

JFrog 연구원은 블로그 게시물에서 "발견된 악성 패키지가 이후 NuGet에서 제거되었음에도 불구하고 NuGet 패키지에는 여전히 패키지 설치 즉시 코드를 실행할 수 있는 기능이 포함되어 있기 때문에 .NET 개발자는 여전히 악성 코드의 위험이 높습니다."라고 블로그 게시물에서 밝혔습니다. . "[A]더 이상 사용되지 않지만 [초기화] 스크립트는 여전히 Visual Studio에서 사용되며 NuGet 패키지를 설치할 때 경고 없이 실행됩니다."

JFrog는 개발자들에게 가져온 패키지와 설치된 패키지의 오타를 확인하라고 조언했으며 개발자는 "실수로 프로젝트에 패키지를 설치하거나 종속성으로 언급"하지 않도록 해야 한다고 말했습니다.

또한 개발자는 다운로드되고 자동으로 실행되는 실행 파일이 없는지 확인하기 위해 패키지의 내용을 확인해야 합니다. 이러한 파일은 일부 소프트웨어 에코시스템에서 일반적이지만 일반적으로 악의적인 의도를 나타냅니다.

JFrog의 Menashe는 다양한 대책을 통해 npm 및 PyPI뿐만 아니라 NuGet 리포지토리가 느리지만 확실하게 보안 취약점을 제거하고 있다고 말합니다. 

"NuGet이 앞으로 더 많은 표적이 될 것으로 기대하지 않습니다. 특히 NuGet 유지 관리자가 패키지 설치 시 코드 실행 지원을 완전히 제거하는 경우(이미 부분적으로 수행함)"라고 그는 말합니다.

spot_img

최신 인텔리전스

spot_img