Pervasive LLM Hallucinations Udvid kodeudviklerangrebsoverfladen

Pervasive LLM Hallucinations Udvid kodeudviklerangrebsoverfladen

Pervasive LLM Hallucinations Udvid kodeudviklerangreb Overflade PlatoBlockchain Data Intelligence. Lodret søgning. Ai.

Softwareudvikleres brug af store sprogmodeller (LLM'er) giver en større mulighed end tidligere antaget for angribere til at distribuere ondsindede pakker til udviklingsmiljøer, ifølge nyligt udgivet forskning.

Undersøgelsen fra LLM-sikkerhedsleverandøren Lasso Security er en opfølgning på en rapport sidste år om potentialet for angribere til at misbruge LLM'ers tendens til at hallucinere, eller for at generere tilsyneladende plausible, men ikke faktuelt funderede, resultater som svar på brugerinput.

AI Pakke Hallucination

tidligere undersøgelse fokuseret på ChatGPTs tendens til at fremstille navnene på kodebiblioteker – blandt andre fabrikationer – når softwareudviklere bad om hjælp til den AI-aktiverede chatbot i et udviklingsmiljø. Med andre ord spyttede chatbotten nogle gange links ud til ikke-eksisterende pakker på offentlige kodelagre, når en udvikler kunne bede den om at foreslå pakker til brug i et projekt.

Sikkerhedsforsker Bar Lanyado, forfatter til undersøgelsen og nu hos Lasso Security, fandt ud af, at angribere nemt kunne droppe en egentlig ondsindet pakke på det sted, som ChatGPT peger på, og give den samme navn som den hallucinerede pakke. Enhver udvikler, der downloader pakken baseret på ChatGPTs anbefaling, kan derefter ende med at introducere malware i deres udviklingsmiljø.

Lanyados opfølgende forskning undersøgte pakkehallucinationsproblemets udbredelse på tværs af fire forskellige store sprogmodeller: GPT-3.5-Turbo, GPT-4, Gemini Pro (tidligere Bard) og Coral (Cohere). Han testede også hver models tilbøjelighed til at generere hallucinerede pakker på tværs af forskellige programmeringssprog og den frekvens, hvormed de genererede den samme hallucinerede pakke.

Til testene kompilerede Lanyado en liste over tusindvis af "hvordan"-spørgsmål, som udviklere i forskellige programmeringsmiljøer - python, node.js, go, .net, ruby ​​- oftest søger assistance fra LLM'er i udviklingsmiljøer. Lanyado stillede derefter hver model et kodningsrelateret spørgsmål samt en anbefaling til en pakke relateret til spørgsmålet. Han bad også hver model anbefale 10 flere pakker til at løse det samme problem.

Gentagne resultater

Resultaterne var bekymrende. Opsigtsvækkende 64.5 % af de "samtaler" Lanyado havde med Gemini genererede hallucinerede pakker. Med Coral var det tal 29.1%; andre LLM'er som GPT-4 (24.2%) og GPT3.5 (22.5%) klarede sig ikke meget bedre.

Da Lanyado stillede hver model det samme sæt spørgsmål 100 gange for at se, hvor ofte modellerne ville hallucinere de samme pakker, fandt han, at gentagelsesfrekvensen også var øjenbrynsløftende. Cohere spyede for eksempel de samme hallucinerede pakker ud over 24 % af tiden; Chat GPT-3.5 og Gemini omkring 14 %, og GPT-4 ved 20 %. I flere tilfælde hallucinerede forskellige modeller de samme eller lignende pakker. Det højeste antal af sådanne krydshallucinerede modeller fandt sted mellem GPT-3.5 og Gemini.

Lanyado siger, at selvom forskellige udviklere stillede en LLM et spørgsmål om det samme emne, men udformede spørgsmålene forskelligt, er der en sandsynlighed for, at LLM vil anbefale den samme hallucinerede pakke i hvert tilfælde. Med andre ord vil enhver udvikler, der bruger en LLM til kodningshjælp, sandsynligvis støde på mange af de samme hallucinerede pakker.

"Spørgsmålet kunne være helt anderledes, men om et lignende emne, og hallucinationen ville stadig ske, hvilket gør denne teknik meget effektiv," siger Lanyado. "I den nuværende forskning modtog vi 'gentagende pakker' for mange forskellige spørgsmål og emner og endda på tværs af forskellige modeller, hvilket øger sandsynligheden for, at disse hallucinerede pakker bliver brugt."

Nem at udnytte

En angriber bevæbnet med navnene på nogle få hallucinerede pakker, for eksempel, kunne uploade pakker med de samme navne til de relevante arkiver vel vidende, at der er en god sandsynlighed for, at en LLM vil henvise udviklere til det. For at demonstrere, at truslen ikke er teoretisk, tog Lanyado en hallucineret pakke kaldet "huggingface-cli", som han stødte på under sine tests, og uploadede en tom pakke med samme navn til Hugging Face-lageret til maskinlæringsmodeller. Udviklere downloadede den pakke mere end 32,000 gange, siger han.

Fra en trusselsaktørs synspunkt tilbyder pakkehallucinationer en relativt ligetil vektor til distribution af malware. "Som vi [så] fra forskningsresultaterne, er det ikke så svært," siger han. I gennemsnit hallucinerede alle modellerne tilsammen 35 % for næsten 48,000 spørgsmål, tilføjer Lanyado. GPT-3.5 havde den laveste procentdel af hallucinationer; Gemini scorede det højeste med en gennemsnitlig gentagelsesevne på 18 % på tværs af alle fire modeller, bemærker han.

Lanyado foreslår, at udviklere udviser forsigtighed, når de handler på pakkeanbefalinger fra en LLM, når de ikke er helt sikre på dens nøjagtighed. Han siger også, at når udviklere støder på en ukendt open source-pakke, skal de besøge pakkelageret og undersøge størrelsen af ​​dets fællesskab, dets vedligeholdelsesregistreringer, dets kendte sårbarheder og dets samlede engagementsrate. Udviklere bør også scanne pakken grundigt, før de introduceres i udviklingsmiljøet.

Tidsstempel:

Mere fra Mørk læsning