Histórico da Página
...
Nível | Vulnerabilidade | Recomendação | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
INFORMATION | Password type input with auto-complete enabled | Realizamos testes internos e, apesar de não termos encontrado formas de invasão (nos navegadores mais recentes) por conta de não conter o atributo "auto-complete" nos campos de senha, iremos reforçar a segurança do programa "changePassword" colocando o atributo "auto-complete=new-password" nos campos que utilizam senha. Iremos nos basear na referência encontrada no link https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete. Há Issue interna tratando essa questão, será liberada nas próximas atualizações. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
INFORMATION | JavaScript dependencies | Estamos em constante monitoramento das vulnerabilidades quanto as versões desatualizadas de bibliotecas, com ações de atualização das bibliotecas de terceiros quando estas vulnerabilidades se tornam críticas (exposição pública de um possível ponto de ataque). | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
INFORMATION | Vulnerable Apache Tomcat version | Em cada nova release do ERP Datasul, nós efetuamos homologações com a última versão do Tomcat 9. Consulte o link: https://tdn.totvs.com/pages/releaseview.action?pageId=645691744 para mais informações quanto as versões. Está em nosso roadmap a homologação do produto com o Tomcat 10 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
INFORMATION | Insecure Referrer Policy | Quando não houver um policy definido, o valor padrão é strict-origin-when-cross-origin, onde já atenderia o requisito. Caso seja exibido este alerta, verifique se o navegador e o servidor de aplicação Web estão corretamente atualizado para as versões homologadas. https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referrer-Policy | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
INFORMATION | Alert group Reverse proxy detected | A configuração de um proxy reverso não se caracterizaria uma vulnerabilidade no ERP Datasul. Nós até recomendamos sua utilização caso tenha a necessidade de expor o ERP para acesso externo, pois assim o Tomcat estaria mais seguro. Atualmente as configurações do proxy reverso que recomendamos podem ser visualizadas no link: https://centraldeatendimento.totvs.com/hc/pt-br/articles/360046255573-Framework-Linha-Datasul-TEC-Configura%C3%A7%C3%A3o-de-Proxy-Reverso-para-o-Datasul-for-THF-utilizando-Apache O proxy reverso também pode ser configurado com um protocolo HTTPS, acesse o link para mais informações: https://centraldeatendimento.totvs.com/hc/pt-br/articles/360045679694-DS-THF-Configura%C3%A7%C3%A3o-de-HTTPS-para-o-Datasul-for-THF-utilizando-Apache | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
INFORMATION | Microsoft IIS version disclosure | O Microsoft IIS pode ser configurado para remover cabeçalhos indesejados da resposta HTTP. Consulte o link para obter mais informações. https://learn.microsoft.com/pt-pt/archive/blogs/varunm/remove-unwanted-http-response-headers | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
LOW | ASP.NET version disclosure | Para evitar a exposição da versão do ASP.NET, precisar ser editado o arquivo “web.config”, que normalmente está em: C:\Windows\Microsoft.NET\Framework\<VERSION>\Config\web.config * Substitua a tag <VERSION> pelo versão do ASP.NET instalado no servidor. Deve ser adicionada a tag abaixo: <System.Web> * Caso não se obtenha sucesso na remoção, consulte o link: https://learn.microsoft.com/pt-pt/archive/blogs/varunm/remove-unwanted-http-response-headers para verificar mais alternativas. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
LOW | Clickjacking: X-Frame-Options header | Caso tenha integração com outros produtos (Meu RH, por exemplo) não é indicado realizar a configuração do X-FRAME-OPTIONS, pois são ambientes diferentes e não se encaixaria nem com o SAMEORIGIN e nem o DENY. Caso NÃO há integração com nenhum outro produto e você utiliza apenas o ERP Datasul, deve-se configurar o Apache para que contenha a seguinte linha de código: Header always set X-Frame-Options "SAMEORIGIN" | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
LOW | Cookies with missing, inconsistent or contradictory properties (without SameSite) | No cenário atual, para ter acesso as requisições, é necessária uma autenticação prévia com usuário e senha do ERP Datasul, das quais, quando integradas com outros portais, utilizam Cookies para propagar a autenticação. Estamos com planejamentos de evolução e melhorias de segurança onde as requisições serão validadas por tokens. Os navegadores mais atualizados já definem o atributo SameSite=Lax para restringir o uso do Cookie e, consequentemente, evitar o Cross-Site Request Forgery (CSRF). Caso houver a necessidade de integrar o ERP com outros portais, recomendamos que use a forma de conexão HTTPS, pois assim o Cookie atribuirá o parâmetro Secure. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
LOW | TLS cookie without secure flag set | O ERP Datasul já contempla as flags HttpOnly e Secure, porém o produto deve estar configurado para HTTPS. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
LOW | Content Security Policy (CSP) | A recomendação para melhorar a segurança é inserir o atributo Content-Security-Policy na Header para restringir possíveis ataques de Cross Site Scripting, porém o ERP Datasul ainda não está preparado para um atributo mais restritivo na carga das páginas. Esta em nosso roadmap a inclusão deste atributo de segurança. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
LOW | Open Redirect | O redirecionamento das URLs após efetuado o login é necessário para que os portais utilizem a mesma engine de login do ERP Datasul, por este motivo não é possível remove-lo da arquitetura DTS4THF. Foi desenvolvido uma rotina para sanar a vulnerabilidade e permitir o redirecionamento apenas para as URL's definidas pelo usuário. Para configuração, deve-se verificar a documentação contida em Redirecionamento de Login (propriedades-segurança). | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MEDIUM | Vulnerable JavaScript libraries | Há alegações que a versão do JQuery (jquery-2.1.4.min.js) praticado pela Totvs estaria diferente da versão original e que isso poderia afetar consideravelmente a segurança e o nível de confiança no produto. Foi efetuada a atualização da versão do JQuery para a 3.7.1 (DFWKDATASUL-1212), sendo expedida na release 12.1.2311. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MEDIUM |
| Para omitir informações de erros e versão do Apache Tomcat (quando um Status Error ocorre), basta configurar o arquivo conf/server.xml do Tomcat, incluir a tag Valve com atributos className="org.apache.catalina.valves.ErrorReportValve" showReport="false" showServerInfo="false", a configuração deve ficar parecida com o trecho de código abaixo:
Uma outra alternativa é a implementação da solução proposta em: https://tdn.totvs.com/pages/viewpage.action?pageId=776533248. disponível a partir da release 12.1.2311. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MEDIUM | Unencrypted connection (verified) | Quem define de fato se o sistema irá rodar em ambiente HTTP ou HTTPS é a própria equipe de Infraestrutura do cliente. Atualmente não temos um ambiente que rode “full HTTPS”, geralmente os clientes utilizam HTTPS através de um proxy como o apache e o acesso interno como HTTP. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MEDIUM | User credentials are sent in clear text | Há alegações que as credenciais estão sendo mostradas em “texto claro” nos forms do produto e sugerem que a conexão deveria ser via HTTPS para resolver e evitar isso, porém novamente quem define se o sistema irá rodar em HTTP ou HTTPS é a Infraestrutura do cliente. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MEDIUM | Strict transport security not enforced | Devido a diferenças de configurações do ambiente em nossos clientes, por reduções de custo os mesmos podem configurar o acesso externo (HTTPS) por intermédio de um proxy que por sua vez redireciona para o ambiente interno (HTTP). Por este motivo não é possível implementar esta restrição. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MEDIUM | Reflected XSS emailReminder | O parâmetro emailReminder apresentado na tela "Esqueci minha senha" possui formatações para campo de e-mail, consequentemente o risco de inserir códigos scripts é reduzido. Com o intuito de reduzir ainda mais o risco de um possível ataque XSS, foram efetuados ajustes na Issue DFWKDATASUL-1209, liberada na release 12.1.2311. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MEDIUM | No rate limiting | Para evitar possíveis ataques externos, o controle do limite das requisições pode ser realizada com parametrizações do servidor de aplicação onde está o Proxy Reverso. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MEDIUM | Cross-Site Request Forgery (CSRF) | Atualmente para ter acesso as requisições, é necessário realizar uma autenticação prévia com usuário e senha do ERP Datasul dos quais, quando integradas com outros portais, utilizam Cookies para propagar a autenticação. Estamos com planejamentos de evolução e melhorias de segurança onde as requisições serão validadas por tokens. Os navegadores mais atualizados já definem o atributo SameSite=Lax para restringir o uso do Cookie (e consequentemente evitar o CSRF). Caso houver a necessidade de integrar o ERP com outros portais, recomendamos que use o HTTPS, pois assim o Cookie atribuirá o parâmetro Secure | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MEDIUM | Client-Side Desync | Estamos com planejamentos futuros para a validação de compatibilidade do protocolo HTTP/2 e tratamento de requisições POST, reduzindo assim a vulnerabilidade de CSD. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MEDIUM | Sensitive Information Disclosure | Identificados a partir da exposição de conteúdos sem relação com o ERP Datasul. O conteúdo do webapps relacionado ao Apache Tomcat deve conter somente diretórios gerados a partir do deploy de arquivos .war disponibilizados por nossa expedição. Quaisquer outros diretórios (exemplos: /docs, /examples, entre outros) devem ser removidos desta instância. Caso houver a necessidade de incluir diretórios que não pertencem a nossa expedição (para monitoramentos por exemplo), fica de responsabilidade do cliente garantir a segurança de acesso dos mesmos. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
HIGH | Cross site scripting (/totvslogin/ changePassword) | Realmente, existe uma forma de invasão na tela de alteração de senha (changePassword) através do campo “Usuário”. Iremos avaliar através de Issue interna as melhores práticas para contemplar a segurança da tela referenciada neste item. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
HIGH | Cross site scripting (/totvs-login/reminder) | Na versão da época realmente existia uma forma de invadir o sistema através de script XSS, porém na versão atual isso já foi solucionado, deve ser atualizado o produto para as últimas versões. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
HIGH | Cross site scripting (/totvslogin/ reminderForm) | Na versão da época realmente existia uma forma de invadir o sistema através de script XSS, porém na versão atual isso já foi solucionado, deve ser atualizado o produto para as últimas versões. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
HIGH | Login Brute Force (Ataques de força bruta no login da aplicação) | Para evitar constantes requisições no login do produto com a finalidade do descobrimento da senha, recomendamos que seja ativada a parametrização Tentativas mal sucedidas de login. Esta parametrização pode ser utilizada em conjunto com o Minutos de bloqueio temporário de login caso opte pelo desbloqueio automático depois de alguns minutos. Para mais informações de como efetuar a parametrização, consulte a documentação: https://tdn.totvs.com/pages/releaseview.action?pageId=633336230 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
CVE-2019-17267 (jackson-databind-2.8.2) | Conforme link: https://access.redhat.com/security/cve/cve-2019-17267, os potenciais uso de exploração desta vulnerabilidade são: Mitigation
Apesar do arquivo jackson-databind-2.8.2.jar estar na versão que possui a vulnerabilidade, as mesmas não são exploraveis pois o produto não implementa o uso dos itens mencionados. Contudo como o produto possui compatibilidade com a versão 2.15.2 (onde a vulnerabilidade não foi identificada), estamos com planejamento interno para a atualização desta biblioteca. Issue: https://jiraproducao.totvs.com.br/browse/DFWKDATASUL-1786 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
CVE-2023-20860 Security Bypass With Un-Prefixed Double Wildcard Pattern | O Spring Framework foi atualizado para a versão para a 5.3.30, sendo disponíveis a partir da release 12.1.2403 e em patch 12.1.2307.6 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
RECOMENDAÇÃO APACHE TOMCAT | Geração de cookie somente para o path "/" | Desde a release 12.1.2209 esta opção é inserida automaticamente com a atualização via console: https://tdn.totvs.com/pages/releaseview.action?pageId=683180622, caso não esteja parametrizado sua inclusão é obrigatória. Para isto, basta editar o arquivo conf/context.xml, incluir o atribuito sessionCookiePath com o valor "/" conforme exemplo abaixo: | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
RECOMENDAÇÃO APACHE TOMCAT | Renomear cookie | Conforme recomendação da OWASP (Session ID Name Fingerprinting - https://cheatsheetseries.owasp.org/cheatsheets/Session_Management_Cheat_Sheet.html), a partir da release 12.1.2403 existe a possibilidade de editar o nome cookie. Para isto, basta editar o arquivo conf/context.xml, incluir o atribuito sessionCookieName com o valor "id" conforme exemplo abaixo: | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
RECOMENDAÇÃO OPENEDGE | OpenEdge Critical Alert: Arbitrary File Upload Vulnerability in WEB Transport Security Issue and Potential Impact: OpenEdge Product Alert: Denial of Service Vulnerability in WEB Transport Security Issue and Potential Impact: | No ERP Datasul não utilizamos o WEB Transport para comunicações com o PASOE. Caso o PASOE seja compartilhado para outras aplicações, a recomendação da Progress é atualizar as versões conforme abaixo:
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
RECOMENDAÇÃO OPENEDGE | No ERP Datasul utilizamos o PASOE para comunicações com regras de negócio e acesso aos bancos de dados, sendo recomendada a atualização do OpenEdge para as versões abaixo: OpenEdge 12.8.1
A recomendação é atualizar OpenEdge 12.2.14
OpenEdge 11.7.19
|