By · Last updated 2026-06-05

Powrót do blogaBezpieczeństwo AI

Asystenci AI do kodowania ujawniają produkcyjne dane osobowe

Fixtures testów jednostkowych z prawdziwymi danymi klientów. Pliki logów z danymi produkcyjnymi do debugowania. GitHub ujawnił wyciek 39 milionów sekretów w 2024 roku.

June 5, 20268 min czytania
AI coding assistantproduction PIIdeveloper securityMCP ServerGitHub Copilot

Dlaczego narzędzia AI do kodowania ujawniają prawdziwe dane klientów

Większość wycieków danych osobowych z zespołów deweloperskich to nie naruszenia. To skutki uboczne codziennej pracy.

Dane produkcyjne trafiają do środowisk testowych. Stamtąd docierają do narzędzi AI do kodowania — i do dostawców je obsługujących.

Badania GitHub z 2025 r. to potwierdziły. Deweloperzy ujawnili 39 milionów sekretów w publicznych repozytoriach w 2024 r. Pojawiły się zarówno klucze API, jak i dane osobowe. Większość pochodziła z fixtures testów i logów debugowania. Zapoznaj się z przeglądem zabezpieczeń, by dowiedzieć się, jak zespoły radzą sobie z tym ryzykiem.

Zaktualizowano w 2026 r.: Adopcja narzędzi AI do kodowania gwałtownie wzrosła. Podobnie jak powierzchnia narażenia.

Jak prawdziwe dane trafiają do środowisk deweloperskich

Drogi są powszechne i przewidywalne.

Pliki fixtures testów: Testy jednostkowe potrzebują realistycznych danych wejściowych. Najszybszą ścieżką jest skopiowanie wierszy z produkcji. Deweloper planuje zastąpić je „później”. Później rzadko nadchodzi. Prawdziwe adresy e-mail i identyfikatory kont zostają przez dziesiątki commitów.

Logi debugowania: Błąd nie może być odtworzony lokalnie. Deweloper pobiera log z systemu produkcyjnego. Ten log zawiera adresy e-mail klientów, adresy IP i tokeny sesji. Plik ląduje w katalogu głównym projektu i zostaje zacommitowany.

Skrypty migracji: Zmiany schematu zawierają przykładowe wiersze dla środowisk testowych. Administrator bazy danych kopiuje prawdziwe wiersze jako próbki. Skrypt — z autentycznymi wpisami klientów — trafia do systemu kontroli wersji.

Dokumenty i pliki README: Przykłady użycia posługują się „realistycznymi” danymi wejściowymi. „Realistyczne” często oznacza skopiowane od prawdziwych użytkowników. W pliku README lądują prawdziwe identyfikatory zamówień i adresy kont.

Pliki konfiguracyjne: Konfiguracje deweloperskie zawierają klucze stagingowe docierające do prawdziwych danych klientów. Pliki te są zacommitowane wraz z zawartymi w nich sekretami.

Co faktycznie otrzymują asystenci AI

Gdy deweloperzy korzystają z narzędzi AI do kodowania, wiele kanałów wysyła prywatne informacje na zewnątrz.

Kontekst całego pliku: Narzędzie może otrzymywać całe pliki. Zawiera to fixtures testów z prawdziwymi wpisami, wycinki logów lub pliki konfiguracyjne z aktywnymi kluczami.

Wklejanie ze schowka: Deweloperzy wklejają kod do czatu w celu weryfikacji. Otaczający kontekst często zawiera dane klientów.

Indeksowanie przez IDE: Cursor i GitHub Copilot indeksują lokalne pliki w celu zapewnienia kontekstu. Każdy plik projektu zawierający prawdziwe wiersze staje się częścią tego indeksu.

Komunikaty błędów: Deweloperzy wklejają ślady stosu do czatu AI podczas debugowania. Ślady stosu mogą zawierać identyfikatory klientów.

Każdy z tych kanałów wysyła prywatne informacje do API dostawcy AI. Stwarza to ryzyko naruszenia RODO i HIPAA. Zapoznaj się z naszym przeglądem zgodności, by dowiedzieć się, jak te przepisy mają zastosowanie do narzędzi deweloperskich.

RODO i HIPAA: kluczowe fakty dla zespołów deweloperskich

Te przepisy mają zastosowanie do korzystania z narzędzi AI do kodowania.

Art. 28 RODO — podmiot przetwarzający: Wysyłanie danych osobowych do dostawcy AI sprawia, że staje się on podmiotem przetwarzającym. Wymagana jest Umowa o przetwarzanie danych (DPA). Większość dostawców oferuje umowy DPA. Deweloperzy korzystający z narzędzi AI poza oficjalnym procesem zakupowym mogą nie posiadać podpisanej umowy DPA.

Art. 6 RODO — Podstawa prawna: Testowanie deweloperskie wymaga podstawy prawnej przetwarzania danych osobowych. Uzasadniony interes może mieć zastosowanie — ale wymaga testu równoważenia. Używanie prawdziwych danych klientów, gdy wystarczyłyby sztuczne, nie przejdzie tego testu.

HIPAA — BAA: Deweloperzy w ochronie zdrowia muszą posiadać Umowę o współpracę z podmiotem stowarzyszonym (Business Associate Agreement) z dostawcą AI. OpenAI, Anthropic i GitHub Copilot oferują umowy BAA dla użytkowników korporacyjnych. Indywidualne korzystanie poza planem korporacyjnym może nie być objęte umową.

Minimalizacja: Prawdziwe dane klientów w fixtures testów naruszają zasadę minimalizacji. Sztuczne wiersze służą temu samemu celowi bez kosztów dla prywatności.

Nasz FAQ odpowiada na typowe pytania dotyczące tych przepisów.

Praktyczne kroki dla zespołów deweloperskich

Zacznij od szybkiego audytu. Większość zespołów odkrywa problemy w ciągu pierwszej godziny.

Natychmiastowe działania:

  1. Przeprowadź audyt fixtures testów — wyszukaj wzorce adresów e-mail, numerów telefonów i identyfikatorów.
  2. Sprawdź pliki logów produkcyjnych w katalogach projektu pod kątem identyfikatorów klientów.
  3. Zaktualizuj .gitignore, by wykluczyć pliki logów i pliki danych specyficzne dla środowiska.
  4. Zastąp prawdziwe wpisy syntetycznymi generatorami, takimi jak Faker lub Mimesis.

Sam audyt często ujawnia lata skumulowanego narażenia. Jeden zespół znalazł prawdziwe adresy e-mail klientów w 14 plikach testowych stworzonych przez sześciu różnych deweloperów przez trzy lata. Żaden z deweloperów nie zamierzał ich tam zostawiać.

Przed każdą sesją z asystentem AI:

  • Uruchom wykrywanie danych osobowych na plikach przed ich udostępnieniem.
  • Dla narzędzi IDE, takich jak Cursor: wyklucz katalogi testowe z indeksowania.
  • Dla narzędzi opartych na czacie: przejrzyj wklejany kod pod kątem danych osobowych.

Dodatek serwera MCP:

Serwer MCP anonym.legal integruje wykrywanie danych osobowych z Claude Desktop i Cursor. Kroki są proste:

  1. Otwórz plik w edytorze.
  2. Wywołaj serwer MCP: wykryj dane osobowe w pliku.
  3. Przejrzyj oznaczone elementy.
  4. Dokonaj redakcji w miejscu.
  5. Udostępnij czysty plik narzędziu AI.

Dodaje to poniżej 30 sekund na plik. Eliminuje ręczne sprawdzanie „pod kątem danych osobowych”. Sprawdź nasze plany cenowe, by dodać dostęp do serwera MCP dla swojego zespołu.

Syntetyczne dane wejściowe — trwałe rozwiązanie:

Nigdy nie używaj prawdziwych wierszy w fixtures testów. Biblioteki syntetyczne generują realistyczne dane wejściowe bez narażania prawdziwych użytkowników. Faker (Python/Node.js), Factory Boy (Python) i Bogus (.NET) generują prawidłowe dane wejściowe dla dowolnego schematu. Każda biblioteka pozwala ustawić locale i generować realistyczne imiona i nazwiska, adresy e-mail i numery telefonów — wszystkie fikcyjne.

Studium przypadku: zespół SaaS odkrywa prawdziwe dane w Cursor

Odkrycia dokonano podczas audytu RODO. Zespół SaaS używający Cursor znalazł prawdziwe adresy e-mail klientów w fixtures testów jednostkowych. Deweloper skopiował 50 wierszy z danymi klientów z produkcji 18 miesięcy wcześniej. Te wiersze zostały zacommitowane do systemu kontroli wersji i zindeksowane przez Cursor.

Przez 18 miesięcy Cursor uzyskiwał dostęp do plików fixture około 11 000 razy w ramach 8 deweloperskich sesji IDE. Każda sesja mogła wysyłać zawartość fixture do API Cursor.

Co zrobił zespół:

  1. Zastąpił wszystkie 50 prawdziwych wierszy fikcyjnymi danymi wejściowymi wygenerowanymi przez Faker.
  2. Zaktualizował .gitignore, by wykluczyć pliki logów.
  3. Dodał serwer MCP do wykrywania danych osobowych na żądanie przed udostępnianiem kodu.
  4. Ustalił normę: żadnych danych produkcyjnych w żadnym zacommitowanym pliku.

Serwer MCP był kluczową zmianą. Deweloperzy teraz uruchamiają wykrywanie przed sesjami Cursor na kodzie dotyczącym klientów. Zero dodatkowego wysiłku poza wywołaniem MCP.

Przeczytaj więcej w sekcji case studies.

Źródła

Badania bezpieczeństwa GitHub 2024. ZWERYFIKOWANE ZEWNĘTRZNIE.

Art. 28 RODO. ZWERYFIKOWANE ZEWNĘTRZNIE.

Wytyczne HIPAA dotyczące BAA. ZWERYFIKOWANE ZEWNĘTRZNIE.

Gotowy, aby chronić swoje dane?

Rozpocznij anonimizację PII z 285+ typami podmiotów w 48 językach.

About this page

We update this page when our platform or the law changes.

Read our founder note for how we work.

Each change shows up in the timestamp at the top.

Related reading

We follow these rules

  • GDPR (EU 2016/679).
  • ISO/IEC 27001:2022.
  • NIS2 (EU 2022/2555).
  • HIPAA safe harbor under 45 CFR § 164.514(b)(2).

Our promise

We do not sell your data.

We do not train models on your text.

We store your files in Germany.

You can delete your account at any time.

You own your work.

Where we run

Our servers live in Falkenstein, Germany.

We use Hetzner. They hold ISO 27001 certification.

All data stays in the EU.

Backups run every day.

Need help?

Email support@anonym.legal.

We reply within one business day.

How we test

We run a full check suite on every release.

Each surface gets its own sweep script and report.

Human reviewers spot-check the output each week.

We track recall and precision on a labelled set.

Bad runs block the deploy.

What we never do

  • We never sell your information to third parties.
  • We never train models on what you upload.
  • We never keep your work after you delete it.
  • We never share keys with any outside firm.
  • We never run ads inside the product.

Plans in plain words

We sell credits, not seats.

One credit covers one short job.

Long jobs use a few credits each.

You can top up at any time.

Unused credits roll over each month.

Read the plans page for current rates.

Who built this

A small team of engineers and lawyers built this.

We ship from Europe and work in the open.

Our founder note spells out why we started.

Where to start

How the parts fit

A browser add-on cleans text inside Chrome.

A Word plug-in handles drafts in Office.

A small desktop tool works on whole folders.

An agent protocol link feeds large models safely.

All four share one core engine and one rule set.

Words from our team

We started this work after a lunch about cookies.

One friend kept getting odd ads on her phone.

We asked why a court file leaked through a draft.

We sketched the first build on a napkin that week.

By month three we had a tiny demo for a friend.

She used it on her first case the next day.

Common questions we hear

Can the tool read scanned PDFs? Yes, with OCR.

Does it work on long files? Yes, in small chunks.

Can I roll my own rule set? Yes, save it as a preset.

Does it run offline? The desktop build runs offline.

Do you keep my files? No, the cloud build wipes after each run.

Will it learn from my work? No, we never train on inputs.

A short tour of the workflow

Upload a file or paste a snippet of prose.

Pick the entities you want gone from the draft.

Choose a method: replace, mask, hash, encrypt, or redact.

Press run and watch the side panel show each hit.

Skim the result and tweak any rule that misfired.

Save the cleaned file or send it to a teammate.