ყველა უსაფრთხოების გუნდი გაწვრთნილია კოდის გაგზავნის პროცესში თვალყურის დევნებისთვის. თითქმის არცერთი არ არის გაწვრთნილი მონაცემების მიღებისთანავე თვალყურის დევნებისთვის და სწორედ ეს „ბრმა წერტილი“ გამოიყენება მონაცემთა „მოწამვლის“ მიერ. როდესაც „მოწამლული“ მოდელი წარმოებაში მოხვდება, დაუცველობა კოდის განხილვის პროცესში არასდროს ყოფილა. ის ისეთ მონაცემთა ნაკრებში იყო, რომლის აუდიტიც თვეების წინ არავის ჩაუტარებია.
ეს ტერმინოლოგიური ჩანაწერი განმარტავს, თუ რა არის მონაცემთა მოწამვლა, როგორ ხდება მონაცემთა მოწამვლის შეტევები პრაქტიკაში და რატომ გახდა ხელოვნური ინტელექტის მონაცემთა მოწამვლა ერთ-ერთი... ხელოვნური ინტელექტის ეპოქაში ყველაზე სწრაფად მზარდი რისკები SDLCდა როგორ გამოიყურება მისგან რეალური დაცვა.
მონაცემთა მოწამვლის მნიშვნელობა #
მონაცემთა მოწამვლა არის ხელოვნური ინტელექტის მოდელის წვრთნის, დახვეწის ან დამიწების მიზნით გამოყენებული მონაცემების განზრახ მანიპულირება ისე, რომ მოდელმა არასწორად ისწავლოს, მოიქცეს ისე, როგორც თავდამსხმელს სურს ან გაჟონოს ინფორმაცია, რომელიც არასდროს უნდა გაამჟღავნოს. განლაგების შემდეგ მოდელზე თავდასხმის ნაცვლად, თავდამსხმელი თავს ესხმის იმ ნედლეულ მასალას, საიდანაც მოდელია აგებული.
მონაცემთა „მოწამვლის“ ძირითადი იდეა მარტივია და შემაშფოთებელი: ხელოვნური ინტელექტის მოდელი მხოლოდ იმდენად სანდოა, რამდენადაც მონაცემები, რომლებიდანაც ის სწავლობს. თუ ეს მონაცემები დაზიანებულია, მიკერძოებულია ან „აფეთქების ხაფანგშია“ ჩართული ტრენინგის დაწყებამდეც კი, კოდის გადახედვის, ტესტირების ან გაშვების მონიტორინგის არანაირი რაოდენობა ვერ აღმოაჩენს არსებულ ხარვეზს, რადგან მოდელი მუშაობს ზუსტად ისე, როგორც (მავნე) ასწავლეს.
ხელოვნური ინტელექტის მონაცემთა მოწამვლა ტრადიციული პროგრამული უზრუნველყოფის დაუცველობებთან შედარებით #
ტრადიციული აპლიკაციების უსაფრთხოება ვარაუდობს, რომ საფრთხე კოდშია: არასწორი ფუნქცია, გაუმართავი ბიბლიოთეკა, არასწორად კონფიგურირებული სერვერი. ხელოვნური ინტელექტის მონაცემთა „მოწამვლა“ ამ ვარაუდს მთლიანად არღვევს. არ არსებობს კოდის დაუცველი ხაზი, რომელიც უნდა მოიძებნოს, რადგან დაზიანება მოხდა სასწავლო ნაკრებში, დახვეწის მონაცემთა ნაკრებში ან მოძიების ინდექსში დიდი ხნით ადრე, სანამ რაიმე კოდი დაიწერებოდა ან რაიმე მოდელი განლაგდებოდა.
სწორედ ამიტომ არის ხელოვნური ინტელექტის მონაცემების მოწამვლა გამორჩეულად რთული მემკვიდრეობით მიღებული ინსტრუმენტებით. SAST სკანერი კითხულობს კოდს. დამოკიდებულების სკანერი კითხულობს პაკეტის მანიფესტებს. არც ერთი არ კითხულობს მრავალგიგაბაიტიან სასწავლო კორპუსს ან ჩაშენებული დოკუმენტებით სავსე ვექტორულ მონაცემთა ბაზას, რაც წინასწარ არისcisმხოლოდ იქ, სადაც ხელოვნური ინტელექტის მონაცემების მოწამვლა ზიანს აყენებს. უსაფრთხოების მკვლევარები და პასუხისმგებლობით ამხელენ. სხვები თავდამსხმელების მიერ პირველები პოულობენ და იარაღად იქცევიან, რაც ყველაზე დიდ ზიანს იწვევს.
როგორ მუშაობს სინამდვილეში მონაცემთა მოწამვლის შეტევები? #
მონაცემთა მოწამვლის შეტევები, როგორც წესი, რამდენიმე ფორმით ვლინდება:
- ტრენინგის მონაცემების მოწამვლათავდამსხმელი მოდელის ნულიდან მომზადებისთვის ან არსებულის დასახვეწად გამოყენებულ მონაცემთა ნაკრებში ჩადებს მანიპულირებულ, არასწორად მონიშნულ ან მავნე მაგალითებს, რაც აიძულებს მას ისწავლოს ფარული მიკერძოება ან „უკანა კარის“ ქცევა.
- ეტიკეტის გადაბრუნება: ზემოთ აღნიშნულის უფრო დახვეწილი ვერსია, სადაც თავდამსხმელი ცვლის მხოლოდ სასწავლო მაგალითების მცირე ქვესიმრავლის იარლიყებს და ჩუმად ამახინჯებს იმას, რასაც მოდელი რასთან აკავშირებს.
- RAG და კონტექსტური მოწამვლაგაძლიერებული აღდგენის სისტემებში, თავდამსხმელი ათავსებს მოწამლულ დოკუმენტებს ცოდნის ბაზაში ან ვექტორულ საცავში, საიდანაც მოდელი იღებს მონაცემებს გაშვების დროს, ამიტომ მოდელი თავდაჯერებულად იმეორებს ცრუ ან მანიპულირებულ ინფორმაციას, თითქოს ეს დადასტურებული ფაქტი იყოს.
- უკანა კარის ტრიგერები: თავდამსხმელი ნერგავს ტრენინგის მონაცემებში კონკრეტული ნიმუში ისე, რომ მოდელი თითქმის ყველა შემთხვევაში ნორმალურად იქცევა, მაგრამ გამოიმუშავებს თავდამსხმელის მიერ არჩეულ გამომავალს იმ მომენტში, როდესაც გამოჩნდება ფარული ტრიგერის ფრაზა ან შეყვანა.
- მიწოდების ჯაჭვის მოწამვლა: თავდამსხმელი საფრთხეს უქმნის საჯარო ან გაზიარებულ მონაცემთა ნაკრებს, წინასწარ მომზადებული მოდელის საკონტროლო წერტილი ან ჩასმა pipeline ზემოთ, ისე, რომ მისგან გამოსული ყველა გუნდი მემკვიდრეობით მიიღებს შხამს თავდაპირველი შეტევის შეხების გარეშე.
ყველა ამ მონაცემთა მომწამვლელ შეტევას ერთმანეთთან დრო აკავშირებს. ზიანი მიადგება მანამ, სანამ მოდელი რეალურ მომხმარებელს უპასუხებს, სწორედ ამიტომ აღწერს ფრაზა „სანამ კოდის ერთ სტრიქონსაც კი დაწერს“ ამ საფრთხეს ასე წინასწარ.cisელი: მოდელი კომპრომეტირებულია მის საფუძველში და არა გამოსავალში.
როგორ აზიანებენ თავდამსხმელები ხელოვნური ინტელექტის მოდელს კოდის ერთი ხაზის დაწერამდე? #
ზემოთ აღწერილ ყველა მონაცემთა მოწამვლის შეტევას აქვს იგივე დროის უპირატესობა: კომპრომეტირება ხდება ზემოთ, დიდი ხნით ადრე, სანამ მოდელი გამოიმუშავებს ერთ გამოსავალს, რომელსაც მომხმარებელი ოდესმე დაინახავს. არ არსებობს დაუცველი ფუნქცია, რომელიც უნდა შეკეთდეს და არ არსებობს მავნე პროგრამა. commit განხილვისას დასაჭერად, რადგან მოდელს ჯერ არაფერი დაუწერია. მან მხოლოდ ისწავლა და რაც ისწავლა, უკვე არასწორია.
სწორედ ეს განასხვავებს ხელოვნური ინტელექტის მონაცემთა მოწამვლას იმ დაუცველობებისგან, რომელთა ძიებაზეც აპლიკაციის უსაფრთხოების ჯგუფები არიან გაწვრთნილები. კოდის დიფერენციაციაში ჩაკეტილი მოდელი იდენტურია სუფთა მოდელისა. ის გადის pull request მიმოხილვა. ის კომპილაციას, განთავსებას და სწორად პასუხობს მოთხოვნების უმეტესობას მანამ, სანამ თავდამსხმელის მიერ დამონტაჟებული კონკრეტული პირობა საბოლოოდ არ გამოჩნდება წარმოებაში. ამ დროისთვის კითხვა აღარ არის „რომელმა კოდმა შემოიღო ეს“, არამედ არის „რა მონაცემებმა გააკეთა და რამდენად შორს მიდის ისინი“.
რატომ ხდება ხელოვნური ინტელექტის მონაცემების მოწამვლა მზარდი პრიორიტეტი? #
ხელოვნური ინტელექტის მონაცემების მოწამვლა აღარ წარმოადგენს თეორიულ პრობლემას. ის ოფიციალურად აღიარებულია, როგორც LLM04: მონაცემებისა და მოდელის მოწამვლა OWASP-ის LLM აპლიკაციების ტოპ 10-ში, სწრაფი ინექციისა და მიწოდების ჯაჭვის რისკის გვერდით, გენერაციული ხელოვნური ინტელექტის ეპოქის ერთ-ერთ განმსაზღვრელ საფრთხედ. სამი ტენდენცია მას ყველა უსაფრთხოების გუნდის რადარზე მაღლა აყენებს:
- დაზიანება უხილავია გააქტიურებამდე. მოწამლულ მოდელს შეუძლია გაიაროს ყველა ფუნქციური ტესტი და თვეების განმავლობაში იდეალურად იმოქმედოს, სანამ თავდამსხმელის მიერ დამონტაჟებული კონკრეტული ტრიგერული პირობა საბოლოოდ არ გამოჩნდება წარმოებაში.
- აღდგენის გზით გაფართოებული თაობა ყველგანაა. ნებისმიერ სისტემას, რომელიც მოდელს საშუალებას აძლევს, დოკუმენტებიდან, ვიკიებიდან, ბილეთებიდან ან ვექტორული მონაცემთა ბაზიდან ამოიღოს პირდაპირი კონტექსტი, აქვს ახალი, აუდიტირებული შეყვანის ზედაპირი და სწორედ ეს ზედაპირია ის, რასაც მონაცემთა მოწამვლის შეტევები ისახავს მიზნად.
- მონაცემთა ნაკრებები ახლა მიწოდების ჯაჭვის აქტივებია. გუნდები რუტინულად იღებენ წინასწარ მომზადებულ მოდელებს, ჩაშენებულ ფაილებს და საჯარო მონაცემთა ნაკრებებს გარე წყაროებიდან ისევე, როგორც იღებენ ღია კოდის პაკეტებს და ისევე, როგორც კომპრომეტირებული პაკეტი, კომპრომეტირებულ მონაცემთა ნაკრებსაც შეუძლია შეტევა ჩუმად გადაიტანოს ყველა გუნდში, რომელიც მას იყენებს.
მონაცემთა მოწამვლის აღმოჩენა და მისგან დაცვა #
რადგან მონაცემთა „მოწამვლა“ თავად მოდელის ზემოთ ხდება, დაცვაც ზემოთ უნდა დაიწყოს:
- დააკვირდით ანომალიურ მონაცემთა წყაროებს და არა მხოლოდ ანომალიურ კოდს. ქცევითი და ანომალიების აღმოჩენა უნდა გავრცელდეს იქამდე, სადაც მონაცემები შედის. pipeline, არ ჩერდება საცავის საზღვარზე.
- იცოდეთ ყველა მონაცემთა ნაკრები pipeline. თქვენ არ შეგიძლიათ აუდიტი ჩაატაროთ მოწამვლის რისკის შესახებ მონაცემთა ნაკრებში, რომლის არსებობის შესახებაც არ იცით. ტრენინგის, შეფასებისა და მონაცემთა ნაკრებების უწყვეტი აღმოჩენა თავდაცვის პირველი ხაზია.
- გამოკვეთეთ ხაზი მონაცემთა ნაკრებიდან მოდელამდე და შემდეგ შედეგებამდე. მონაცემთა ნაკრების მოდელში და მოდელიდან აგენტად, საბოლოო წერტილად ან კოდირების ინსტრუმენტად გადაქცევის გზის განსაზღვრა არის ის, რაც „ცუდი შედეგი მივიღეთ“-ს გარდაქმნის „ზუსტად ვიცით, რომელმა მონაცემთა ნაკრებმა შემოიტანა ის“.
- შეამოწმეთ მოძიების წყაროები და არა მხოლოდ სასწავლო ნაკრებები. RAG სისტემებში ვექტორულ საცავსა და ცოდნის ბაზას იგივე მთლიანობის შემოწმება სჭირდებათ, რაც ტრენინგის მონაცემებს, რადგან კონტექსტის დარღვევა ხდება შეკითხვის დროს და არა ტრენინგის დროს.
როგორ ეხმარება Xygeni მონაცემთა მოწამვლის ხარვეზის შევსებას? #
მონაცემთა მოწამვლისგან დაცვა იწყება ხილვადობით, რაც ორგანიზაციების უმეტესობას უბრალოდ არ აქვს. ქსიგენიs AI Inventory განუწყვეტლივ აღმოაჩენს ყველა AI აქტივს მთელს მსოფლიოში. SDLC, მათ შორის მის უკან მდგომი მონაცემთა ნაკრებები: სასწავლო მონაცემები, შეფასების ნაკრებები და RAG ან მოძიების წყაროები, და ასახავს მათ რეალურ ურთიერთობის გრაფიკში, რომელიც გადის მონაცემთა ნაკრებიდან მოდელამდე და საბოლოო წერტილამდე. აგენტიდან MCP სერვერზე კოდირების ხელსაწყოს. სწორედ ეს გრაფიკი გარდაქმნის საეჭვო მოდელის შედეგს თვალყურის დევნებად კითხვად: რომელმა მონაცემთა ნაკრებმა მიაწოდა ეს ინფორმაცია და საიდან მოდის ის.
ამ ინვენტარის გარდა, Xygeni-ს AI უსაფრთხოება ვექტორული და ჩანერგვის სისუსტეების აღმოჩენა, მათ შორის მოწამლული კონტექსტის აღმოჩენა მოძიებასა და RAG-ში. pipelines, გასწორებული OWASP-ის ტოპ 10 LLM აპლიკაციებისთვის. მოდელის ტრენინგისა და მოძიების წყაროების სისუფთავის ნდობის ნაცვლად, Xygeni მათ შეტევის ზედაპირის ნაწილად ეპყრობა, ისევე როგორც ის უკვე ეპყრობა კოდს, დამოკიდებულებებს და pipelineთუ ამჟამად ვერ პასუხობთ კითხვას „რომელმა მონაცემებმა მოამზადა ეს მოდელი და შეგვიძლია თუ არა ამის დამტკიცება“, ეს ზუსტად ის ხარვეზია, რომლის შევსებაც ღირს, სანამ ხელოვნური ინტელექტით მონაცემთა მოწამვლის ინციდენტი კითხვას წამოჭრის.
კითხვა-პასუხი #
ხელოვნურ ინტელექტში მონაცემთა მოწამვლა გულისხმობს მოდელის მიერ შესწავლილი მონაცემების (სასწავლო მონაცემები, მონაცემების დახვეწა ან მოძიების კონტექსტი) დაზიანების ან მანიპულირების აქტს, რათა მოდელი წარმოქმნიდეს თავდამსხმელის გავლენის ქვეშ მყოფ ან არასანდო გამომავალ მონაცემებს.
არა. მოთხოვნის ინექცია მანიპულირებს მოდელის ქცევას მოთხოვნის დროს შემუშავებული შეყვანის მონაცემების მეშვეობით. მონაცემთა „მოწამვლა“ აზიანებს იმ ძირითად მონაცემებს, რომლებზეც მოდელი იყო მომზადებული ან საიდანაც იღებს მონაცემებს, ამიტომ დაზიანება აღირიცხება ნებისმიერი მოთხოვნის გაგზავნამდე.
დიახ. აღდგენის გაფართოებული გენერაციის სისტემებში, თავდამსხმელს შეუძლია დააზიანოს დოკუმენტები ან ვექტორული მონაცემთა ბაზა, საიდანაც მოდელი იღებს მონაცემებს გაშვების დროს, რითაც მიაღწევს მსგავს ეფექტს ორიგინალური სასწავლო ნაკრების შეხების გარეშე.
რადგან ის მონაცემებშია და არა კოდში. ტრადიციული AppSec ინსტრუმენტები სკანირებენ წყაროს კოდს და დამოკიდებულების მანიფესტებს და არა მრავალგიგაბაიტიან სასწავლო ნაკრებებს ან ვექტორულ საცავებს, ამიტომ მონაცემთა მოწამვლის შეტევები ხშირად შეუმჩნეველი რჩება კოდზე ორიენტირებული საფრთხის მოდელისთვის შექმნილი ინსტრუმენტებისთვის.
ნებისმიერი ორგანიზაცია, რომელიც ახდენს მოდელების დახვეწას შიდა ან მესამე მხარის მონაცემებზე, იყენებს მონაცემთა აღდგენის გაფართოებულ გენერაციას ან იღებს წინასწარ მომზადებულ მოდელებსა და მონაცემთა ნაკრებებს საჯარო წყაროებიდან, დაუცველია, რადგან თითოეული მათგანი მონაცემთა „მოწამვლის“ შესვლის წერტილია.
