생성 데이터 인텔리전스

AI 봇은 소프트웨어 패키지를 환각화하고 개발자는 이를 다운로드합니다.

시간

심층적 인 몇몇 대기업은 이전에 생성 AI로 환각을 느꼈던 소프트웨어 패키지를 통합한 소스 코드를 공개했습니다.

그뿐만 아니라, 반복적으로 발생하는 환각을 발견한 누군가가 가짜 종속성을 실제 종속성으로 바꾸었고, 이후 AI의 나쁜 조언으로 인해 개발자가 수천 번 다운로드하고 설치했다는 사실을 알게 되었습니다. 패키지에 양성 테스트가 아닌 실제 악성 코드가 포함되어 있었다면 결과는 비참했을 수 있습니다.

Lasso Security의 보안 연구원인 Bar Lanyado에 따르면, AI에 속아 패키지를 통합한 기업 중 하나가 Alibaba입니다. 이 회사에는 이 글을 쓰는 시점에도 여전히 pip 명령 Python 패키지를 다운로드하려면 huggingface-cli 의의 그래프 번역기 설치 지침.

합법적인 것이 있다 포옹얼굴-cli, 다음을 사용하여 설치됨 pip install -U "huggingface_hub[cli]".

그러나 huggingface-cli Python Package Index(PyPI)를 통해 배포되고 Alibaba의 GraphTranslator에 필요 – 다음을 사용하여 설치 pip install huggingface-cli – 인공지능이 상상한 가짜이며, 실험을 통해 Lanyado가 현실로 만들었습니다.

그는 창조했다 huggingface-cli 생성 AI에 의해 반복적으로 환각을 본 후 12월; 올해 2월까지 Alibaba는 실제 Hugging Face CLI 도구가 아닌 GraphTranslator의 README 지침에서 이를 언급했습니다.

교육과정

Lanyado는 이러한 종류의 환각적인 소프트웨어 패키지(아마도 프로젝트 개발 중에 생성된 AI 모델에 의해 발명된 패키지 이름)가 시간이 지나도 지속되는지 여부를 조사하고 발명된 패키지 이름이 실제로 작성되어 악성 코드를 배포하는 데 사용될 수 있는지 여부를 테스트하기 위해 그렇게 했습니다. AI가 꿈꾸는 코드 이름을 사용하는 패키지.

여기서의 아이디어는 악의적인 사람이 모델에게 코드 조언을 요청하고 AI 시스템이 반복적으로 권장하는 패키지를 상상해 기록한 다음 이러한 종속성을 구현하여 다른 프로그래머가 동일한 모델을 사용하고 동일한 제안을 받을 때 결국 끌어들이게 된다는 것입니다. 악성 코드에 감염될 수 있는 라이브러리입니다.

지난해에는 보안업체인 Vulcan Cyber를 통해 Lanyado가 출판 ChatGPT와 같은 AI 모델에 코딩 질문을 제기하고 존재하지 않는 소프트웨어 라이브러리, 패키지 또는 프레임워크의 사용을 권장하는 답변을 받는 방법을 자세히 조사합니다.

"공격자가 이러한 캠페인을 실행할 때 모델에 코딩 문제를 해결하는 패키지를 요청한 다음 존재하지 않는 일부 패키지를 받게 됩니다."라고 Lanyado는 설명했습니다. 등록. "그는 동일한 이름을 가진 악성 패키지를 적절한 레지스트리에 업로드할 것이며, 그 시점부터 그가 해야 할 일은 사람들이 패키지를 다운로드할 때까지 기다리는 것뿐입니다."

위험한 가정

AI 모델의 의지 존재하지 않는 법원 사건을 인용하다 이제는 잘 알려져 있으며 이러한 경향을 알지 못하는 변호사들 사이에서 적지 않은 당혹감을 불러일으켰습니다. 그리고 밝혀진 바와 같이, 생성 AI 모델은 소프트웨어 패키지에 대해서도 동일한 작업을 수행합니다.

Lanyado가 이전에 언급한 것처럼, 범죄자는 다른 사람이 악성 코드를 다운로드할 수 있기를 바라면서 일부 저장소에 업로드된 악성 패키지에 AI가 개발한 이름을 사용할 수 있습니다. 그러나 이것이 의미 있는 공격 벡터가 되려면 AI 모델이 선택한 이름을 반복적으로 권장해야 합니다.

이것이 바로 Lanyado가 테스트를 시작한 것입니다. 수천 개의 "방법" 질문으로 무장한 그는 3.5가지 프로그래밍 언어/런타임(Python, Node.js, Go, .Net 및 Ruby)에는 각각 자체 패키징 시스템이 있습니다.

이러한 챗봇이 허공에서 끌어내는 이름 중 일부는 지속적이며 일부는 다른 모델에 걸쳐 있는 것으로 나타났습니다. 그리고 끈기(가짜 이름의 반복)는 AI의 기발함을 기능적 공격으로 바꾸는 열쇠입니다. 공격자는 해당 이름으로 생성된 악성 코드를 찾아 다운로드하기 위해 사용자에 대한 응답에서 환각 패키지의 이름을 반복하는 AI 모델이 필요합니다.

Lanyado는 제로샷 환각에 대해 무작위로 20개의 질문을 선택하고 각 모델에 100번씩 질문했습니다. 그의 목표는 환각 패키지 이름이 얼마나 자주 동일하게 유지되는지 평가하는 것이었습니다. 그의 테스트 결과에 따르면 항상 그런 것은 아니지만 일부 패키징 생태계에서는 기능적 공격 벡터가 될 만큼 이름이 지속되는 경우가 많으며 일부 패키징 생태계에서는 더 많은 것으로 나타났습니다.

Lanyado에 따르면 GPT-4를 사용하면 질문 응답의 24.2%가 환각 패키지를 생성했으며 그 중 19.6%는 반복적이었습니다. 에게 제공되는 테이블 등록아래에서는 GPT-4 응답에 대한 더 자세한 분석을 보여줍니다.

  Python Node.JS 루비 . NET Go
총 질문 21340 13065 4544 5141 3713
하나 이상의 환각 패키지가 포함된 질문 5347 (25의 %) 2524 (19.3의 %) 1072 (23.5의 %) 1476 (28.7%) 1093 악용 가능 (21.2%) 1150 (30.9%) 109 악용 가능 (2.9%)
제로샷의 환각 1042 (4.8의 %) 200 (1.5의 %) 169 (3.7의 %) 211 (4.1%) 130 악용 가능 (2.5%) 225 (6%) 14 악용 가능 (0.3%)
두 번째 장면의 환각 4532 (21의 %) 2390 (18.3의 %) 960 (21.1의 %) 1334 (25.9%) 1006 악용 가능 (19.5%) 974 (26.2%) 98 악용 가능 (2.6%)
제로샷의 반복성 34.4% 24.8% 5.2% 14% -

GPT-3.5에서는 질문 응답의 22.2%가 환각을 유발했고 13.6%의 반복성이 나타났습니다. Gemini의 경우 64.5개의 질문에 발명된 이름이 포함되었으며, 그 중 약 14%가 반복되었습니다. 그리고 코히어의 경우 환각 29.1%, 반복 24.2%로 나타났다.

그럼에도 불구하고 Go 및 .Net의 패키징 생태계는 공격자가 특정 경로 및 이름에 액세스하는 것을 거부하여 악용 가능성을 제한하는 방식으로 구축되었습니다.

"Go와 .Net에서 우리는 환각 패키지를 받았지만 그 중 대부분은 공격에 사용할 수 없었습니다(Go에서는 그 숫자가 .Net보다 훨씬 더 중요했습니다). 각 언어는 고유한 이유로 인해 사용되지 않았습니다."라고 Lanyado는 설명했습니다. 등록. “Python과 npm에서는 그렇지 않습니다. 모델이 존재하지 않는 패키지를 권장하고 이러한 이름의 패키지를 업로드하는 것을 방해하는 것이 없기 때문에 다음과 같은 언어에 대해 이런 종류의 공격을 실행하는 것이 훨씬 쉽습니다. Python과 Node.js.”

PoC 악성코드 시딩

Lanyado는 Python 생태계의 무해한 파일 세트인 개념 증명 악성 코드를 배포하여 이 점을 지적했습니다. ChatGPT의 조언을 바탕으로 실행 pip install huggingface-cli, 그는 위에서 언급한 것과 같은 이름의 빈 패키지를 PyPI에 업로드하고 다음과 같은 이름의 더미 패키지를 만들었습니다. blabladsa123 실제 다운로드 시도와 패키지 레지스트리 검색을 분리하는 데 도움이 됩니다.

그 결과는 다음과 같다고 그가 주장한다. huggingface-cli 출시된 지 15,000개월 만에 XNUMX회 이상의 실제 다운로드를 받았습니다.

"또한 우리는 이 패키지가 다른 회사의 저장소 내에서 활용되었는지 확인하기 위해 GitHub에서 검색을 수행했습니다."라고 Lanyado는 말했습니다. 작문 그의 실험을 위해.

“우리의 연구 결과에 따르면 몇몇 대기업이 저장소에서 이 패키지를 사용하거나 권장하는 것으로 나타났습니다. 예를 들어, 이 패키지 설치 지침은 Alibaba에서 수행한 연구 전용 저장소의 README에서 찾을 수 있습니다."

알리바바는 논평 요청에 응답하지 않았다.

Lanyado는 또한 가짜 Huggingface-cli를 통합한 Hugging Face 소유 프로젝트가 있다고 말했습니다. 제거되었다 그가 사업에 경고한 후.

적어도 지금까지 이 기술은 Lanyado가 인지한 실제 공격에는 사용되지 않았습니다.

“우리의 환각 패키지(우리의 패키지는 악성이 아니며 이는 이 기술을 활용하는 것이 얼마나 쉽고 위험할 수 있는지를 보여주는 예일 뿐입니다) 외에도 악의적인 행위자가 이 공격 기술을 악용하는 것을 아직 확인하지 못했습니다.”라고 그는 말했습니다. "발자취를 많이 남기지 않기 때문에 그러한 공격을 식별하는 것이 복잡하다는 점에 유의하는 것이 중요합니다." ®

spot_img

최신 인텔리전스

spot_img

우리와 함께 채팅

안녕하세요! 어떻게 도와 드릴까요?