Je vibe coding varen? Resnična tveganja in kaj preveriti pred objavo
Vibe coding je varen za osebna orodja in prototipe, lahko pa je varen tudi za prave aplikacije s pravimi uporabniki, a le, če dodate preverjanja, ki jih pristop »opiši in glej, ali deluje« preskoči. Nevarne težave z zaslona ne vidite: uporabniki, ki lahko odprejo podatke drug drugega, skrivni ključi, ki ležijo v brskalniku, in javni obrazci brez omejitev. Ta vodnik razlaga tveganja, ki resnično povzročajo težave, kako ravnati s skrivnostmi, koliko pregleda potrebujete in 30-minutno kontrolo, ki jo opravite pred objavo.
Za celoten tehnični seznam glejte naš varnostni kontrolni seznam za aplikacije, zgrajene z AI. Ta stran je krajša, praktična različica za ljudi, ki ne berejo kode.
Zakaj ima vibe coding lastna tveganja
Ko delate z vibe codingom, aplikacijo presojate tako, da jo uporabljate. To ujame pokvarjene gumbe in grde postavitve. Ne ujame pa težav, ki se pokažejo le, ko aplikacijo uporabi nekdo drugače kot vi: tujec, bot ali radoveden uporabnik, ki ureja spletni naslov.
Modeli AI pišejo verjetno kodo, večina je v redu. Vendar optimizirajo to, kar ste zahtevali – »naj nadzorna plošča prikaže moje projekte« – in morda ne dodajo zaščite, ki je niste zahtevali – »in nobenih tujih«. Rešitev ni nehati z vibe codingom. Rešitev je zahtevati zaščite izrecno in jih nato preizkusiti.
Kako tvegana je vaša aplikacija? Hitra lestvica
| Vaša aplikacija | Tveganje | Kaj potrebujete |
|---|---|---|
| Osebno orodje, ki ga uporabljate samo vi, brez občutljivih podatkov | Nizko | Ključe držite stran od kode. To je v bistvu vse. |
| Javna spletna stran ali pristajalna stran z obrazcem | Nizko do srednje | Omejitve obrazca, zaščita pred botom, brez skrivnosti na strani |
| Aplikacija, kjer se ljudje prijavijo in shranjujejo svoje podatke | Srednje | Vse s te strani |
| Plačila, zdravstveni, finančni ali podatki o otrocih ali osebni dokumenti | Visoko | Vse s te strani in pregled razvijalca |
Bodite iskreni, v katerem razredu ste. Številne aplikacije se začnejo v prvem razredu in nezavedno zdrsnejo v tretjega, ne da bi kdo to odločil.
Tveganja, ki resnično povzročajo težave
1. Uporabniki vidijo podatke drug drugega
To je najpogostejša resna težava pri aplikacijah, zgrajenih z AI. Stran uporabniku prikaže samo njegove zapise, zato je videti pravilno. Vendar bo strežnik vrnil katerikoli zapis, če nekdo spremeni ID v naslovni vrstici ali v zahtevku. Ker vedno preizkušate kot sami sebi, tega nikoli ne vidite.
Kako preveriti: ustvarite dva računa. Prijavite se kot uporabnik A, odprite enega od zapisov uporabnika A in si zapomnite naslov. Prijavite se kot uporabnik B v zasebnem oknu in prilepite ta naslov. Videti bi morali »ni najdeno«, nikoli podatkov uporabnika A.
Poziv:
Preveri vsako končno točko na strežniku, ki bere, spreminja ali briše uporabniške podatke. Vsaka mora potrditi, da ima prijavljeni uporabnik dovoljenje za dostop do tega konkretnega zapisa. Naštej končne točke, povej, kako vsaka preverja, in popravi tiste, ki ne preverjajo.
2. Skrivnosti na napačnem mestu
Skrivnost je vse, kar omogoča dostop: API ključ za AI ali e-pošto, geslo podatkovne baze, tajni ključ ponudnika plačil. Če je v kodi, ki se izvaja v brskalniku, lahko kdorkoli odpre razvijalska orodja in jo skopira. Če je javno objavljena v javnem repozitoriju, jo boti najdejo v nekaj urah.
Kako preveriti: vprašajte AI.
Naštej vsak API ključ, žeton in geslo, ki ga ta aplikacija uporablja. Za vsakega povej, kje je shranjen in ali se kdaj pošlje v brskalnik. Vse, ki so v kodi ali v zaledju brskalnika, premakni v skrivnosti na strežniku.
3. Javni obrazci in končne točke brez omejitev
Kontaktni obrazci, prijave in funkcije AI odkrijejo boti. Brez omejitev dobite nezaželeno pošto, lažne račune ali velik račun za API AI, ker ga kličejo tisočkrat.
Poziv:
Dodaj omejitve hitrosti za prijavo, vpis in kontaktni obrazec ter vsako končno točko, ki kliče storitev AI. Na javne obrazce dodaj skrito polje (honeypot). Povej mi, katere omejitve si izbral.
4. Zaupanje brskalniku
Vse, o čemer odloča brskalnik, lahko uporabnik spremeni: cene, popuste, odgovore v kvizu, zastavice »je admin«. Pravila, ki so pomembna, morajo biti uveljavljena na strežniku.
Poziv:
Poišči vsa mesta, kjer brskalnik odloča o nečem, o čemer bi moral odločati strežnik: cene, zneske, dovoljenja, vloge, rezultate. Te preverbe premakni na strežnik.
5. Ni poti nazaj
Slaba sprememba ali slab akter lahko izbriše podatke. Če ni varnostne kopije in ni možnosti povrnitve, se majhna napaka spremeni v trajno. Poskrbite, da ima vaše orodje kontrolne točke za kodo in varnostne kopije za podatkovno bazo. Glejte kako narediti varnostno kopijo podatkovne baze vaše aplikacije.
Pravilno ravnanje s skrivnostmi
Skrivnosti povzročajo več preprečljive škode kot karkoli drugega, zato so tukaj pravila na enem mestu:
- Pravega ključa nikoli ne prilepite v klepet. Klepeti se shranjujejo, delijo in posnamejo na zaslonsko sliko. Ključe dajte v skrivnosti ali okoljske spremenljivke vašega orodja. (Kaj so okoljske spremenljivke in skrivnosti.)
- Plačljive storitve kličite iz strežnika. Brskalnik pokliče vaš strežnik; vaš strežnik pokliče storitev AI ali plačil s ključem.
- Uporabite ločene ključe za testiranje in za pravo uporabo, da uhajajoči testni ključ ne more dotakniti pravega denarja.
- Nastavite omejitve porabe v nadzornih ploščah ponudnikov AI in e-pošte.
- Ključ takoj zamenjajte, če mislite, da je uhajal. Ustvarite novega, posodobite skrivnost, nato izbrišite starega.
Na Mythexu so skrivnosti v nastavitvah projekta zunaj kode in agent jih lahko uporablja, ne da bi se vrednosti pojavile v klepetu. Naš vodnik o varovanju API ključev pokriva več ponudnikov.
Koliko pregleda kode potrebujete?
Pri vibe codingu ne berete vsake vrstice. Tudi ni treba. Vendar bi nekdo moral pogledati nekatere vrstice.
- Osebna orodja: nič poleg tu naštetih kontrol.
- Aplikacije z uporabniškimi računi: preglejte, kako delujeta prijava in dostop do podatkov. To lahko naredite tako, da AI-ja prosite, naj to razloži z navadnimi besedami, in preverite, ali se razlaga ujema s tem, kar pričakujete.
- Aplikacije s plačili ali občutljivimi podatki: dajte razvijalcu, naj pogleda avtentikacijo, dovoljenja, obravnavo plačil in vse, kar shranjuje osebne podatke. Gre za nekaj ur njegovega dela, ne za prepisovanje.
Koristen poziv tudi brez razvijalca:
Z navadnimi besedami razloži, kako ta aplikacija ugotovi, kdo je uporabnik, in kaj sme videti. Pokaži na datoteke. Nato naštej, kaj bi želel, da pogleda varnostni pregledovalec.
Naš vodnik o pregledu kode, ustvarjene z AI pojasni, kaj pregledovalci iščejo, in ga lahko izročite tistemu, ki pregled opravi. Če vaše orodje omogoča izvoz kode ali sinhronizacijo z GitHubom, je tak pregled enostavno organizirati; na Mythexu sta oba del paketa Pro.
30-minutna kontrola pred objavo
Zaženite jo, preden delite povezavo z nekom zunaj svojega kroga.
Dostop (10 minut)
- Dva računa, dva brskalnika: ali lahko B odpre zapise A prek naslova? Ne bi smel.
- Odjavite se in obiščite naslov vsake strani neposredno. Zasebne strani bi vas morale poslati na prijavo.
- Kot običajen uporabnik odprite skrbniške naslove. Zavrnjeni bi morali biti.
Skrivnosti (5 minut)
- Z zgornjim pozivom vprašajte AI, kje je vsak ključ.
- Odprite aplikacijo, poglejte vir strani in poiščite »key«, »secret« in »token«.
Obrazci in zloraba (5 minut)
- Pošljite vsak obrazec prazen, z zelo dolgim besedilom in dvakrat zapored.
- Preverite, ali obstajajo omejitve hitrosti za prijavo, vpis in vsako funkcijo AI.
Podatki in obnova (5 minut)
- Vedite, kje so podatki in kako jih obnoviti.
- Preverite, ali lahko kodo povrnete na prejšnjo delujočo različico.
Pravno in osnove (5 minut)
- Če zbirate osebne podatke, dodajte politiko zasebnosti in povejte, kaj zbirate. Glejte kako napisati pogoje uporabe in politiko zasebnosti.
- Preverite, ali objavljena aplikacija uporablja HTTPS. Večina gradnikov, vključno z Mythexom, to uredi za vas.
Če vse opravite, ste dobro pripravljeni na zgodnji zagon. Korake 1–5 ponovite po vsaki veliki spremembi prijave, vlog ali podatkov.
Kaj platforme za vibe coding zaščitijo in česa ne
Dobra platforma pokrije veliko infrastrukture: HTTPS, izolirane delovne prostore, podatkovno bazo za vsak projekt, shranjevanje skrivnosti, varnostne kopije in povrnitev. Mythex da vsakemu projektu svoj zasebni delovni prostor in podatkovno bazo, skrivnosti hrani zunaj kode in po vsaki uspešni spremembi shrani kontrolno točko, da jo lahko razveljavite.
Kar nobena platforma ne more, je poznati pravila vaše aplikacije. Samo vi veste, da stranke ne smejo videti računov drug drugega ali da bi se kupon moral unovčiti samo enkrat. Ta pravila morajo biti v vaših pozivih in potrjena s testi.
Kratek odgovor
Vibe coding je toliko varen, kolikor so varni preverjanja, ki jih dodate. Za osebno orodje držite ključe stran od kode in uživajte. Za vse, kar vsebuje podatke drugih ljudi, pred vsakim zagonom opravite zgornjo 30-minutno kontrolo in za plačila ter občutljive podatke poiščite oči razvijalca. Da vidite ta tveganja v resničnih projektih, preberite naše primere vibe codinga; če želite graditi s temi preverjanji od začetka, sledite kako zgraditi aplikacijo z vibe codingom.
Vprašanja
Je vibe coding varen?
Varen je za osebna orodja in prototipe brez občutljivih podatkov. Za aplikacije, kjer se drugi prijavljajo, shranjujejo podatke ali plačujejo, je varen le, če dodate preverjanja, ki jih vibe coding preskoči: pravila dostopa na strežniku, skrivnosti zunaj kode, omejitve za javne obrazce in pregled vsega, kar ravna z denarjem ali osebnimi podatki.
Kakšno je največje varnostno tveganje pri aplikacijah, sestavljenih z vibe codingom?
Pomanjkljiv nadzor dostopa: en prijavljen uporabnik lahko bere ali spreminja podatke drugega, običajno tako, da spremeni ID v zahtevku. Pri testiranju kot sami sebi se to nikoli ne pokaže, zato je tako pogosto. Preverite namerno z dvema računoma.
Ali lahko kodo, ki jo ustvari AI, uide moj API ključ?
Da, če ključ konča v kodi, ki se izvaja v brskalniku obiskovalca, ali v javnem repozitoriju. Ključe hranite v skrivnostih ali okoljskih spremenljivkah vašega orodja, zunanje storitve kličite iz strežnika in od AI-ja zahtevajte seznam mest, kjer se vsak ključ uporablja.
Ali potrebujem razvijalca, da pregleda aplikacijo, sestavljeno z vibe codingom?
Ne za osebno orodje ali zgodnji prototip. Pridobite pregled razvijalca, preden prek aplikacije neposredno sprejemate plačila, hranite zdravstvene, finančne ali podatke o otrocih ali aplikacijo odprete za veliko uporabnikov. Izvoz ali dostop do GitHuba omogoča, da je tak pregled enostavno organizirati.
Sta moja koda in podatki varna na platformi za vibe coding?
To je odvisno od platforme, zato preberite njene strani o varnosti in zasebnosti. Na Mythexu ima vsak projekt svoj zasebni delovni prostor s svojo podatkovno bazo, skrivnosti so shranjene zunaj kode, kontrolne točke pa vam omogočajo, da slabo spremembo povrnete. Logika vaše aplikacije še vedno potrebuje preverjanja iz tega vodnika.