보안
Convira의 보안
최종 업데이트: 14 July 2026
Convira는 사용자의 파일과 도구, 그리고 선택에 따라 클라우드까지 다루는 AI 에이전트를 실행합니다. 그래서 보안은 나중에 덧붙이는 것이 아니라 제품 설계의 일부입니다. 이 페이지에서는 시스템이 어떻게 만들어지고 운영되는지 설명합니다. 어떤 데이터를 왜 수집하는지는 다음을 참고하세요: 개인정보 처리방침.
1. 당사의 접근 방식
아래의 모든 내용은 두 가지 원칙 위에 세워져 있습니다. 첫째, 기본값은 로컬 우선: 로컬 런타임에서는 에이전트의 추론, 메모리, 파일이 모두 사용자의 기기에서, 사용자가 호스팅하는 모델로 실행됩니다. 예외는 사용자가 직접 선택해 실행하는 유료 도구 - 웹 및 X 리서치, 이미지 및 비디오 생성, 커넥터 작업 - 로, 당사가 보유한 관리형 제공업체 키가 필요하기 때문에 그 도구 호출 하나만 Convira가 실행해 결과를 기기로 돌려줍니다(온라인 상태일 때만 가능합니다). 둘째, 클라우드는 선택 사항이며 최소한으로만 관여합니다: 클라우드 런타임을 사용하면 실행이 처리되어 AI 모델 제공업체로 전달되지만, 실행 내용은 당사 서버에 저장되지 않습니다 - 기록은 사용자의 기기에 남습니다. 당사가 가진 데이터가 적을수록 보호해야 할 것도, 유출될 수 있는 것도 줄어듭니다.
절대 뚫리지 않는다고 주장하지는 않습니다. 다만 가장 민감한 작업은 사용자가 통제하는 하드웨어를 벗어날 필요가 없도록 아키텍처를 설계했다는 점은 분명히 말씀드릴 수 있습니다.
2. 데이터가 머무는 곳
Convira에는 세 가지 런타임이 있으며, 그 차이는 정확히 다음과 같습니다:
| 런타임 | 에이전트가 실행되는 위치 | 실행 기록이 저장되는 위치 | Convira에 전달되는 정보 |
|---|---|---|---|
| Local | 사용자의 컴퓨터에서, 직접 호스팅하는 모델로 실행 | 사용자의 컴퓨터(암호화된 로컬 데이터베이스) | 계정 및 라이선스 트래픽. 크레딧이 청구되는 웹, 미디어, 커넥터 도구를 호출하는 경우 해당 도구의 입력값과 라우팅 식별자 |
| Private Box | 직접 호스팅하고 통제하는 기기 | 사용자 기기(데스크톱이 정본 사본을 보관합니다) | 라이선스 관련 통신. 과금 대상 웹, 미디어, 커넥터 도구를 실행하면 해당 도구의 입력값과 라우팅 식별자 |
| Cloud | Convira의 인프라 | 사용자 기기(데스크톱이 정본 사본을 보관합니다) | 운영 메타데이터만 (상태, 타임스탬프, 사용된 모델과 도구, 토큰 및 크레딧 사용량). 프롬프트와 컨텍스트는 응답 생성을 위해 AI 모델 제공업체로 전달되며, 그 이후 당사는 보관하지 않습니다 |
클라우드 경로에서는 실행 내용 - 입력한 텍스트, 관련 파일, 도구의 입력과 출력, 모델의 응답 - 이 당사 데이터베이스에 기록되지 않습니다. 당사 코드는 무엇이든 저장되기 전에 이를 제거하며, 자동화된 테스트가 모든 빌드에서 이 불변 조건을 검증합니다. 자세한 내용은 다음 문서에 정리되어 있습니다: 개인정보 처리방침.
3. 에이전트 실행을 격리하는 방식
데스크톱 도구 호출은 항상 Convira의 권한 정책에 따라 검사됩니다. 네이티브 프로세스 격리는 별도의 심층 방어 계층입니다. 자동 모드에서는 호스트가 지원할 때 Convira가 이를 사용하고, 대체 경로로 전환해야 하면 경고를 기록합니다. 운영자는 네이티브 격리를 필수로 설정할 수도 있습니다. 사용 가능한 기본 요소는 다음과 같습니다:
- 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입니다. Windows에서 파일 시스템과 네트워크에 대한 결정은 Job Object가 아니라 Convira의 권한 정책과 네트워크 제어에서 이루어집니다.
클라우드 코드 실행의 경계는 다릅니다. API 워커 컨테이너 내부에서 서브프로세스로 실행되기 때문입니다. 컨테이너는 서비스를 호스트로부터 분리하지만, 클라우드 서브프로세스는 그 컨테이너를 공유하므로 프로세스마다 별도의 파일 시스템 격리 영역이나 네트워크 네임스페이스를 갖지는 않습니다. 도구 결과에는 격리 출처가 표시되므로, 에이전트와 인터페이스가 컨테이너 실행, 네이티브 프로세스 실행, 폴백 실행을 구분할 수 있습니다.
네트워크 외부 통신. 실행에서 나가는 외부 네트워크 접근은 계층화된 도메인 허용 목록을 적용하는 HTTP CONNECT 프록시를 거칩니다(명시적 차단 목록, 그다음 세션 중 사용자가 승인한 항목, 그다음 요금제와 워크스페이스에서 허용된 도메인, 마지막으로 모델 및 패키지 엔드포인트로 구성된 소규모 기본 목록 순). 또한 IP 직접 연결, 사설 및 링크-로컬 대역, 클라우드 메타데이터 엔드포인트도 차단합니다. 로컬 런타임에서는 사용자가 켜기 전까지 웹 접근이 꺼져 있으며, 프록시는 감사 모드(모두 기록)나 강제 모드(차단, 필요 시 사용자에게 확인)로 동작할 수 있습니다. 사용자가 과금 대상 웹, 미디어, 커넥터 도구를 활성화해 호출하면 그 호출 하나만 관리형 키로 실행하기 위해 Convira로 전달되고, 그 밖의 모든 것은 사용자의 컴퓨터에 남으며, 오프라인 상태에서는 과금 대상 도구를 사용할 수 없습니다.
승인. 정책 엔진이 각 도구 작업이 무엇을 하려는지 분류합니다. 민감한 작업은 그냥 실행되지 않습니다 - 실행이 일시 정지되면서 승인 요청이 생성되고, 계속 진행하려면 사용자가 승인하거나 거부해야 합니다. 일부 작업은 “이 세션에서 허용” 또는 “항상 허용”을 선택할 수 있고, 나머지는 매번 확인을 요청합니다. 권한 규칙은 사용자의 기기에서 작성되어 실행에 적용되며, 클라우드 경로에서는 실행과 함께 전송될 뿐 당사 측에 저장되지 않습니다.
4. 암호화
전송 중. 앱과 당사 API 사이의 모든 트래픽은 TLS로 전송되며, API도 TLS로 데이터베이스에 연결합니다.
저장 데이터. 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.
사용자의 기기에서. The desktop app keeps the authoritative copy of your runs and sessions in a local SQLite database that is encrypted with SQLCipher. 암호화 키 자체는 운영체제의 보안 저장소(macOS의 Keychain, Windows의 DPAPI, Linux의 libsecret)로 보호됩니다. 패키징된 빌드는 이 보호 장치를 사용할 수 없을 때 평문으로 대체하지 않고 실행을 거부합니다. 데스크톱 앱은 서드파티 API 키나 OAuth 토큰을 디스크에 저장하지 않습니다.
Private Box. 자체 호스팅하는 Private Box는 수명이 짧은 Ed25519 서명 토큰으로 라이선스됩니다. 팀 멤버를 박스에 페어링하면 박스의 베어러 자격 증명이 각 멤버의 기기 키로 봉인됩니다(X25519 키 합의 + XChaCha20-Poly1305) - 평문 자격 증명은 Convira 서버를 절대 거치지 않습니다.
실행 내용이 반드시 직접 관리하는 하드웨어에 머물러야 하는 위협 모델이라면, 로컬 런타임이나 Private Box를 사용하고 관리형 온라인 도구는 호출하지 마세요.
5. 인증 및 접근 권한
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.
Convira 내부의 고객 데이터 접근 권한은 역할 단위로 제한됩니다. 직원에게는 고객 계정과 별개인 플랫폼 역할이 부여되어 무엇을 보고 무엇을 할 수 있는지가 결정되며, 워크스페이스 안에서는 구성원 역할(소유자, 관리자, 운영자, 뷰어)이 그곳에서 수행할 수 있는 작업을 통제합니다. 권한이 필요한 모든 직원 작업은 실행 주체, 대상, 사유, 출처와 함께 추가만 가능한 감사 로그에 기록됩니다. 지원을 위한 대리 접속은 꼭 필요한 경우 최고 등급 직원 역할로만 제한되고, 직접 입력하는 확인 절차와 서면 사유가 필요하며, 시간 제한이 적용되고, 감사 로그에 남습니다. 개발 전용 인증 우회 경로는 프로덕션 빌드에서 완전히 비활성화됩니다.
6. 애플리케이션 보안 강화
웹. 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.
데스크톱. 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. 서명된 빌드와 업데이트
macOS와 Windows 설치 프로그램에는 코드 서명이 적용되어 있으며 - macOS는 Apple 공증, Windows는 Authenticode - 데스크톱 앱의 자동 업데이터는 설치 전에 업데이트 서명을 검증하므로 변조된 업데이트는 거부됩니다. 자동 업데이트 확인은 네트워크 정책을 따릅니다. 런타임이 오프라인으로 설정되어 있으면 앱은 업데이트 서버에 연결하지 않습니다.
8. 모니터링 및 사고 대응
당사는 API와 웹 대시보드에서 오류 모니터링 도구를 사용하며, 인증 헤더, 쿠키, 비밀번호·토큰·비밀 값으로 보이는 데이터는 제외하도록 구성했습니다. 인바운드 웹훅(예: Stripe)은 서명을 검증하고 중복을 제거해 재전송 공격을 차단합니다. 당사는 보안 신호를 조사하며, 개인정보 침해가 발생한 경우 법이 정한 기한 내에 영향을 받은 사용자와 관련 당국에 통지합니다.
9. 서비스 제공업체
Convira는 엄선된 소수의 서비스 제공업체만 이용합니다 - 결제(Stripe), 데이터베이스 및 백엔드 호스팅(Supabase), 봇 차단(Cloudflare), 웹사이트 호스팅 및 쿠키 없는 분석(Vercel), 오류 모니터링(Sentry), AI 모델 제공업체(Anthropic, OpenAI, Google, xAI). 현재 목록과 각 업체의 역할, 대략적인 운영 지역은 다음에서 확인할 수 있습니다: 개인정보 처리방침.
10. 사용자의 역할
보안은 함께 만들어 갑니다. 중요한 몇 가지:
- Convira 계정에는 강력하고 다른 곳에서 쓰지 않는 비밀번호를 사용하세요.
- 앱을 최신 상태로 유지하세요 - 자동으로 업데이트되지만, 몇 달 지난 빌드를 그대로 쓰지는 마세요.
- 무엇을 연결하고 에이전트에 어떤 권한을 부여할지 신중하게 결정하고, 승인 요청 내용을 반드시 읽어 보세요.
- 가장 민감한 작업에는 로컬 런타임이나 Private Box를 사용하고 관리형 온라인 도구를 꺼 두세요. 그러면 실행 내용이 사용자가 통제하는 하드웨어 안에만 남습니다.
- 이상한 점을 발견하면 - 버그, 당사를 사칭하는 의심스러운 이메일, 본인이 모르는 계정 - 알려 주세요.
11. 취약점 신고
Convira에서 보안 취약점을 발견했다고 판단되면 다음 주소로 신고해 주세요: security@convira.ai. 재현에 필요한 정보를 충분히 담아 주세요 - 영향을 받는 구성 요소나 URL, 재현 단계, 영향 범위 - 가능하다면 개념 증명(PoC)도 함께 보내 주세요.
당사가 요청드리는 사항:
- 공개적으로 알리기 전에 문제를 조사하고 해결할 수 있도록 합리적인 시간을 주세요.
- 본인 소유가 아닌 데이터에 접근하거나 수정, 삭제하지 마세요. 본인이 통제하는 테스트 계정과 데이터만 사용하세요.
- 다른 사용자의 서비스 이용을 방해하는 공격(서비스 거부, 스팸, 실제 계정 무차별 대입)을 시도하거나, 당사 직원 또는 사용자를 대상으로 사회공학적 수법을 사용하지 마세요.
- 공개하지 않는 대가로 금전을 요구하지 마세요.
당사가 약속드리는 것:
- 제보를 접수했음을 알려드리고, 처리 진행 상황을 계속 공유해 드립니다.
- 문제가 해결된 후 원하시면 제보자로 이름을 남겨 드립니다. 현재 유료 버그 바운티 프로그램은 운영하지 않습니다.
- 이 가이드라인을 따르는 선의의 연구에 대해서는 법적 조치를 취하지 않습니다.
12. 문의
보안 관련 문의나 이 페이지에 대한 문의: security@convira.ai. 그 외 모든 문의는 도움말 페이지. 제품과 운영 방식이 바뀌면 이 페이지를 업데이트하고 상단의 날짜를 갱신합니다.