Vibe coding, czyli paradygmat tworzenia oprogramowania poprzez naturalny język i agentów AI bez głębokiego zrozumienia kodu, drastycznie zwiększa szybkość dostarczania funkcji, ale generuje krytyczne luki bezpieczeństwa. Audyty wykazują, że choć większość rozwiązań wygenerowanych przez agentów takich jak SWE-agent czy Claude Code działa pod kątem funkcjonalnym, to ponad 80% z nich zawiera podatności umożliwiające m.in. przejęcie baz danych lub sesji użytkowników.
Raport z frontu: 69 podatności w 15 aplikacjach
Audyt bezpieczeństwa 15 aplikacji zbudowanych głównie metodą vibe codingu ujawnił 69 luk bezpieczeństwa, z czego sześć sklasyfikowano jako krytyczne. Analiza wykazała, że nie są to nowatorskie wektory ataków, lecz „nudne”, podstawowe błędy z listy OWASP Top 10, takie jak SQL injection, brak walidacji danych wejściowych, zahardkodowane sekrety czy niebezpieczne bezpośrednie odwołania do obiektów.
Narzędzia do vibe codingu (np. Cursor, Replit, Lovable) optymalizują proces pod kątem „działania tu i teraz”, często ignorując mechanizmy kontrolne, takie jak rate limiting czy ochrona CSRF. Problem stał się na tyle poważny, że Apple zaczęło blokować aktualizacje aplikacji zbudowanych na platformach vibe-codingowych (powołując się na wytyczną 2.5.2), ponieważ ich twórcy często nie są w stanie zdiagnozować ani naprawić błędów we własnym, wygenerowanym przez AI kodzie.
Degradacja architektury i upadek refaktoryzacji
Dane metryczne wskazują na strukturalną zapaść jakości kodu w projektach zdominowanych przez AI. Zjawisko to charakteryzuje się kilkoma alarmującymi trendami: Wzrost code churn do 41%: W zdrowych bazach kodu wskaźnik ten wynosi 15-20%. Przy 41% kod jest nieustannie nadpisywany i poprawiany metodą prób i błędów, co świadczy o braku kontroli nad architekturą. 4-krotny wzrost duplikacji kodu: Agenty AI rzadko sprawdzają, czy dana funkcja już istnieje, tworząc setki niemal identycznych bloków kodu, co utrudnia późniejsze utrzymanie. * Zapaść refaktoryzacji: Udział refaktoryzacji w zmianach kodu spadł z 25% w 2021 roku do poniżej 10% obecnie. Kod jest „akumulowany”, a nie projektowany, co prowadzi do narastającego długu technicznego.
Benchmark SusVibes potwierdza tę lukę: nawet przy użyciu zaawansowanych modeli, takich jak Claude 4 Sonnet, o ile 61% rozwiązań jest poprawnych funkcjonalnie, to tylko 10,5% przechodzi testy bezpieczeństwa.
Wnioski praktyczne dla organizacji
Aby uniknąć przekształcenia oprogramowania w „bezpieczeństwowe wysypisko”, liderzy IT powinni wdrożyć rygorystyczne mechanizmy kontrolne, takie jak szkielet SHIELD: 1. Human in the Loop: Wprowadzenie obowiązkowego, bezpiecznego przeglądu kodu (secure code review) przez doświadczonych deweloperów dla każdej zmiany wpływającej na funkcje krytyczne. 2. Automatyczne skanowanie SAST/DAST: Narzędzia vibe-codingowe muszą być zintegrowane z automatycznymi skanerami podatności przed każdym wdrożeniem. 3. Separacja obowiązków: Agenty AI powinny mieć dostęp wyłącznie do środowisk programistycznych i testowych, bez uprawnień do wprowadzania zmian bezpośrednio na produkcji. 4. Edukacja w zakresie awarii AI: Zamiast samej nauki „prompt engineeringu”, zespoły muszą być szkolone z typowych trybów awarii modeli AI i umiejętności audytowania ich wyników.
Vibe coding to potężny mnożnik produktywności, ale bez architektury i nadzoru staje się jedynie sposobem na szybsze tworzenie systemów, które są nieutrzymywalne i niebezpieczne

Dodaj komentarz