--- name: perfex-security description: Segurança para módulos Perfex CRM — validação de input, CSRF, prevenção XSS e protecção contra directory traversal. Baseado apenas na documentação oficial. --- # /perfex-security - Segurança Módulos Perfex CRM Práticas de segurança para módulos. **Zero assumptions, zero hallucinations** - apenas documentação oficial. --- ## Documentação Base - [Module Security](https://help.perfexcrm.com/module-security/) - [CodeIgniter Security](https://codeigniter.com/userguide3/libraries/security.html) --- ## 1. Prevenção de Acesso Directo **OBRIGATÓRIO em todos os ficheiros PHP:** ```php
Directory access is forbidden.
``` --- ## 3. Input Validation (CRÍTICO) ### Usar Input Class do CodeIgniter ```php // CORRECTO - Input class escapa automaticamente $name = $this->input->post('name'); $id = $this->input->get('id'); $data = $this->input->post(); // Array de todos os POST // ERRADO - Nunca usar $_POST/$_GET directamente $name = $_POST['name']; // VULNERÁVEL! ``` ### Sanitização Adicional ```php // Inteiros $id = (int) $this->input->post('id'); // Escape para output HTML $name = html_escape($this->input->post('name')); // Strip tags $clean = strip_tags($this->input->post('content')); // XSS clean (built-in) $safe = $this->security->xss_clean($this->input->post('data')); ``` --- ## 4. CSRF Protection O Perfex CRM tem CSRF activado por defeito. ### Em Formulários (OBRIGATÓRIO) ```php ``` **NUNCA usar HTML `