Bezbednost
Bezbednost u kompaniji Convira
Poslednje ažuriranje: 14 July 2026
Convira pokreće AI agenta koji dodiruje vaše datoteke, vaše alate i - ako tako odlučite - oblak. Zbog toga je bezbednost odluka o proizvodu, a ne naknadna misao. Ova stranica opisuje kako je sistem izgrađen i kako se njime upravlja. Za podatke koje prikupljamo i razloge zašto, pogledajte Politika privatnosti.
1. Naš pristup
Dva principa oblikuju sve što sledi. Prvo, podrazumevano prvo lokalno: na lokalnom runtime-u zaključivanje agenta, memorija i datoteke rade na vašem računaru, uz modele koje sami hostujete. Izuzetak je naplativi alat koji odlučite da pokrenete - istraživanje weba i X-a, generisanje slika i videa, radnje konektora - kome su potrebni upravljani ključevi provajdera koje mi držimo, pa taj jedan poziv alata izvršava Convira i vraća ga na vaš uređaj (i to samo dok ste na mreži). Drugo, oblak je opcion i sveden na minimum: kada koristite runtime u oblaku, vaše izvršavanje se obavlja i prosleđuje provajderu AI modela, ali se sadržaj izvršavanja ne čuva na našim serverima - zapis ostaje na vašem uređaju. Manje podataka kod nas znači manje toga što treba štititi i manje toga što ikada može biti izloženo.
Ne tvrdimo da smo neprobojni. Ono što možemo da kažemo jeste da je arhitektura napravljena tako da najosetljiviji posao nikada ne mora da napusti hardver koji vi kontrolišete.
2. Gde se nalaze vaši podaci
Convira ima tri runtimea i oni se razlikuju upravo po ovome:
| Runtime | Gde radi agent | Gde se čuva zapis o izvršavanju | Šta stiže do platforme Convira |
|---|---|---|---|
| Local | Vaš računar, uz modele koje sami hostujete | Vaš računar (šifrovana lokalna baza podataka) | Saobraćaj naloga i licenciranja; kada pokrenete naplativi alat za veb, medije ili konektore, ulaz tog alata i identifikatori rutiranja |
| Private Box | Računar koji sami hostujete i kontrolišete | Vaš uređaj (desktop čuva merodavnu kopiju) | Saobraćaj licenciranja; kada pokrenete naplativi alat za veb, medije ili konektore, ulaz tog alata i identifikatori rutiranja |
| Cloud | Convira infrastruktura | Vaš uređaj (desktop čuva merodavnu kopiju) | Samo operativni metapodaci (status, vremenske oznake, korišćeni model i alati, potrošnja tokena i kredita); uputstvo i kontekst se prosleđuju pružaocu AI modela radi generisanja odgovora i potom ih ne čuvamo |
Na putanji preko oblaka, sadržaj izvršavanja - tekst koji ste uneli, uključene datoteke, ulazi i izlazi alata i odgovori modela - ne upisuje se u naše baze podataka. Naš kod ga uklanja pre nego što se bilo šta trajno sačuva, a automatizovani testovi proveravaju tu invarijantu pri svakoj izgradnji. Detalji su u Politika privatnosti.
3. Kako je izvršavanje agenta izolovano
Pozive alata na desktopu uvek proverava Convirina politika dozvola. Nativna izolacija procesa je zaseban sloj dubinske odbrane: u automatskom režimu Convira je koristi kada je host podržava i beleži upozorenje ako mora da se vrati na alternativu; operatori umesto toga mogu podesiti nativnu izolaciju kao obaveznu. Dostupni primitivi su:
- Linux: a Bubblewrap namespace jail (mount, PID, optionally network), with Landlock filesystem rules so the tool can only read and write the directories it was granted, and a seccomp-bpf syscall filter - the code-execution profile blocks the network syscalls outright, so a tool can't open its own sockets.
- macOS: a Seatbelt (
sandbox-exec) profile with a deny-by-default posture. - Windows: Job Object koji ograničava stablo procesa i njegove resurse. Odluke o datotečnom sistemu i mreži na Windows dolaze iz Convira politike dozvola i mrežnih kontrola, a ne iz Job Object-a.
Izvršavanje koda u oblaku ima drugačiju granicu: pokreće se kao podproces unutar kontejnera API radnika. Kontejner odvaja uslugu od svog hosta, ali podprocesi u oblaku dele taj kontejner i ne dobijaju zasebnu izolaciju fajl sistema po procesu niti zaseban mrežni imenski prostor. Rezultati alata otkrivaju poreklo izolacije, pa agent i interfejs mogu da razlikuju izvršavanje u kontejneru, u nativnom procesu i rezervno izvršavanje.
Mrežni izlazni saobraćaj. Odlazni mrežni pristup iz izvršavanja posreduje HTTP CONNECT proksi koji primenjuje slojevitu listu dozvoljenih domena (izričita lista zabranjenih, zatim sve što ste odobrili tokom sesije, pa dozvoljeni domeni vašeg plana i radnog prostora, i na kraju mala ugrađena osnova sa adresama modela i paketa). Takođe blokira direktne konekcije ka IP adresama, privatne i link-local opsege, kao i adrese za metapodatke u oblaku. Na lokalnom runtime-u pristup vebu je isključen dok ga sami ne uključite, a proksi može da radi u režimu nadzora (beleži sve) ili u režimu primene (blokira i, opciono, pita vas). Kada uključite i pozovete naplativi alat za veb, medije ili konektore, taj jedan poziv se usmerava na Convira da se izvrši sa upravljanim ključevima; sve ostalo ostaje na vašem računaru, a van mreže naplativi alati jednostavno nisu dostupni.
Odobrenja. Mehanizam pravila klasifikuje šta svaka radnja alata upravo treba da uradi. Osetljive radnje se ne dešavaju same od sebe - izvršavanje se pauzira i pravi zahtev za odobrenje koji morate odobriti ili odbiti pre nego što se nastavi. Za neke radnje možete izabrati „dozvoli za ovu sesiju“ ili „uvek dozvoli“; druge uvek traže potvrdu. Vaša pravila dozvola nastaju na vašem uređaju i primenjuju se na izvršavanje; na putanji kroz oblak šalju se zajedno sa izvršavanjem, a ne čuvaju se kod nas.
4. Šifrovanje
U prenosu. Sav saobraćaj između aplikacija i našeg API-ja odvija se preko TLS-a, a naš API se povezuje sa svojom bazom podataka preko TLS-a.
U mirovanju. Our database is encrypted at rest. On top of that, certain sensitive stored values - for example the credentials and configuration for integrations you connect, and workspace knowledge-base content - are encrypted at the application level with AES-256-GCM, using per-purpose keys derived from a master key with HKDF-SHA256, with support for rotating that key. Passwords are never stored or encrypted in a reversible form - they're hashed with Argon2id (a modern, memory-hard algorithm). Session tokens, email-verification codes, password-reset tokens, and similar secrets are stored only as hashes, are single-use where applicable, and expire. Third-party model-provider API keys are held in our server environment, not in the database.
Na vašem uređaju. The desktop app keeps the authoritative copy of your runs and sessions in a local SQLite database that is encrypted with SQLCipher. Sam ključ za šifrovanje zaštićen je bezbednim skladištem vašeg operativnog sistema (Keychain na macOS, DPAPI na Windows, libsecret na Linux); spakovana verzija odbija da se pokrene ako ta zaštita nije dostupna, umesto da pređe na nešifrovani zapis. Desktop aplikacija ne čuva API ključeve trećih strana ni OAuth tokene na disku.
Private Box. Private Box koji sami hostujete licencira se kratkotrajnim tokenima potpisanim Ed25519 ključem. Kada članove tima uparite sa nekom instancom, njen bearer akreditiv se zapečati ključem uređaja svakog člana (X25519 razmena ključeva + XChaCha20-Poly1305) - akreditiv u čitljivom obliku nikada ne prolazi kroz Convira servere.
Ako vaš bezbednosni model zahteva da sadržaj izvršavanja ostane na hardveru koji kontrolišete, koristite lokalni runtime ili Private Box i ne pokrećite upravljane alate na mreži.
5. Autentifikacija i pristup
Sessions are server-backed: the token in your browser cookie is matched against a stored hash, the cookie is HttpOnly, Secure in production, and SameSite=Lax, and sessions expire. Failed logins are rate-limited. The desktop app authenticates with short-lived, asymmetrically-signed (Ed25519) offline tokens that include anti-rollback protections so a backdated clock can't extend them. Cross-site request forgery is blocked with a double-submit token plus an origin check, compared in constant time.
Pristup podacima korisnika unutar Convira aplikacije ograničen je ulogama. Zaposleni imaju platformske uloge (odvojene od bilo kog korisničkog naloga) koje određuju šta mogu da vide i rade; unutar radnog prostora članovi imaju uloge (vlasnik, administrator, operater, posmatrač) koje određuju šta tamo mogu da rade. Svaka privilegovana radnja zaposlenog upisuje se u revizioni dnevnik koji se samo dopunjuje, zajedno sa izvršiocem, ciljem, razlogom i izvorom. Preuzimanje identiteta radi podrške, kada je neophodno, dostupno je samo najvišoj ulozi zaposlenog, zahteva ukucanu potvrdu i pisani razlog, vremenski je ograničeno i beleži se u revizionom dnevniku. Prečice za autentifikaciju namenjene isključivo razvoju trajno su isključene u produkcionim verzijama.
6. Bezbednosno ojačavanje aplikacije
Veb. The API and website send standard hardening headers - HSTS (with preload on the marketing site), a Content-Security-Policy, X-Frame-Options: DENY, X-Content-Type-Options: nosniff, a restrictive Referrer-Policy, and a Permissions-Policy that disables camera, microphone, and geolocation. The API only accepts cross-origin requests from an explicit allowlist of our own origins. Public forms are protected by Cloudflare Turnstile and honeypot fields, and are rate-limited.
Desktop. The Electron app runs the UI with context isolation on, Node integration off, and the renderer sandbox enabled. The renderer talks to the rest of the app only through a narrow preload bridge whose messages are schema-validated, and it runs under a strict Content-Security-Policy (default-src 'self', no plugins, no framing, Trusted Types for script). Permission requests from web content are denied except for a short allowlist.
7. Potpisane verzije i ažuriranja
Instaleri za macOS i Windows su digitalno potpisani - Apple notarizacija na macOS-u, Authenticode na Windows-u - a mehanizam za automatsko ažuriranje u desktop aplikaciji proverava potpis ažuriranja pre instalacije, pa se izmenjeno ažuriranje odbija. Provere ažuriranja poštuju mrežno pravilo: ako je runtime podešen da bude van mreže, aplikacija ne kontaktira server za ažuriranja.
8. Nadzor i odgovor na incidente
Na API-ju i veb kontrolnoj tabli koristimo alate za praćenje grešaka, podešene tako da isključuju zaglavlja za autentifikaciju, kolačiće i vrednosti koje liče na lozinke, tokene ili tajne. Dolazni webhook-ovi (na primer, od Stripe-a) proveravaju se potpisom i deduplikuju kako bi se odbacila ponavljanja. Istražujemo bezbednosne signale, a u slučaju povrede ličnih podataka obavestićemo pogođene korisnike i nadležne organe u rokovima koje propisuje zakon.
9. Pružaoci usluga
Convira se oslanja na mali broj proverenih pružalaca usluga - plaćanja (Stripe), hosting baze podataka i backenda (Supabase), zaštita od botova (Cloudflare), hosting veb-sajta i analitika bez kolačića (Vercel), praćenje grešaka (Sentry) i pružaoci AI modela (Anthropic, OpenAI, Google, xAI). Aktuelan spisak, čime se svaki od njih bavi i gde okvirno posluje nalazi se u Politika privatnosti.
10. Vaš deo
Bezbednost je zajednička odgovornost. Nekoliko stvari koje su važne:
- Koristite jaku, jedinstvenu lozinku za svoj Convira nalog.
- Držite aplikaciju ažurnom - ažurira se automatski, ali nemojte ostajati na verziji staroj mesecima.
- Budite promišljeni oko toga šta povezujete i šta dozvoljavate agentu da radi; pročitajte zahteve za odobrenje.
- Za najosetljiviji posao koristite lokalni runtime ili Private Box i držite upravljane alate na mreži isključenima kako bi sadržaj izvršavanja ostao na hardveru koji vi kontrolišete.
- Ako nešto primetite - grešku, sumnjivu e-poruku poslatu u naše ime, nalog koji ne prepoznajete - javite nam.
11. Prijava ranjivosti
Ako smatrate da ste pronašli bezbednosnu ranjivost u aplikaciji Convira, prijavite je na security@convira.ai. Navedite dovoljno detalja za reprodukciju - pogođenu komponentu ili URL, korake i uticaj - i, ako je moguće, dokaz koncepta.
Šta tražimo od vas:
- Ostavite nam razuman rok da istražimo i otklonimo problem pre nego što ga javno obelodanite.
- Nemojte pristupati, menjati niti brisati podatke koji nisu vaši; koristite samo test naloge i podatke koje kontrolišete.
- Nemojte izvoditi napade koji narušavaju uslugu za druge (uskraćivanje usluge, spam, napadi grubom silom na stvarne naloge) niti primenjivati socijalni inženjering nad našim zaposlenima ili korisnicima.
- Nemojte tražiti novac u zamenu za neobjavljivanje.
Šta možete očekivati od nas:
- Potvrdićemo prijem vaše prijave i obaveštavaćemo vas dok radimo na njoj.
- Kada problem bude rešen, navešćemo vas kao zaslužnog ako to želite. Trenutno ne sprovodimo plaćeni bug bounty program.
- Nećemo pokretati pravne postupke protiv istraživanja u dobroj veri koje poštuje ove smernice.
12. Pitanja
Pitanja o bezbednosti ili bilo šta u vezi sa ovom stranicom: security@convira.ai. Za sve ostalo, našu stranicu za pomoć. Ažuriraćemo ovu stranicu kako se proizvod i naše prakse menjaju i osvežiti datum na vrhu.