Recommend this page to a friend! |
Classes of Caleb | PHP Mussel | _docs/readme.pt.md | Download |
|
DownloadDocumentação para phpMussel (Português).Conteúdo
Nota relativa às traduções: Em caso de erros (por exemplo, discrepâncias entre as traduções, erros de digitação, etc), a versão em inglês do README é considerada a versão original e autorizada. Se você encontrar algum erro, a sua ajuda em corrigi-los seria bem-vinda. 1. <a name="SECTION1"></a>PREÂMBULOObrigado por usar phpMussel, um PHP script projetado para detectar trojans, vírus, malware e outras ameaças dentro dos arquivos enviados para o seu sistema onde quer que o script é enganchado, baseado nas assinaturas do ClamAV e outros. PHPMUSSEL COPYRIGHT 2013 e além GNU/GPLv2 através do Caleb M (Maikuolan). Este script é um software livre; você pode redistribuí-lo e/ou modificá-lo de acordo com os termos da GNU General Public License como publicada pela Free Software Foundation; tanto a versão 2 da Licença, ou (a sua escolha) qualquer versão posterior. Este script é distribuído na esperança que possa ser útil, mas SEM QUALQUER GARANTIA; sem mesmo a implícita garantia de COMERCIALIZAÇÃO ou ADEQUAÇÃO A UM DETERMINADO FIM. Consulte a GNU General Public License para obter mais detalhes, localizado no arquivo Um especial obrigado para ClamAV por o projeto inspiração e para as assinaturas que este script utiliza, sem o qual, o script provavelmente não existiria, ou no melhor, seria de utilidade muito limitada. Um especial obrigado para SourceForge, Bitbucket e GitHub por hospedar os arquivos do projeto, e para os recursos adicionais de um número de assinaturas utilizados através do phpMussel: PhishTank, NLNetLabs, Malware.Expert e outros, e um especial obrigado a todos aqueles que apoiam o projeto, a qualquer outra pessoa que eu possa ter esquecido de mencionar, e para você, por usar o script. Este documento e seu pacote associado pode ser baixado gratuitamente de: - GitHub. - Bitbucket. - SourceForge. 2. <a name="SECTION2"></a>COMO INSTALAR2.0 INSTALANDO MANUALMENTE (PARA WEB SERVIDORES)1) Por estar lendo isso, estou supondo que você já tenha baixado uma cópia arquivada do script, descomprimido seu conteúdo e tê-lo em algum lugar em sua máquina local. A partir daqui, você vai querer determinar onde no seu host ou CMS pretende colocar esses conteúdos. Um diretório como 2) Renomear 3) Carregar os conteúdos (phpMussel e seus arquivos) para o diretório que você tinha decidido anteriormente (você não precisa dos arquivos 4) CHMOD o diretório 5) Instale todas as assinaturas que você precisará. Vejo: INSTALANDO ASSINATURAS. 6) Em seguida, você vai precisar "enganchar" o phpMussel ao seu sistema ou CMS. Existem várias diferentes maneiras em que você pode "enganchar" scripts como phpMussel ao seu sistema ou CMS, mas o mais fácil é simplesmente incluir o script no início de um núcleo arquivo de seu sistema ou CMS (uma que vai geralmente sempre ser carregado quando alguém acessa qualquer página através de seu site) utilizando um comando
Salve o arquivo, fechar, recarrega-lo. -- OU ALTERNATIVAMENTE -- Se você é usando um Apache webserver e se você tem acesso a
Ou isso no
7) Neste ponto, você está feito! Porém, você provavelmente deve testá-lo para garantir que ele está funcionando corretamente. Para testar a proteção de upload de arquivo, tente carregar dos arquivos testes incluídos no pacote em 2.1 INSTALANDO MANUALMENTE (PARA CLI)1) Por estar lendo isso, estou supondo que você já tenha baixado uma cópia arquivada do script, descomprimido seu conteúdo e tê-lo em algum lugar em sua máquina local. Quando você tiver determinado que você está feliz com a localização escolhida para o phpMussel, continue. 2) phpMussel requer PHP instalado na máquina host para poder executar. Se você não ainda tem PHP instalado em sua máquina, por favor instalar o PHP em sua máquina, seguindo as instruções fornecidas pelo instalador do PHP. 3) Opcionalmente (fortemente recomendado para avançados usuários, mas não recomendado para iniciantes ou para os inexperientes), abrir 4) Opcionalmente, você pode fazer usando phpMussel no modo CLI mais fácil para si mesmo através da criação de um batch arquivo para carregar automaticamente PHP e phpMussel. Para fazer isso, abra um editor de simples texto como Notepad ou Notepad++, digite o caminho completo para o arquivo 5) Instale todas as assinaturas que você precisará. Vejo: INSTALANDO ASSINATURAS. 6) Neste ponto, você está feito! Porém, você provavelmente deve testá-lo para garantir que ele está funcionando corretamente. Para testar phpMussel, executar phpMussel e tentar analisar o diretório 2.2 INSTALANDO COM COMPOSERphpMussel está registrado no Packagist, e então, se você estiver familiarizado com o Composer, poderá usar o Composer para instalar o phpMussel (você ainda precisará preparar a configuração, permissões, assinaturas e ganchos embora; consulte "instalando manualmente (para web servidores)" as etapas 2, 4, 5, e 6).
<a name="INSTALLING_SIGNATURES"></a>2.3 INSTALANDO ASSINATURASDesde a v1.0.0, as assinaturas não estão incluídas no pacote phpMussel. As assinaturas são requeridas pela phpMussel para detectar ameaças específicas. Existem 3 métodos principais para instalar assinaturas:
2.3.1 Instale automaticamente usando o front-end página de atualizações.Primeiramente, você precisará certificar-se de que o front-end está habilitado. Vejo: GESTÃO DE FRONT-END. Então, tudo o que você precisa fazer é ir para o front-end página de atualizações, encontre os arquivos de assinatura necessários e use as opções fornecidas na página, instale-as e ative-as. 2.3.2 Gerar assinaturas usando "SigTool" e instale-se manualmente.Vejo: Documentação SigTool. 2.3.3 Baixar as assinaturas de "phpMussel/Signatures" e instale-se manualmente.Primeiramente, vá para phpMussel/Signatures. O repositório contém vários arquivos de assinatura compactados em GZ. Baixe os arquivos que você precisa, descomprime-os e copie os arquivos descomprimidos para o diretório 3. <a name="SECTION3"></a>COMO USAR3.0 COMO USAR (PARA WEB SERVIDORES)phpMussel deve ser capaz de operar corretamente com requisitos mínimos sobre a sua parte: Após instalá-lo, ele deve funcionar imediatamente e ser imediatamente utilizável. Análise dos arquivos carregados via upload é automatizado e ativado por padrão, por isso nada é exigido de você por essa função particular. Porém, você também é capaz de instruir phpMussel para verificar arquivos e/ou diretórios específicos. Para fazer isso, em primeiro lugar, você vai precisar assegurar que a configuração apropriada é definida no arquivo
| Resultados | Descrição | |---|---| | -4 | Indica que os dados não puderam ser analisados devido a encriptação. | | -3 | Indica que problemas foram encontrados com os arquivos de assinatura do phpMussel. | | -2 | Indica que dados corrompidos foram detectados durante a análise, e portanto, a análise não foi concluída. | | -1 | Indica que extensões ou complementos necessários pelo PHP para executar a análise estavam faltando, e portanto, a análise não foi concluída. | | 0 | Indica que o alvo de análise não existe, e portanto, havia nada para verificar. | | 1 | Indica que o alvo foi analisado e não foram detectados problemas. | | 2 | Indica que o alvo foi analisado e problemas foram detectados. |
Exemplos:
Retorna algo tal como esta (como uma string):
Por completos detalhes sobre que tipo de assinaturas phpMussel usa durante a análise e como ele usa essas assinaturas, consulte a FORMATOS DE ASSINATURAS seção deste arquivo README. Se você encontrar quaisquer falsos positivos, se você encontrar algo novo que você acha deve ser bloqueado, ou para qualquer outra coisa com relação a assinatura, entre em contato comigo sobre isso para que eu possa fazer as mudanças necessárias, que, se você não entrar em contato comigo, eu posso não ser necessariamente conscientes de. (Vejo: O que é um "falso positivo"?). Para desativar as assinaturas que estão incluídos com phpMussel (tal como se você está experimentando falsos positivos específico para seus fins que não deve normalmente ser removidos da agilize), adicione os nomes das assinaturas específicas a ser desabilitadas para o arquivo greyist das assinaturas ( Veja também: Como acessar detalhes específicos sobre os arquivos quando eles são analisados? 3.1 COMO USAR (PARA CLI)Por favor, consulte a seção "INSTALANDO MANUALMENTE (PARA CLI)" deste arquivo README. Também estar ciente de que phpMussel é um scanner on-demand; NÃO é um scanner on-access (exceto para o carregamento de arquivos, no momento de carregamento), e ao contrário de antivírus suítes convencionais, não monitora memória ativa! Ele só vai detectar vírus contidos pelo carregamento de arquivos, e por esses arquivos específicos que você explicitamente diga a ele analisar. 4. <a name="SECTION4"></a>GESTÃO DE FRONT-END4.0 O QUE É O FRONT-END.O front-end fornece uma maneira conveniente e fácil de manter, gerenciar e atualizar sua instalação phpMussel. Você pode visualizar, compartilhar e baixar arquivos de log através da página de logs, você pode modificar a configuração através da página de configuração, você pode instalar e desinstalar componentes através da página de atualizações, e você pode carregar, baixar e modificar arquivos no seu vault através do gerenciador de arquivos. O front-end é desativado por padrão para evitar acesso não autorizado (acesso não autorizado pode ter consequências significativas para o seu site e para a sua segurança). Instruções para habilitá-lo estão incluídas abaixo deste parágrafo. 4.1 COMO HABILITAR O FRONT-END.1) Localize a directiva 2) Acesse o 3) Faça login com o nome de usuário e a senha padrão (admin/password). Nota: Depois de efetuar login pela primeira vez, a fim de impedir o acesso não autorizado ao front-end, você deve imediatamente alterar seu nome de usuário e senha! Isto é muito importante, porque é possível fazer upload de código PHP arbitrário para o seu site através do front-end. Além disso, para uma segurança ideal, é recomendável ativar a "autenticação de dois fatores" para todas as contas front-end (instruções fornecidas abaixo). 4.2 COMO USAR O FRONT-END.As instruções são fornecidas em cada página do front-end, para explicar a maneira correta de usá-lo e sua finalidade pretendida. Se precisar de mais explicações ou qualquer assistência especial, entre em contato com o suporte. Alternativamente, existem alguns vídeos disponíveis no YouTube que podem ajudar por meio de demonstração. 4.3 AUTENTICAÇÃO DE DOIS FATORESÉ possível tornar o front-end mais seguro ativando a autenticação de dois fatores ("2FA"). Ao fazer login numa conta ativada para 2FA, um e-mail é enviado para o endereço de e-mail associado a essa conta. Este e-mail contém um "código 2FA", que o usuário deve inserir, além do nome de usuário e da senha, para poder fazer login usando essa conta. Isso significa que a obtenção de uma senha de conta não seria suficiente para que qualquer hacker ou atacante em potencial pudesse fazer login nessa conta, já que eles também precisam ter acesso ao endereço de e-mail associado a essa conta para poder receber e utilizar o código 2FA associado à sessão, assim tornando assim o front-end mais seguro. Em primeiro lugar, para ativar a autenticação de dois fatores, usando a página de atualizações do front-end, instale o componente PHPMailer. O phpMussel utiliza o PHPMailer para enviar e-mails. Deve-se notar que embora o phpMussel, por si só, seja compatível com PHP >= 5.4.0, o PHPMailer requer PHP >= 5.5.0, significando, portanto, que ativando a autenticação de dois fatores para o front-end do phpMussel não será possível para usuários do PHP 5.4. Depois de instalar o PHPMailer, você precisará preencher as diretivas de configuração do PHPMailer por meio da página de configuração para phpMussel ou do arquivo de configuração. Mais informações sobre essas diretivas de configuração estão incluídas na seção de configuração deste documento. Depois de preencher as diretivas de configuração do PHPMailer, defina Em seguida, você precisará associar um endereço de e-mail a uma conta para que o phpMussel saiba para onde enviar códigos 2FA ao fazer login com essa conta. Para fazer isso, use o endereço de e-mail como o nome de usuário da conta (como Nota: Proteger seu vault contra acesso não autorizado (p.e., por meio de endurecendo as permissões de segurança e de acesso público do seu servidor), é particularmente importante aqui, devido a esse acesso não autorizado ao seu arquivo de configuração (que é armazenado no seu vault), pode arriscar expor suas configurações de SMTP (incluindo nome de usuário e senha SMTP). Você deve garantir que seu vault esteja adequadamente protegido antes de ativar a autenticação de dois fatores. Se você não conseguir fazer isso, então, pelo menos, você deve criar uma nova conta de e-mail, dedicada para essa finalidade, a fim de reduzir os riscos associados às configurações SMTP expostas. 5. <a name="SECTION5"></a>CLI (COMANDO LINHA INTERFACE)phpMussel pode ser executado como um interativo analisador de arquivo no modo CLI em sistemas baseados em Windows. Por favor, consulte a seção "COMO INSTALAR (PARA CLI)" deste arquivo README para mais detalhes. Para uma lista de comandos disponíveis Em CLI, no CLI prompt, digite 'c', e pressione Enter. Além disso, para os interessados, um tutorial em vídeo para saber como usar phpMussel no modo CLI está disponível aqui: - <https://youtu.be/H-Pa740-utc> 6. <a name="SECTION6"></a>ARQUIVOS INCLUÍDOS NESTE PACOTEA seguir está uma lista de todos os arquivos que deveriam ter sido incluídos na cópia arquivada desse script quando você baixá-lo, todos os arquivos que podem ser potencialmente criados como resultado de seu uso deste script, juntamente com uma breve descrição do que todos esses arquivos são. Essas informações se aplicam à versão v1 mais recente, e podem não ser tão relevantes para outras versões. Arquivo | Descrição
----|----
/_docs/ | Documentação diretório (contém vários arquivos).
/_docs/readme.ar.md | Documentação Árabe.
/_docs/readme.de.md | Documentação Alemão.
/_docs/readme.en.md | Documentação Inglês.
/_docs/readme.es.md | Documentação Espanhol.
/_docs/readme.fr.md | Documentação Francesa.
/_docs/readme.id.md | Documentação Indonésio.
/_docs/readme.it.md | Documentação Italiano.
/_docs/readme.ja.md | Documentação Japonesa.
/_docs/readme.ko.md | Documentação Coreana.
/_docs/readme.nl.md | Documentação Holandês.
/_docs/readme.pt.md | Documentação Português.
/_docs/readme.ru.md | Documentação Russo.
/_docs/readme.ur.md | Documentação Urdu.
/_docs/readme.vi.md | Documentação Vietnamita.
/_docs/readme.zh-TW.md | Documentação Chinês (tradicional).
/_docs/readme.zh.md | Documentação Chinês (simplificado).
/_testfiles/ | Diretório de arquivos de teste (contém vários arquivos). Todos os arquivos contidos são arquivos teste para testar se phpMussel foi instalado corretamente no seu sistema, e você não precisa carregar desse diretório ou quaisquer de seus arquivos, exceto ao fazer tais testes.
/_testfiles/ascii_standard_testfile.txt | Arquivo teste para testar phpMussel assinaturas normalizadas ASCII.
/_testfiles/coex_testfile.rtf | Arquivo teste para testar phpMussel assinaturas complexas estendidas.
/_testfiles/exe_standard_testfile.exe | Arquivo teste para testar phpMussel PE assinaturas.
/_testfiles/general_standard_testfile.txt | Arquivo teste para testar phpMussel gerais assinaturas.
/_testfiles/graphics_standard_testfile.gif | Arquivo teste para testar phpMussel gráficas assinaturas.
/_testfiles/html_standard_testfile.html | Arquivo teste para testar phpMussel normalizada HTML assinaturas.
/_testfiles/md5_testfile.txt | Arquivo teste para testar phpMussel MD5 assinaturas.
/_testfiles/ole_testfile.ole | Teste arquivo para testar phpMussel OLE assinaturas.
/_testfiles/pdf_standard_testfile.pdf | Arquivo teste para testar phpMussel PDF assinaturas.
/_testfiles/pe_sectional_testfile.exe | Arquivo teste para testar phpMussel PE Seccional assinaturas.
/_testfiles/swf_standard_testfile.swf | Arquivo teste para testar phpMussel SWF assinaturas.
/vault/ | Vault diretório (contém vários arquivos).
/vault/cache/ | Cache diretório (para dados temporários).
/vault/cache/.htaccess | Um hipertexto acesso arquivo (neste caso, para proteger confidenciais arquivos pertencentes ao script contra serem acessados por fontes não autorizadas).
/vault/classes/ | Diretório de classes. Contém várias classes usadas pelo phpMussel.
/vault/classes/Maikuolan/ | Diretório de classes. Contém várias classes usadas pelo phpMussel.
/vault/classes/Maikuolan/Cache.php | Um manipulador de cache simples e unificado.
/vault/classes/Maikuolan/ComplexStringHandler.php | Um manipulador para cadeia complexa.
/vault/classes/Maikuolan/L10N.php | Manipulador para o L10N.
/vault/classes/Maikuolan/YAML.php | Manipulador para o YAML.
/vault/classes/.htaccess | Um hipertexto acesso arquivo (neste caso, para proteger confidenciais arquivos pertencentes ao script contra serem acessados por fontes não autorizadas).
/vault/classes/ArchiveHandler.php | Responsável pelo processamento de arquivos.
/vault/classes/CompressionHandler.php | Responsável pelo processamento da compactação de arquivos.
/vault/classes/TemporaryFileHandler.php | Responsável pela criação e processamento de arquivos temporários.
/vault/fe_assets/ | Dados front-end.
/vault/fe_assets/.htaccess | Um hipertexto acesso arquivo (neste caso, para proteger confidenciais arquivos pertencentes ao script contra serem acessados por fontes não autorizadas).
/vault/fe_assets/_2fa.html | Um modelo HTML usado ao solicitar ao usuário para um código 2FA.
/vault/fe_assets/_accounts.html | Um modelo HTML para o front-end página de contas.
/vault/fe_assets/_accounts_row.html | Um modelo HTML para o front-end página de contas.
/vault/fe_assets/_cache.html | Um modelo HTML para o front-end página do dados de cache.
/vault/fe_assets/_config.html | Um modelo HTML para o front-end página de configuração.
/vault/fe_assets/_config_row.html | Um modelo HTML para o front-end página de configuração.
/vault/fe_assets/_files.html | Um modelo HTML para o gerenciador de arquivos.
/vault/fe_assets/_files_edit.html | Um modelo HTML para o gerenciador de arquivos.
/vault/fe_assets/_files_rename.html | Um modelo HTML para o gerenciador de arquivos.
/vault/fe_assets/_files_row.html | Um modelo HTML para o gerenciador de arquivos.
/vault/fe_assets/_home.html | Um modelo HTML para o front-end página principal.
/vault/fe_assets/_login.html | Um modelo HTML para o front-end página login.
/vault/fe_assets/_logs.html | Um modelo HTML para o front-end página para os arquivos de registro.
/vault/fe_assets/_nav_complete_access.html | Um modelo HTML para os links de navegação para o front-end, para aqueles com acesso completo.
/vault/fe_assets/_nav_logs_access_only.html | Um modelo HTML para os links de navegação para o front-end, para aqueles com acesso aos arquivos de registro somente.
/vault/fe_assets/_quarantine.html | Um modelo HTML para o front-end página de quarentena.
/vault/fe_assets/_quarantine_row.html | Um modelo HTML para o front-end página de quarentena.
/vault/fe_assets/_siginfo.html | Um modelo HTML para o front-end página de informações de assinaturas.
/vault/fe_assets/_siginfo_row.html | Um modelo HTML para o front-end página de informações de assinaturas.
/vault/fe_assets/_statistics.html | Um modelo HTML para o front-end página de estatísticas.
/vault/fe_assets/_updates.html | Um modelo HTML para o front-end página de atualizações.
/vault/fe_assets/_updates_row.html | Um modelo HTML para o front-end página de atualizações.
/vault/fe_assets/_upload_test.html | Um modelo HTML para o página de carregar teste.
/vault/fe_assets/frontend.css | Folha de estilo CSS para o front-end.
/vault/fe_assets/frontend.dat | Banco de dados para o front-end (contém informações de contas e sessões; gerado só se o front-end está habilitado e usado).
/vault/fe_assets/frontend.dat.safety | Gerado como um mecanismo de segurança quando necessário.
/vault/fe_assets/frontend.html | O arquivo modelo HTML principal para o front-end.
/vault/fe_assets/icons.php | Módulo de ícones (usado pelo gerenciador de arquivos do front-end).
/vault/fe_assets/pips.php | Módulo de pips (usado pelo gerenciador de arquivos do front-end).
/vault/fe_assets/scripts.js | Contém dados de JavaScript do front-end.
/vault/lang/ | Contém dados lingüísticos.
/vault/lang/.htaccess | Um hipertexto acesso arquivo (neste caso, para proteger confidenciais arquivos pertencentes ao script contra serem acessados por fontes não autorizadas).
/vault/lang/lang.ar.fe.php | Dados lingüísticos Árabe para o front-end.
/vault/lang/lang.ar.php | Dados lingüísticos Árabe.
/vault/lang/lang.bn.fe.php | Dados lingüísticos Bangla para o front-end.
/vault/lang/lang.bn.php | Dados lingüísticos Bangla.
/vault/lang/lang.de.fe.php | Dados lingüísticos Alemão para o front-end.
/vault/lang/lang.de.php | Dados lingüísticos Alemão.
/vault/lang/lang.en.fe.php | Dados lingüísticos Inglês para o front-end.
/vault/lang/lang.en.php | Dados lingüísticos Inglês.
/vault/lang/lang.es.fe.php | Dados lingüísticos Espanhol para o front-end.
/vault/lang/lang.es.php | Dados lingüísticos Espanhol.
/vault/lang/lang.fr.fe.php | Dados lingüísticos Francesa para o front-end.
/vault/lang/lang.fr.php | Dados lingüísticos Francesa.
/vault/lang/lang.hi.fe.php | Dados lingüísticos Hindi para o front-end.
/vault/lang/lang.hi.php | Dados lingüísticos Hindi.
/vault/lang/lang.id.fe.php | Dados lingüísticos Indonésio para o front-end.
/vault/lang/lang.id.php | Dados lingüísticos Indonésio.
/vault/lang/lang.it.fe.php | Dados lingüísticos Italiano para o front-end.
/vault/lang/lang.it.php | Dados lingüísticos Italiano.
/vault/lang/lang.ja.fe.php | Dados lingüísticos Japonês para o front-end.
/vault/lang/lang.ja.php | Dados lingüísticos Japonês.
/vault/lang/lang.ko.fe.php | Dados lingüísticos Coreano para o front-end.
/vault/lang/lang.ko.php | Dados lingüísticos Coreano.
/vault/lang/lang.nl.fe.php | Dados lingüísticos Holandês para o front-end.
/vault/lang/lang.nl.php | Dados lingüísticos Holandês.
/vault/lang/lang.pt.fe.php | Dados lingüísticos Português para o front-end.
/vault/lang/lang.pt.php | Dados lingüísticos Português.
/vault/lang/lang.ru.fe.php | Dados lingüísticos Russo para o front-end.
/vault/lang/lang.ru.php | Dados lingüísticos Russo.
/vault/lang/lang.th.fe.php | Dados lingüísticos Tailandês para o front-end.
/vault/lang/lang.th.php | Dados lingüísticos Tailandês.
/vault/lang/lang.tr.fe.php | Dados lingüísticos Turco para o front-end.
/vault/lang/lang.tr.php | Dados lingüísticos Turco.
/vault/lang/lang.ur.fe.php | Dados lingüísticos Urdu para o front-end.
/vault/lang/lang.ur.php | Dados lingüísticos Urdu.
/vault/lang/lang.vi.fe.php | Dados lingüísticos Vietnamita para o front-end.
/vault/lang/lang.vi.php | Dados lingüísticos Vietnamita.
/vault/lang/lang.zh-tw.fe.php | Dados lingüísticos Chinês (tradicional) para o front-end.
/vault/lang/lang.zh-tw.php | Dados lingüísticos Chinês (tradicional).
/vault/lang/lang.zh.fe.php | Dados lingüísticos Chinês (simplificado) para o front-end.
/vault/lang/lang.zh.php | Dados lingüísticos Chinês (simplificado).
/vault/quarantine/ | Diretório de quarentena (contém os arquivos em quarentena).
/vault/quarantine/.htaccess | Um hipertexto acesso arquivo (neste caso, para proteger confidenciais arquivos pertencentes ao script contra serem acessados por fontes não autorizadas).
/vault/signatures/ | Diretório de assinaturas (contém arquivos de assinaturas).
/vault/signatures/.htaccess | Um hipertexto acesso arquivo (neste caso, para proteger confidenciais arquivos pertencentes ao script contra serem acessados por fontes não autorizadas).
/vault/signatures/switch.dat | Isto controla e define algumas variáveis.
/vault/.htaccess | Um hipertexto acesso arquivo (neste caso, para proteger confidenciais arquivos pertencentes ao script contra serem acessados por fontes não autorizadas).
/vault/.travis.php | Usado pela Travis CI para testes (não é necessário para o correto funcionamento do script).
/vault/.travis.yml | Usado pela Travis CI para testes (não é necessário para o correto funcionamento do script).
/vault/cli.php | Módulo de CLI.
/vault/components.dat | Arquivo de metadados de componentes; Usado pela página de atualizações do front-end.
/vault/config.ini.RenameMe | Arquivo de configuração; Contém todas as opções de configuração para phpMussel, dizendo-lhe o que fazer e como operar corretamente (renomear para ativar).
/vault/config.php | Módulo de configuração.
/vault/config.yaml | Arquivo de valores padrão para a configuração; Contém valores padrão para a configuração de phpMussel.
/vault/frontend.php | Módulo do front-end.
/vault/frontend_functions.php | Arquivo de funções do front-end.
/vault/functions.php | Arquivo de funções.
/vault/greylist.csv | Um arquivo indicando a phpMussel quais assinaturas deve ser ignorado (arquivo automaticamente recriado se deletado).
/vault/lang.php | Dados lingüísticos.
/vault/php5.4.x.php | Polyfills para PHP 5.4.X (necessário para compatibilidade reversa com PHP 5.4.X; seguro para deletar por versões de PHP mais recentes).
/vault/plugins.dat | Arquivo de metadados de plug-ins; Usado pela página de atualizações do front-end.
? /vault/scan_kills.txt | Um registro de tudos os arquivos carregamentos bloqueado ou matado por phpMussel.
? /vault/scan_log.txt | Um registro de tudo analisado por phpMussel.
? /vault/scan_log_serialized.txt | Um registro de tudo analisado por phpMussel.
/vault/shorthand.yaml | Contém vários identificadores de assinatura a serem processados pelo phpMussel ao interpretar a abreviação de assinatura durante uma análise, e ao acessar informações de assinaturas por meio do front-end.
/vault/signatures.dat | Arquivo de metadados de assinaturas; Usado pela página de atualizações do front-end.
/vault/template_custom.html | Template arquivo; Template por HTML produzido através do phpMussel por o bloqueado arquivo carregamento mensagem (a mensagem visto por o carregador).
/vault/template_default.html | Template arquivo; Template por HTML produzido através do phpMussel por o bloqueado arquivo carregamento mensagem (a mensagem visto por o carregador).
/vault/themes.dat | Arquivo de metadados de temas; Usado pela página de atualizações do front-end.
/vault/upload.php | Módulo de carregamento.
/.gitattributes | Um arquivo do GitHub projeto (não é necessário para o correto funcionamento do script).
/.gitignore | Um arquivo do GitHub projeto (não é necessário para o correto funcionamento do script).
/Changelog-v1.txt | Um registro das mudanças feitas para o script entre o diferentes versões (não é necessário para o correto funcionamento do script).
/composer.json | Composer/Packagist informação (não é necessário para o correto funcionamento do script).
/CONTRIBUTING.md | Informações sobre como contribuir para o projeto.
/LICENSE.txt | Uma cópia da GNU/GPLv2 licença (não é necessário para o correto funcionamento do script).
/loader.php | O carregador. Isto é o que você deveria ser enganchando em (essencial)!
/PEOPLE.md | Informações sobre as pessoas envolvidas no projeto.
/README.md | Informações do projeto em sumário.
/web.config | Um arquivo de configuração para ASP.NET (neste caso, para protegendo o ? Nome de arquivos podem variar baseado em estipulações de configuração (referem-se a 7. <a name="SECTION7"></a>OPÇÕES DE CONFIGURAÇÃOO seguinte é uma lista de variáveis encontradas no general | signatures | files | attack_specific :--|:--|:--|:-- cleanup<br />scan_log<br />scan_log_serialized<br />scan_kills<br />truncate<br />log_rotation_limit<br />log_rotation_action<br />timezone<br />timeOffset<br />timeFormat<br />ipaddr<br />enable_plugins<br />forbid_on_block<br />delete_on_sight<br />lang<br />numbers<br />quarantine_key<br />quarantine_max_filesize<br />quarantine_max_usage<br />quarantine_max_files<br />honeypot_mode<br />scan_cache_expiry<br />disable_cli<br />disable_frontend<br />max_login_attempts<br />FrontEndLog<br />disable_webfonts<br />maintenance_mode<br />default_algo<br />statistics<br /> | Active<br />fail_silently<br />fail_extensions_silently<br />detect_adware<br />detect_joke_hoax<br />detect_pua_pup<br />detect_packer_packed<br />detect_shell<br />detect_deface<br />detect_encryption<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /> | max_uploads<br />filesize_limit<br />filesize_response<br />filetype_whitelist<br />filetype_blacklist<br />filetype_greylist<br />check_archives<br />filesize_archives<br />filetype_archives<br />max_recursion<br />block_encrypted_archives<br />max_files_in_archives<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /> | chameleon_from_php<br />can_contain_php_file_extensions<br />chameleon_from_exe<br />chameleon_to_archive<br />chameleon_to_doc<br />chameleon_to_img<br />chameleon_to_pdf<br />archive_file_extensions<br />block_control_characters<br />corrupted_exe<br />decode_threshold<br />scannable_threshold<br />allow_leading_trailing_dots<br />block_macros<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /> compatibility | heuristic | virustotal | urlscanner ignore_upload_errors<br />only_allow_images<br /><br /><br /><br /> | threshold<br /><br /><br /><br /><br /> | vt_public_api_key<br />vt_suspicion_level<br />vt_weighting<br />vt_quota_rate<br />vt_quota_time<br /> | lookup_hphosts<br />google_api_key<br />maximum_api_lookups<br />maximum_api_lookups_response<br />cache_time<br /> legal | template_data | PHPMailer | supplementary_cache_options pseudonymise_ip_addresses<br />privacy_policy<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /> | theme<br />Magnification<br />css_url<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /> | EventLog<br />SkipAuthProcess<br />Enable2FA<br />Host<br />Port<br />SMTPSecure<br />SMTPAuth<br />Username<br />Password<br />setFromAddress<br />setFromName<br />addReplyToAddress<br />addReplyToName<br /> | enable_apcu<br />enable_memcached<br />enable_redis<br />enable_pdo<br />memcached_host<br />memcached_port<br />redis_host<br />redis_port<br />redis_timeout<br />pdo_dsn<br />pdo_username<br />pdo_password<br /><br /> "general" (Categoria)Configuração geral por phpMussel. "cleanup"
"scan_log"
"scan_log_serialized"
"scan_kills"
Dica útil: Se você quiser, você pode acrescentar informações tempo/hora aos nomes dos seus arquivos de registro através incluir estas em nome: Exemplos:
- "truncate"
"log_rotation_limit"
"log_rotation_action"
Esclarecimento técnico: Neste contexto, "mais antigo" significa modificado menos recentemente. "timezone"
"timeOffset"
"timeFormat"
"ipaddr"
Valores recomendados para "ipaddr": Valor | Usando
---|---
"enable_plugins"
"forbid_on_block"
"delete_on_sight"
"lang"
"numbers"
Valores atualmente suportados: Valor | Produz | Descrição
---|---|---
Nota: Esses valores não são padronizados em nenhum lugar, e provavelmente não serão relevantes além do pacote. Adicionalmente, os valores suportados podem mudar no futuro. "quarantine_key"
"quarantine_max_filesize"
"quarantine_max_usage"
"quarantine_max_files"
"honeypot_mode"
"scan_cache_expiry"
"disable_cli"
"disable_frontend"
"max_login_attempts"
"FrontEndLog"
"disable_webfonts"
"maintenance_mode"
"default_algo"
"statistics"
"signatures" (Categoria)Configuração por assinaturas. "Active"
Nota: - Arquivos de assinatura devem ser instalados primeiro, antes de você poder ativá-los. - Para que os arquivos de teste funcionem corretamente, os arquivos de assinatura devem ser instalados e ativados. - O valor desta diretiva é armazenado em cache. Depois de alterá-lo, para que as alterações entrem em vigor, talvez seja necessário excluir o cache. "fail_silently"
"fail_extensions_silently"
"detect_adware"
"detect_joke_hoax"
"detect_pua_pup"
"detect_packer_packed"
"detect_shell"
"detect_deface"
"detect_encryption"
"files" (Categoria)Configuração geral por a manipulação de arquivos. "max_uploads"
"filesize_limit"
"filesize_response"
"filetype_whitelist", "filetype_blacklist", "filetype_greylist"
"check_archives"
Formato | Pode ler | Pode ler recursivamente | Pode detectar criptografia | Notas ---|---|---|---|--- Zip | ?? | ?? | ?? | Requer libzip (normalmente empacotado com PHP de qualquer maneira). Também suportado (usa o formato zip): ?? Detecção de objeto OLE. ?? Detecção de macro do Office. Tar | ?? | ?? | ? | Nenhum requisito especial. O formato não suporta criptografia. Rar | ?? | ?? | ?? | Requer a extensão rar (quando esta extensão não está instalada, o phpMussel não pode ler arquivos rar). 7zip | ? | ? | ? | Ainda atualmente investigando como ler arquivos 7zip no phpMussel. Phar | ? | ? | ? | O suporte para leitura de arquivos phar foi removido na v1.6.0, e não será adicionado novamente, devido a preocupações de segurança. Se alguém puder e estiver disposto a ajudar a implementar o suporte para ler outros formatos de arquivo, essa ajuda será bem-vinda. "filesize_archives"
"filetype_archives"
"max_recursion"
"block_encrypted_archives"
"max_files_in_archives"
"attack_specific" (Categoria)Configuração por específicas ataque detecções. A detecção de ataques de camaleão: False = Inativo; True = Ativo. "chameleon_from_php"
"can_contain_php_file_extensions"
"chameleon_from_exe"
"chameleon_to_archive"
"chameleon_to_doc"
"chameleon_to_img"
"chameleon_to_pdf"
"archive_file_extensions"
"block_control_characters"
"corrupted_exe"
"decode_threshold"
"scannable_threshold"
"allow_leading_trailing_dots"
"block_macros"
"compatibility" (Categoria)Compatibilidade directivas por phpMussel. "ignore_upload_errors"
"only_allow_images"
"heuristic" (Categoria)Heurísticos directivas para phpMussel. "threshold"
"virustotal" (Categoria)Configuração para Virus Total integração. "vt_public_api_key"
Notar: Se a verificação de arquivos usando o Virus Total de API está desativado, você não será necessitar de rever alguma das directivas nesta categoria ( "vt_suspicion_level"
Notar: Independentemente do nível de suspeita, todos os arquivos que estão na blacklist ou whitelisted por phpMussel não serão analisados usando o Virus Total API, porque esses tais arquivos que já foram declaradas como quer malicioso ou benigno por phpMussel no momento em que eles teriam sido de caso contrário analisada pelo Virus Total API, e por conseguinte, análise adicional não seria necessário. A capacidade de phpMussel para verificar arquivos usando o Virus Total API é destinado para construir confiança em relação a se um arquivo é malicioso ou benigno nas circunstâncias em que phpMussel não é totalmente certo se um arquivo é malicioso ou benigno. "vt_weighting"
"vt_quota_rate" e "vt_quota_time"
"urlscanner" (Categoria)Um URL analisador está incluído com phpMussel, capaz de detectar URLs maliciosos dentro de todos os dados ou arquivos analisados. Notar: Se o URL analisador é desativado, você não terá que rever alguma das directivas nesta categoria ( URL analisador API uso configuração. "lookup_hphosts"
"google_api_key"
"maximum_api_lookups"
"maximum_api_lookups_response"
"cache_time"
"legal" (Categoria)Configuração relacionada aos requisitos legais. Para obter mais informações sobre requisitos legais e como isso pode afetar seus requisitos de configuração, consulte a seção "INFORMAÇÃO LEGAL" da documentação. "pseudonymise_ip_addresses"
"privacy_policy"
"template_data" (Categoria)Directivas/Variáveis para modelos e temas. Os template dados está associada com o HTML usado para gerar a "Carregar Negado" mensagem exibida aos usuários quando arquivos carregamentos são bloqueados. Se você estiver usando temas personalizados para phpMussel, HTML é originado a partir do "theme"
"Magnification"
"css_url"
"PHPMailer" (Categoria)Configuração do PHPMailer. Atualmente, o phpMussel usa o PHPMailer apenas para autenticação de dois fatores front-end. Se você não usa o front-end, ou se você não usa a autenticação de dois fatores para o front-end, você pode ignorar essas diretivas. "EventLog"
"SkipAuthProcess"
"Enable2FA"
"Host"
"Port"
"SMTPSecure"
"SMTPAuth"
"Username"
"Password"
"setFromAddress"
"setFromName"
"addReplyToAddress"
"addReplyToName"
"supplementary_cache_options" (Categoria)Opções suplementares de cache. Atualmente, isso é extremamente experimental, e pode não se comportar como esperado! Por enquanto, recomendo ignorá-lo. "enable_apcu"
"enable_memcached"
"enable_redis"
"enable_pdo"
"memcached_host"
"memcached_port"
"redis_host"
"redis_port"
"redis_timeout"
"pdo_dsn"
"pdo_username"
"pdo_password"
8. <a name="SECTION8"></a>FORMATOS DE ASSINATURASVeja também: - O que é uma "assinatura"? Os primeiros 9 bytes Tipo | Byte | Descrição
---|---|---
O próximo byte Cada linha não vazia depois disso é uma assinatura ou regra. Cada assinatura ou regra ocupa uma linha. Os formatos de assinatura suportados são descritos abaixo. ASSINATURAS DE ARQUIVO NOMETodas as assinaturas de arquivo nome seguir o formato:
Onde NOME é o nome para citar por essa assinatura e FNRX é o regex para verificar arquivos nomes (não codificados) contra. ASSINATURAS HASHTodas as assinaturas hash seguir o formato:
Onde HASH é o hash (geralmente MD5) de um inteiro arquivo, TAMANHO é o total tamanho do arquivo e NOME é o nome para citar por essa assinatura. ASSINATURAS PE SECCIONALTodas as assinaturas PE Seccional seguir o formato:
Onde HASH é o hash MD5 de uma seção do PE arquivo, TAMANHO é o total tamanho da seção e NOME é o nome para citar por essa assinatura. ASSINATURAS PE ESTENDIDASTodas as assinaturas PE estendidas seguir o formato:
Onde $VAR é o nome da PE variável para verificar contra, HASH é o MD5 dessa variável, TAMANHO é o tamanho total dessa variável e NOME é o nome para citar por essa assinatura. COMPLEXOS ESTENDIDAS ASSINATURASComplexos estendidas assinaturas são bastante diferente para os outros tipos de assinaturas possíveis com phpMussel em que o que eles estão verificando contra é especificado pelas assinaturas e eles podem verificar contra vários critérios. Os critérios de verificação são delimitados por ";" e o verificação tipo e os verificação dados de cada verificação critérios é delimitados por ":" como assim que o formato por estas assinaturas tende a olhar um pouco assim:
TODAS OUTRASTodas as outras assinaturas seguir o formato:
Onde NOME é o nome para citar por essa assinatura e HEX é um hexadecimal codificado segmento do arquivo intentado a ser correspondido pela dado assinatura. TO e FROM são opcionais parâmetros, indicando de onde e para quais posições nos origem dados para verificar contra. REGEX (REGULAR EXPRESSIONS)Qualquer forma de regex compreendido e processado corretamente pelo PHP também deve ser correctamente compreendido e processado por phpMussel e suas assinaturas. Mas, eu sugiro tomar extremo cuidado quando escrevendo novas assinaturas baseadas regex, porque, se você não está inteiramente certo do que está fazendo, isto pode tem altamente irregulares e inesperadas resultados. Olha para o código-fonte de phpMussel Se você não está totalmente certo sobre o contexto em que as regex declarações são processada. Além, lembre-se que todos isso (com exceção para arquivo nome, compactado arquivo metadados, MD5 a sintaxe) deve ser codificado hexadecimalmente! 9. <a name="SECTION9"></a>CONHECIDOS COMPATIBILIDADE PROBLEMASPHP e PCRE
ANTIVÍRUS SOFTWARE COMPATIBILIDADEEm geral, phpMussel deve ser bastante compatível com a maioria dos outros vírus detecção softwares. Embora, conflitos foram relatadas por um número de utilizadores no passado. Esta informação abaixo é de VirusTotal.com, e descreve um número de falso-positivos relatados por vários antivírus programas contra phpMussel. Embora esta informação não é um absoluta garantia de haver ou não você vai encontrar problemas de compatibilidade entre phpMussel e seu antivírus software, se o seu antivírus software é conhecido como sinalização contra phpMussel, você deve considerar desativá-lo antes de trabalhar com phpMussel ou deve considerar alternativas opções para o seu antivírus software ou phpMussel. Esta informação foi atualizada 2018.10.09 e é corrente para todas phpMussel lançamentos das duas mais recentes menores versões (v1.5.0-v1.6.0) no momento de escrever este. Esta informação aplica-se apenas ao pacote principal. Os resultados podem variar de acordo com arquivos de assinatura instalados, plugins, e outros componentes periféricos. | Analisador | Resultados | |---|---| | Bkav | Reportar "VEX.Webshell" | 10. <a name="SECTION10"></a>PERGUNTAS MAIS FREQUENTES (FAQ)
<a name="WHAT_IS_A_SIGNATURE"></a>O que é uma "assinatura"?No contexto do phpMussel, uma "assinatura" refere-se a dados que actuam como um indicador/identificador para algo específico que estamos procurando, geralmente sob a forma de um segmento muito pequeno, distinto e inócuo de algo maior e em caso contrário prejudiciais, como um vírus ou um trojan, ou na forma de um checksum de arquivo, hash, ou outro indicador de identificação semelhante, e geralmente inclui uma etiqueta, e alguns outros dados para ajudar a fornecer contexto adicional que pode ser usado por phpMussel para determinar a melhor maneira de proceder quando ele encontra o que estamos procurando. <a name="WHAT_IS_A_FALSE_POSITIVE"></a>O que é um "falso positivo"?O termo "falso positivo" (alternativamente: "erro de falso positivo"; "alarme falso"; Inglês: false positive; false positive error; false alarm), descrita de maneira muito simples, e num contexto generalizado, são usadas quando testando para uma condição, para se referir aos resultados desse teste, quando os resultados são positivos (isto é, a condição é determinada para ser "positivo", ou "verdadeiro"), mas espera-se que seja (ou deveria ter sido) negativo (isto é, a condição, na realidade, é "negativo", ou "falso"). Um "falso positivo" pode ser considerado análogo ao "chorando lobo" (em que a condição que está sendo testada é se existe um lobo perto do rebanho, a condição é "falso" em que não há nenhum lobo perto do rebanho, ea condição é relatada como "positivo" pelo pastor por meio de gritando "lobo, lobo"), ou análoga a situações em exames médicos em que um paciente é diagnosticado como tendo alguma doença quando, na realidade, eles não têm essa doença. Os resultados relacionados a quando testando para uma condição pode ser descrito usando os termos "verdadeiro positivo", "verdadeiro negativo" e "falso negativo". Um "verdadeiro positivo" refere-se a quando os resultados do teste ea real situação da condição são ambos verdadeiros (ou "positivos"), e um "verdadeiro negativo" refere-se a quando os resultados do teste ea real situação da condição são ambos falsos (ou "negativos"); Um "verdadeiro positivo" ou um "verdadeiro negativo" é considerado como sendo uma "inferência correcta". A antítese de um "falso positivo" é um "falso negativo"; Um "falso negativo" refere-se a quando os resultados do teste are negativo (isto é, a condição é determinada para ser "negativo", ou "falso"), mas espera-se que seja (ou deveria ter sido) positivo (isto é, a condição, na realidade, é "positivo", ou "verdadeiro"). No contexto da phpMussel, estes termos referem-se as assinaturas de phpMussel e os arquivos que eles bloqueiam. Quando phpMussel bloquear um arquivo devido ao mau, desatualizados ou incorretos assinatura, mas não deveria ter feito isso, ou quando ele faz isso pelas razões erradas, nos referimos a este evento como um "falso positivo". Quando phpMussel não consegue bloquear um arquivo que deveria ter sido bloqueado, devido a ameaças imprevistas, assinaturas em falta ou déficits em suas assinaturas, nos referimos a este evento como um "detecção em falta" ou "missing detection" (que é análogo a um "falso negativo"). Isto pode ser resumido pela seguinte tabela: | phpMussel NÃO deve bloquear um arquivo | phpMussel DEVE bloquear um arquivo ---|---|--- phpMussel NÃO bloquear um arquivo | Verdadeiro negativo (inferência correcta) | Detecção em falta (análogo a um falso negativo) phpMussel FAZ bloquear um arquivo | __Falso positivo__ | Verdadeiro positivo (inferência correcta) <a name="SIGNATURE_UPDATE_FREQUENCY"></a>Com que frequência as assinaturas são atualizadas?A frequência das atualizações varia de acordo com os arquivos de assinatura em questão. Todos os mantenedores dos arquivos de assinatura de phpMussel geralmente tentam manter suas assinaturas atualizadas como é possível, mas devido a que todos nós temos vários outros compromissos, nossas vidas fora do projeto, e devido a que nenhum de nós é financeiramente compensado (ou pago) para nossos esforços no projeto, um cronograma de atualização preciso não pode ser garantido. Geralmente, as assinaturas são atualizadas sempre que há tempo suficiente para atualizá-las. Assistência é sempre apreciada se você estiver disposto a oferecer qualquer. <a name="ENCOUNTERED_PROBLEM_WHAT_TO_DO"></a>Eu encontrei um problema ao usar phpMussel e eu não sei o que fazer sobre isso! Ajude-me!
<a name="MINIMUM_PHP_VERSION"></a>Eu quero usar phpMussel (antes de v2) com uma versão PHP mais velha do que 5.4.0; Você pode ajudar?Não. PHP >= 5.4.0 é um requisito mínimo para phpMussel < v2. <a name="MINIMUM_PHP_VERSION_V2"></a>Eu quero usar phpMussel (v2) com uma versão PHP mais velha do que 7.2.0; Você pode ajudar?Não. PHP >= 7.2.0 é um requisito mínimo para phpMussel v2. Veja também: Gráficos de Compatibilidade. <a name="PROTECT_MULTIPLE_DOMAINS"></a>Posso usar uma única instalação do phpMussel para proteger vários domínios?Sim. As instalações do phpMussel não estão naturalmente atado com domínios específicos, e pode, portanto, ser usado para proteger vários domínios. Geralmente, referimo-nos a instalações do phpMussel que protegem apenas um domínio como "instalações de singular-domínio", e referimo-nos a instalações do phpMussel que protegem vários domínios e/ou subdomínios como "instalações multi-domínio". Se você operar uma instalação multi-domínio e precisa usar conjuntos diferentes de arquivos de assinaturas para domínios diferentes, ou precisam phpMussel para ser configurado de forma diferente para domínios diferentes, é possível fazer isso. Depois de carregar o arquivo de configuração ( <a name="PAY_YOU_TO_DO_IT"></a>Eu não quero mexer com a instalação deste e fazê-lo funcionar com o meu site; Posso pagar-te para fazer tudo por mim?Talvez. Isso é considerado caso a caso. Deixe-nos saber do que você precisa, o que você está oferecendo, e nós vamos deixar você saber se podemos ajudar. <a name="HIRE_FOR_PRIVATE_WORK"></a>Posso contratar você ou qualquer um dos desenvolvedores deste projeto para o trabalho privado?Veja acima. <a name="SPECIALIST_MODIFICATIONS"></a>Preciso de modificações especializadas, customizações, etc; Você pode ajudar?Veja acima. <a name="ACCEPT_OR_OFFER_WORK"></a>Eu sou um desenvolvedor, designer de site, ou programador. Posso aceitar ou oferecer trabalho relacionado a este projeto?Sim. Nossa licença não proíbe isso. <a name="WANT_TO_CONTRIBUTE"></a>Quero contribuir para o projeto; Posso fazer isso?Sim. As contribuições para o projeto são muito bem-vindas. Consulte "CONTRIBUTING.md" para obter mais informações. <a name="SCAN_DEBUGGING"></a>Como acessar detalhes específicos sobre os arquivos quando eles são analisados?Você pode acessar detalhes específicos sobre arquivos quando eles são analisados, atribuindo uma matriz para usar para esse propósito antes de instruir o phpMussel para analisá-los. No exemplo abaixo,
A matriz é uma matriz multidimensional consistindo em elementos que representam cada arquivo sendo analisado e subelementos que representam os detalhes sobre esses arquivos. Esses subelementos são os seguintes:
? - Não fornecido com os resultados em cache (fornecido para novos resultados de análise apenas). ? - Fornecido ao analisar arquivos PE apenas. Opcionalmente, esta matriz pode ser destruída usando o seguinte:
<a name="CRON_TO_UPDATE_AUTOMATICALLY"></a>Posso usar o cron para atualizar automaticamente?Sim. Uma API é integrada no front-end para interagir com a página de atualizações por meio de scripts externos. Um script separado, "Cronable", está disponível, e pode ser usado pelo seu cron manager ou cron scheduler para atualizar este e outros pacotes suportados automaticamente (este script fornece sua própria documentação). <a name="SCAN_NON_ANSI"></a>O phpMussel pode analisar arquivos com nomes não-ANSI?Digamos que haja um diretório que você queira analisar. Neste diretório, você tem alguns arquivos com nomes não-ANSI.
- Vamos supor que você esteja usando o modo CLI ou a API do phpMussel para fazer a análise. Ao usar o PHP < 7.1.0, em alguns sistemas, o phpMussel não verá esses arquivos ao tentar analisar o diretório e, portanto, não conseguirá analisar esses arquivos. Você provavelmente verá os mesmos resultados como se fosse analisar um diretório vazio:
Além disso, ao usar o PHP < 7.1.0, analisando os arquivos individualmente produz resultados como estes:
Ou estes:
Isto é devido à maneira como o PHP lidou com nomes de arquivos não-ANSI antes do PHP 7.1.0. Se você tiver esse problema, a solução é atualizar sua instalação do PHP para 7.1.0 ou mais recente. No PHP >= 7.1.0, nomes de arquivos não-ANSI são tratados melhor, e o phpMussel deve ser capaz de analisar os arquivos corretamente. Para comparação, os resultados ao tentar analisar o diretório usando PHP >= 7.1.0:
E tentando analisar os arquivos individualmente:
<a name="BLACK_WHITE_GREY"></a>Blacklists (listas negras) ? Whitelists (listas brancas) ? Greylists (listas cinzentas) ? Quais são eles e como eu os uso?Os termos têm diferentes significados em diferentes contextos. No phpMussel, existem três contextos em que esses termos são usados: Resposta do tamanho do arquivo, resposta do tipo de arquivo, e a lista cinza das assinaturas. A fim de alcançar um resultado desejado a um custo mínimo para o processamento, existem algumas coisas simples que o phpMussel pode verificar antes de realmente verificar os arquivos, como tamanho, nome e extensão de um arquivo. Por exemplo; Se um arquivo é muito grande, ou se sua extensão indicar um tipo de arquivo que não queremos permitir em nossos sites de qualquer maneira, podemos marcar o arquivo imediatamente e não há necessidade de analisá-lo. A resposta do tamanho do arquivo é a maneira como o phpMussel responde quando um arquivo excede um limite especificado. Embora nenhuma lista real esteja envolvida, um arquivo pode ser considerado na lista negra, na lista branca, ou na lista cinza, com base em seu tamanho. Existem duas diretivas de configuração opcionais separadas para especificar um limite e uma resposta desejada, respectivamente. A resposta do tipo de arquivo é a maneira como o phpMussel responde à extensão do arquivo. Existem três diretivas de configuração opcionais separadas para especificar explicitamente quais extensões devem ser colocadas na lista negra, na lista de branca, ou na lista cinza. Um arquivo pode ser considerado na lista negra, na lista de branca, ou na lista cinza, se sua extensão corresponder a qualquer uma das extensões especificadas, respectivamente. Nestes dois contextos, a lista branca significa que não deve ser analisada ou marcada; estar na lista negra significa que deve ser marcada (e que, portanto, não precisamos analisá-lo); e estar na lista cinza significa uma análise mais aprofundada é necessária para determinar se devemos marcá-lo (isto é, deve ser analisado). A lista cinza da assinaturas é uma lista de assinaturas que devem ser essencialmente ignoradas (isso é brevemente mencionado anteriormente na documentação). Quando uma assinatura na lista cinza é desencadeadas, o phpMussel continua a trabalhar através de suas assinaturas e não toma nenhuma ação específica em relação à assinatura na lista cinza. Não há lista negra da assinaturas, porque o comportamento implícito é o comportamento normal para assinaturas desencadeadas de qualquer maneira, e não há lista branca da assinaturas, porque o comportamento implícito não faria realmente sentido em relação ao funcionamento normal do phpMussel e aos recursos que ele já possui. A lista de cinza da assinaturas é útil se você precisar resolver problemas causados por uma assinatura específica sem desabilitar ou desinstalar todo os arquivo do assinaturas. <a name="CHANGE_COMPONENT_SORT_ORDER"></a>Quando eu ativar ou desativar os arquivos de assinatura através da página de atualizações, eles os classificam alfanumericamente na configuração. Posso mudar a maneira como eles são classificados?Sim. Se você precisar forçar alguns arquivos a serem executados numa ordem específica, você pode adicionar alguns dados arbitrários antes de seus nomes na diretiva de configuração, onde eles estão listados, separados por dois pontos. Quando a página de atualizações subseqüentemente classifica os arquivos novamente, esses dados arbitrários adicionados afetarão a ordem de classificação, fazendo com que eles sejam executados na ordem que você deseja, sem precisar renomear nenhum deles. Por exemplo, assumindo uma diretiva de configuração com arquivos listados da seguinte maneira:
Se você queria
Então, se um novo arquivo,
Mesma situação quando um arquivo é desativado. Por outro lado, se você quiser que o arquivo seja executado por último, você poderia adicionar algo como 11. <a name="SECTION11"></a>INFORMAÇÃO LEGAL11.0 PREÂMBULO DE SEÇÃOEsta seção da documentação destina-se a descrever possíveis considerações legais em relação ao uso e implementação do pacote, e fornecer algumas informações básicas relacionadas. Isso pode ser importante para alguns usuários como um meio de garantir a conformidade com quaisquer requisitos legais que possam existir nos países nos quais eles operam, e alguns usuários podem precisar ajustar as políticas do site de acordo com essas informações. Em primeiro lugar por favor, perceba que eu (o autor do pacote) não sou advogado, nem profissional legal qualificado de qualquer tipo. Portanto, não estou legalmente qualificado para fornecer aconselhamento jurídico. Além disso, em alguns casos, exigências legais exatas podem variar entre diferentes países e jurisdições, e estes requisitos legais variados podem, às vezes, conflitar (como, por exemplo, no caso de países que defendem os direitos de privacidade e o direito de ser esquecido, versus países que favorecem a retenção prolongada de dados). Considere também que o acesso ao pacote não está restrito a países ou jurisdições específicos e, portanto, o pacote userbase é provável que seja geograficamente diverso. Estes pontos considerados, eu não estou em posição de afirmar o que significa ser "legalmente compatível" para todos os usuários, em todos os aspectos. No entanto, espero que as informações aqui contidas o ajudem a chegar a uma decisão sobre o que você deve fazer para permanecer legalmente conforme no contexto do pacote. Se tiver alguma dúvida ou preocupação em relação às informações aqui contidas, ou se você precisar de ajuda e conselhos adicionais de uma perspectiva legal, eu recomendaria consultar um profissional legal qualificado. 11.1 RESPONSABILIDADEConforme já declarado pela licença do pacote, o pacote é fornecido sem qualquer garantia. Isso inclui (mas não está limitado a) todo o escopo de responsabilidade. O pacote é fornecido a você para sua conveniência, na esperança de que seja útil e que traga algum benefício para você. Entretanto, se você usa ou implementa o pacote, é sua própria escolha. Você não é forçado a usar ou implementar o pacote, mas, quando o faz, você é responsável por essa decisão. Nem eu, nem qualquer outro colaborador do pacote, somos legalmente responsáveis pelas consequências das decisões que você toma, independentemente de ser direto, indireto, implícito, ou de outra forma. 11.2 TERCEIROSDependendo de sua configuração e implementação exatas, o pacote pode se comunicar e compartilhar informações com terceiros em alguns casos. Essas informações podem ser definidas como "informação pessoalmente identificável" (PII) em alguns contextos, por algumas jurisdições. Como esta informação pode ser usada por estes terceiros, está sujeita às várias políticas estabelecidas por esses terceiros, e está fora do escopo desta documentação. Contudo, em todos esses casos, o compartilhamento de informações com esses terceiros pode ser desativado. Em todos esses casos, se você optar por ativá-lo, é sua responsabilidade pesquisar quaisquer preocupações que você possa ter com relação à privacidade, segurança, e uso de PII por esses terceiros. Se houver alguma dúvida, ou se você estiver insatisfeito com a conduta desses terceiros em relação a PII, talvez seja melhor desativar todo o compartilhamento de informações com esses terceiros. Para fins de transparência, o tipo de informação compartilhada e com quem está descrito abaixo. 11.2.0 WEBFONTSAlguns temas personalizados, bem como a interface de usuário ("UI") padrão para o front-end do phpMussel e a página "Carregar Negado", podem usar webfonts por motivos estéticos. Os webfonts são desabilitados por padrão, mas, quando habilitados, ocorre comunicação direta entre o navegador do usuário e o serviço que hospeda o webfonts. Isso pode envolver informações de comunicação, tal como o endereço IP do usuário, o agente do usuário, o sistema operacional, e outros detalhes disponíveis para a solicitação. A maioria desses webfonts é hospedada pelo serviço Google Fonts. Diretivas de configuração relevantes:
- 11.2.1 URL ANALISADOROs URLs encontrados nos uploads de arquivos podem ser compartilhados com a API hpHosts ou com a API de navegação segura do Google, dependendo de como o pacote está configurado. No caso da API hpHosts, esse comportamento é ativado por padrão. A API de navegação segura do Google requer as chaves de API para funcionar corretamente e, portanto, é desativada por padrão. Diretivas de configuração relevantes:
- 11.2.2 VIRUS TOTALQuando o phpMussel analisa um upload de arquivo, os hashes desses arquivos podem ser compartilhados com a API do Virus Total, dependendo de como o pacote está configurado. Há planos para compartilhar arquivos inteiros em algum momento no futuro, mas essa funcionalidade não é suportada pelo pacote no momento. A API do Virus Total requer uma chave de API para funcionar corretamente e, portanto, está desativada por padrão. As informações (incluindo arquivos e metadados de arquivos relacionados) compartilhadas com o Virus Total também podem ser compartilhadas com seus parceiros, afiliados, e vários outros para fins de pesquisa. Isso é descrito em mais detalhes por sua política de privacidade. Vejo: Privacy Policy – VirusTotal. Diretivas de configuração relevantes:
- 11.3 REGISTROO registro é uma parte importante do phpMussel por vários motivos. Sem o registro, pode ser difícil diagnosticar falsos positivos, determinar exatamente o quão bem o phpMussel funciona em qualquer contexto específico, e determinar onde suas deficiências podem ser, e quais mudanças podem ser necessárias para sua configuração ou assinaturas de acordo, para que ele continue funcionando como pretendido. Não obstante, o registro pode não ser desejável para todos os usuários e permanece totalmente opcional. No phpMussel, o registro está desabilitado por padrão. Para ativá-lo, o phpMussel deve ser configurado de acordo. Adicionalmente, se o registro é legalmente permissível, e na medida em que é legalmente permissível (por exemplo, os tipos de informações que podem ser registradas, por quanto tempo, e sob quais circunstâncias), pode variar, dependendo da jurisdição e do contexto onde a phpMussel é implementada (por exemplo, se você está operando como indivíduo, como entidade corporativa, e se está numa base comercial ou não comercial). Portanto, pode ser útil que você leia atentamente essa seção. Existem vários tipos de registro que o phpMussel pode executar. Diferentes tipos de registro envolvem diferentes tipos de informações, por diferentes razões. 11.3.0 LOGS DE ANÁLISEQuando habilitado na configuração do pacote, o phpMussel mantém logs dos arquivos que analisa. Este tipo do registro está disponível em dois formatos diferentes: - Arquivos de log legíveis para humanos. - Arquivos de log serializados. As entradas para um arquivo de log legível para humanos geralmente se parece com isso (como um exemplo):
Uma entrada do log de análise geralmente inclui as seguintes informações: - A data e hora em que o arquivo foi analisado. - O nome do arquivo analisado. - CRC32b hashes do nome e conteúdo do arquivo. - O que foi detectado no arquivo (se algo foi detectado). Diretivas de configuração relevantes:
- Quando essas diretivas são deixadas vazias, esse tipo de log permanecerá desabilitado. 11.3.1 MATA DO ANÁLISEQuando habilitado na configuração do pacote, o phpMussel mantém logs dos uploads que foram bloqueados. As entradas para um arquivo de log de "mata do análise" normalmente se parece com isso (como um exemplo):
Uma entrada de "mata do análise" normalmente inclui as seguintes informações: - A data e a hora em que o upload foi bloqueado. - O endereço IP de onde o upload foi originado. - A razão pela qual o arquivo foi bloqueado (o que foi detectado). - O nome do arquivo bloqueado. - Um MD5 e o tamanho do arquivo bloqueado. - Se o arquivo foi colocado em quarentena, e sob qual nome interno. Diretivas de configuração relevantes:
- 11.3.2 REGISTRO DO FRONT-ENDEsse tipo de registro está associado a tentativas de login no front-end, e ocorre apenas quando um usuário tenta efetuar login no front-end (supondo que o acesso ao front-end esteja ativado). Uma entrada de registro do front-end contém o endereço IP do usuário que está tentando efetuar login, a data e a hora em que a tentativa ocorreu, e os resultados da tentativa (se teve sucesso ou não). Uma entrada de registro do front-end geralmente se parece com isso (como um exemplo):
Diretivas de configuração relevantes:
- 11.3.3 ROTAÇÃO DE REGISTROVocê pode querer purgar os registros após um período de tempo, ou pode ser obrigado a fazê-lo por lei (ou seja, a quantidade de tempo permitida legalmente para você manter registros pode ser limitada por lei). Você pode conseguir isso incluindo marcadores de data/hora nos nomes de seus arquivos de registro conforme especificado pela sua configuração de pacote (por exemplo, Por exemplo: Se eu fosse legalmente obrigado a deletar registros após 30 dias, eu poderia especificar Por outro lado, se você precisar reter o registros por um longo período de tempo, você poderia optar por não usar a rotação de registro em tudo, ou você pode definir o valor de Diretivas de configuração relevantes:
- 11.3.4 TRUNCAMENTO DE REGISTROTambém é possível truncar arquivos de registro individuais quando eles excedem um certo tamanho, se isso for algo que você possa precisar ou desejar fazer. Diretivas de configuração relevantes:
- 11.3.5 PSEUDONIMIZAÇÃO DE ENDEREÇOS IPEm primeiro lugar, se você não estiver familiarizado com o termo, "pseudonimização" refere-se ao processamento de dados pessoais como tal que não pode ser identificado a nenhuma pessoa específica sem informações suplementares, e desde que tais informações suplementares sejam mantidas separadamente e sujeitas a medidas técnicas e organizacionais para assegurar que os dados pessoais não possam ser identificados a nenhuma pessoa natural. Em algumas circunstâncias, você pode ser legalmente obrigado a anonimizar ou pseudonimizar qualquer PII coletada, processada ou armazenada. Embora este conceito já existe há algum tempo, o GDPR/DSGVO menciona notavelmente, e especificamente incentiva a "pseudonimização". O phpMussel é capaz de pseudonimizar endereços IP ao registrá-los, se isso for algo que você possa precisar ou desejar fazer. Quando o phpMussel pseudonimiza os endereços IP, quando registrado, o octeto final dos endereços IPv4, e tudo após a segunda parte dos endereços IPv6 é representado por um "x" (efetivamente arredondando endereços IPv4 para o endereço inicial da 24ª sub-rede em que eles são fatorados em, e endereços IPv6 para o endereço inicial da 32ª sub-rede em que eles são fatorados em). Diretivas de configuração relevantes:
- 11.3.6 ESTATISTICASO phpMussel é opcionalmente capaz de rastrear estatísticas como o número total de arquivos analisados e bloqueados desde algum ponto específico no tempo. Esta funcionalidade está desativada por padrão, mas pode ser ativada através da configuração do pacote. O tipo de informação rastreada não deve ser considerado como PII. Diretivas de configuração relevantes:
- 11.3.7 ENCRIPTAÇÃOphpMussel não criptografa seu cache ou qualquer informação de registro. A encriptação de cache e registro pode ser introduzida no futuro, mas não há planos específicos para ela atualmente. Se você estiver preocupado com o acesso de terceiros não autorizados a partes do phpMussel que possam conter PII ou informações confidenciais, como cache ou logs, recomendo que o phpMussel não seja instalado em um local de acesso público (por exemplo, instale o phpMussel fora do diretório 11.4 COOKIESQuando um usuário efetua login com êxito no front-end, o phpMussel define um cookie) para poder lembrar o usuário das solicitações subsequentes (isto é, os cookies são usados para autenticar o usuário numa sessão de login). Na página de login, um aviso de cookie é exibido de forma proeminente, avisando o usuário que um cookie será definido se ele se envolver na ação relevante. Os cookies não são definidos em nenhum outro ponto da base de código. Diretivas de configuração relevantes:
- 11.5 MARKETING E PUBLICIDADEA phpMussel não coleta ou processa qualquer informação para fins de marketing ou publicidade, e nem vende nem lucra com qualquer informação coletada ou registrada. A phpMussel não é uma empresa comercial, nem está relacionada a nenhum interesse comercial, portanto, fazer essas coisas não faria sentido. Este tem sido o caso desde o início do projeto, e continua sendo o caso hoje. Além disso, fazer essas coisas seria contraproducente para o espírito e propósito do projeto como um todo, e enquanto eu continuar a manter o projeto, nunca acontecerá. 11.6 POLÍTICA DE PRIVACIDADEEm algumas circunstâncias, você pode ser legalmente obrigado a exibir claramente um link para sua política de privacidade em todas as páginas e seções do seu site. Isso pode ser importante como um meio de garantir que os usuários estejam bem informados sobre suas práticas de privacidade exatas, os tipos de PII que você coletar, e como você pretende usá-lo. Para poder incluir esse link na página "Carregar Negado" do phpMussel, é fornecida uma diretiva de configuração para especificar o URL da sua política de privacidade. Diretivas de configuração relevantes:
- 11.7 GDPR/DSGVOO Regulamento Geral sobre a Proteção de Dados (GDPR) é um regulamento da União Europeia, que entra em vigor em 25 de Maio, 2018. O principal objectivo do regulamento é dar controlo aos cidadãos e residentes da UE relativamente aos seus próprios dados pessoais, e unificar a regulação na UE em matéria de privacidade e dados pessoais. O regulamento contém disposições específicas relativas ao tratamento de "informações pessoalmente identificáveis" (PII) de quaisquer "titulares de dados" (qualquer identificada ou identificável pessoa natural) da UE ou dentro da mesma. Para estar em conformidade com o regulamento, "empresas" (conforme definido pelo regulamento), e quaisquer sistemas e processos relevantes devem implementar "privacidade desde a concepção" por padrão, devem usar as configurações de privacidade mais altas possíveis, devem implementar as proteções necessárias para qualquer informação armazenada ou processada (incluindo, mas não limitado a, a implementação de pseudonimização ou anonimização completa de dados), devem declarar clara e inequivocamente os tipos de dados que coletam, como os processam, por quais motivos, por quanto tempo eles o retêm, e se compartilham esses dados com terceiros, os tipos de dados compartilhados com terceiros, como, porque, e assim por diante. Os dados não podem ser processados a menos que haja uma base legal para isso, conforme definido pelo regulamento. Geralmente, isso significa que, para processar os dados de um titular de dados de forma legal, ele deve ser feito em conformidade com obrigações legais, ou feito somente após o consentimento explícito, bem informado, e inequívoco ter sido obtido do titular dos dados. Como os aspectos da regulamentação podem evoluir no tempo, a fim de evitar a propagação de informações desatualizadas, pode ser melhor aprender sobre a regulamentação a partir de uma fonte oficial, em vez de simplesmente incluir as informações relevantes aqui na documentação do pacote (o que pode eventualmente desatualizado à medida que a regulamentação evolui). EUR-Lex (uma parte do site oficial da União Europeia que fornece informações sobre a legislação da UE) fornece informações abrangentes sobre o GDPR/DSGVO, disponível em 24 idiomas diferentes (no momento da escrita deste), e disponível para download em formato PDF. Eu recomendaria definitivamente ler as informações que eles fornecem, a fim de aprender mais sobre GDPR/DSGVO: - REGULAMENTO (UE) 2016/679 DO PARLAMENTO EUROPEU E DO CONSELHO Alternativamente, há uma breve visão geral (não autoritativa) do GDPR/DSGVO disponível na Wikipedia: - Regulamento Geral sobre a Proteção de Dados Última Atualização: 7 Abril de 2019 (2019.04.07). |