OpenClaw는 AI가 컴퓨터 작업을 자동화하도록 지원하는 강력한 프레임워크입니다. 그러나 로컬 환경에 처음 배포했을 때, AI가 시스템 구성을 자동으로 수정하는 것을 보고 잠재적 위험을 인지했습니다. 특히 Qianwen-3.5-9B와 같은 대규모 언어 모델(LLM)은 추론 및 코드 생성 능력이 뛰어나므로, 잘못된 권한 설정은 예상보다 광범위한 영향을 초래할 수 있습니다. 이에 대한 안전하고 실용적인 권한 관리 방안을 마련하기 위해 2주간의 테스트를 거쳤습니다.
OpenClaw의 주요 보안 위험 요소
1. 모델 환각으로 인한 비정상적 작업 수행
Qianwen-3.5-9B 환경에서 테스트한 결과, AI에게 작업을 명확하게 지시하지 않으면 모델이 자체적으로 판단하여 비정상적인 작업을 수행할 수 있습니다. 예를 들어, "문서 정리"를 요청했을 때 AI가 "불필요하다고 판단되는" 파일을 삭제하는 경우가 발생했습니다. 이러한 모델 환각 현상은 복잡한 작업에서 더욱 빈번하게 나타나므로, 명확한 권한 경계를 설정하여 AI의 행동을 제어하는 것이 중요합니다.
2. 플러그인 보안 취약점
OpenClaw의 많은 기능 플러그인은 타사 개발자에 의해 제공됩니다. 파일 관리 플러그인을 테스트하는 과정에서, 특정 폴더만 접근하면 되는 기능임에도 불구하고 전체 사용자 디렉토리에 대한 읽기/쓰기 권한을 기본값으로 요구하는 것을 확인했습니다. 이러한 과도한 권한 부여는 잠재적 위험을 증폭시킬 수 있습니다.
3. 장기 실행으로 인한 권한 누적
OpenClaw는 24시간 상시 실행되도록 설계되어 있으며, 이는 AI가 지속적으로 권한을 유지하게 됨을 의미합니다. 특정 작업을 위해 임시로 디렉토리 접근 권한을 부여한 후, 해당 작업이 완료되었음에도 불구하고 AI가 다른 작업을 수행하면서 이전의 권한을 계속 유지하는 경우가 발생할 수 있습니다. 이는 의도치 않은 파일 접근으로 이어질 수 있습니다.
Qianwen-3.5-9B 환경에서의 최소 권한 원칙 적용
1. 기본 권한 설정
~/.openclaw/openclaw.json 파일에 다음과 같은 권한 구조를 설정하여 AI가 지정된 작업 공간 내에서만 활동하고, 명시적으로 허용한 인터프리터만 실행하도록 제한합니다.
{
"permissions": {
"default": {
"filesystem": {
"read": ["~/OpenClaw_Projects/Workspace"],
"write": ["~/OpenClaw_Projects/Workspace/Outputs"]
},
"process": {
"execute": ["/usr/bin/python3", "/usr/local/bin/node"]
}
}
}
}
2. 작업별 동적 권한 부여
특별한 권한이 필요한 작업의 경우, 임시 권한 부여 방식을 사용합니다. 예를 들어, 민감한 데이터를 처리해야 할 때 다음과 같이 명령을 실행합니다.
openclaw task run --permission-override '{
"filesystem": {
"read": ["~/Sensitive_Data"],
"write": []
}
}' --task "Analyze Quarterly Financial Reports"
작업 완료 후 권한은 자동으로 해제되어 권한이 잔류하는 것을 방지합니다.
3. 네트워크 접근 제어
Qianwen-3.5-9B는 정보를 얻기 위해 인터넷에 접속하려는 시도를 할 수 있습니다. 네트워크 접근을 엄격하게 제한하기 위해 다음과 같이 설정합니다.
{
"network": {
"allowedDomains": ["api.ai-service.com"],
"blockPrivateIPs": true,
"maxConnections": 2
}
}
주요 방어 조치 실행
1. 작업 확인 절차 강화
위험도가 높은 작업에 대해 2차 확인 절차를 추가합니다. skills 설정에 다음과 같이 구성합니다.
{
"confirmations": {
"file_delete": true,
"process_kill": true,
"admin_command": true
}
}
이제 AI가 파일을 삭제하거나 프로세스를 종료하려 할 때, 웹 인터페이스에 확인 대화 상자가 표시됩니다.
2. 민감 작업 로깅
게이트웨이 시작 시 상세 로깅을 활성화하여 모든 파일 수정, 명령 실행 및 네트워크 요청을 기록하고, 이를 통해 사후 감사를 용이하게 합니다.
openclaw gateway start --log-level=debug --audit-file=~/.openclaw/operation_log.txt
3. 샌드박스 테스트 환경 구축
새로운 기능을 공식적으로 사용하기 전에 전용 샌드박스 환경을 구축합니다.
mkdir -p ~/OpenClaw_Sandbox_Env
openclaw env create --name sandbox --root ~/OpenClaw_Sandbox_Env --isolated
모든 새 기능은 샌드박스에서 철저히 테스트한 후 운영 환경에 배포합니다.
보안 실천에 대한 고찰
OpenClaw의 안전한 사용을 위한 핵심 원칙은 다음과 같습니다. '최소 권한'은 OpenClaw의 능력을 제한하는 것이 아니라, AI가 올바른 범위 내에서 작동하도록 보장하는 것입니다. 이는 유능한 조수에게 업무 범위를 명확히 지정하여 효율성을 높이고 다른 부서의 운영에 영향을 미치지 않도록 하는 것과 같습니다.
점진적인 권한 부여 방식은 한 번에 모든 권한을 개방하는 것보다 훨씬 안전합니다. 먼저 최소한의 권한을 부여하고, AI가 특정 작업을 완료하기 위해 추가 권한이 필요할 때 임시로 확장하며, 작업 완료 후 즉시 회수합니다.
정기적인 권한 감사도 중요합니다. 매주 권한 로그를 검토하여 실제로 사용된 권한과 사용되지 않았지만 계속 열려 있는 권한을 파악하고, 이를 통해 권한 설정을 지속적으로 최적화합니다.
마지막으로, '안전과 편의성 간의 균형'은 특정 시나리오에 따라 조정해야 합니다. 개인 개발 환경에서는 권한을 다소 더 개방할 수 있지만, 민감한 데이터를 처리할 때는 가장 엄격한 제어를 활성화해야 합니다.