Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

NívelVulnerabilidadeRecomendação
INFORMATIONPassword 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.

INFORMATIONJavaScript 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).

INFORMATIONVulnerable 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

INFORMATIONInsecure 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

INFORMATIONAlert 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

INFORMATIONMicrosoft 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

LOWASP.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>
      <httpRuntime enableVersionHeader="false" />
</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.

LOWClickjacking: 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"

LOWCookies 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.
LOWTLS cookie without secure flag setO ERP Datasul já contempla as flags HttpOnly e Secure, porém o produto deve estar configurado para HTTPS.
LOWContent 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.

LOWOpen 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).

MEDIUMVulnerable 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
  • Application error messages
  • Improper Error Handling

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:

Bloco de código
<Host name="localhost"  appBase="webapps" unpackWARs="true" autoDeploy="true">
	...
	<Valve className="org.apache.catalina.valves.ErrorReportValve" showReport="false" showServerInfo="false" />
	...
</Host>

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.

MEDIUMUnencrypted 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.
MEDIUMUser credentials are sent in clear textHá 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.
MEDIUMStrict transport security not enforcedDevido 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.  

MEDIUMNo rate limitingPara 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.
MEDIUMCross-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

MEDIUMClient-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.

MEDIUMSensitive 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.

HIGHCross 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.

HIGHCross 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.
HIGHCross 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
The following conditions are needed for an exploit, we recommend avoiding all if possible

  • Deserialization from sources you do not control
  • `enableDefaultTyping()`
  • `@JsonTypeInfo using `id.CLASS` or `id.MINIMAL_CLASS`

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 

https://spring.io/security/cve-2023-20860

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:
https://nvd.nist.gov/vuln/detail/CVE-2023-40051

OpenEdge Product Alert: Denial of Service Vulnerability in WEB Transport

Security Issue and Potential Impact:
https://www.cve.org/CVERecord?id=CVE-2023-40052

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:

Vulnerable VersionFixed Version
OpenEdge Release 11.7.17 and earlierOpenEdge LTS Update 11.7.18
OpenEdge Releases 12.2.12 and earlierOpenEdge LTS Update 12.2.13
OpenEdge Release 12.7 Innovation release and earlierOpenEdge 12.8.0
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

CVE Number 

CVSS v3.1 
Base Score 

Affected OpenEdge  
Components 

Mitigation/Impact 
KB article 

Vulnerable Third-Party  
Version 

Fixed Third-Party  
Version 

CVE-2010-3190 

9.3 

ICU collation 
XML in the ABL 
Soap Out 
OEM 
AdminServer 
64-bit Windows GUI Client 

None 

MSVC++ 2010 Runtime 

Removed from product 

CVE-2023-2976 

7.1 

PASOE 

None

guava-31.1-jre 

guava-32.1.1-jre

CVE-2018-6913 

9.8 

OpenEdge CLI 
OEM 

None 

Perl-5.26.1 

Perl-5.38.0 

CVE-2018-12015 

7.5 

CVE-2018-18311 

9.8 

CVE-2018-18312 

9.8 

CVE-2018-18313 

9.1 

CVE-2018-18314 

9.8 

CVE-2020-10543 

8.2 

CVE-2020-10878 

8.6 

CVE-2020-12723 

7.5 

CVE-2020-14393 

7.1 

CVE-2020-16156 

7.8 

CVE-2022-48522 

9.8 

CVE-2023-31484 

8.1 

CVE-2023-31486 

8.1 

CVE-2023-47038 

7.8 

CVE-2023-47039 

7.8 


A recomendação é atualizar 

OpenEdge 12.2.14

 CVE Number 

CVSS  
v3.1 
 Base Score 

Affected OpenEdge  
Components 

Mitigation/ Impact 
KB article 

Vulnerable 
Third-Party  
Version 

Fixed
Third-Party  
Version 

CVE-2023-46589 

7.5 

PASOE 

None 

tomcat-coyote-9.0.78.jar 

tomcat-coyote-9.0.85.jar 

CVE-2023-44487 

7.5 

CVE-2023-2976 

7.1 

PASOE 

None 

guava-27.1-jre 

guava-32.1.1-jre 


 OpenEdge 11.7.19

 CVE Number 

CVSS  
v3.1 
 Base Score 

Affected OpenEdge  
Components 

Mitigation/ Impact 
KB article 

Vulnerable 
Third-Party  
Version 

Fixed
Third-Party  
Version 

CVE-2023-34454 

7.5 

OEM 

none 

snappy-java-1.1.0.1.jar 

snappy-java-1.1.10.5.jar 

CVE-2023-34455 

7.5 

CVE-2012-0881 


7.5 

PASOE 

none 

xercesImpl-2.6.2.jar 

xercesImpl-2.12.2.jar 

CVE-2012-0881 


7.5 

SonicMQ 

none 

./sonic/MQ10.0/lib/ xercesImpl.jar:
org.apache.servicemix
.bundles.xerces-2.9.1_5.jar 

./sonic/MQ10.0/lib/xercesImpl-2.12.2.jar:
org.apache.servicemix.bundles.xerces-2.12.2.jar 

CVE-2020-27216 

7.0 

OEM 

none 

jetty-http-9.4.14.v20181114.jar 
jetty-io-9.4.14.v20181114.jar 

Jetty-http-9.4.53.v20231009 
jetty-io-9.4.53.v20231009 

CVE-2021-28165 

7.5 

CVE-2023-46589 

7.5 

PASOE 

none 

catalina-8.5.93 

catalina-8.5.96 

CVE-2023-44487 

7.5 

CVE-2023-28709 


7.5 

PASOE 

none 

tomcat-coyote-8.5.87.jar 

tomcat-coyote-9.0.85.jar 

CVE-2023-2650 

7.5 

All 

none 

OpenSSL-1.1.1t 
curl-7.88.1 

OpenSSL-1.1.1v 
curl-8.4.0 

CVE-2023-0464 

7.5 

CVE-2023-2976 


7.1 

PASOE 

none 

guava-20.0-jre 

guava-32.1.1-jre 

SRCCLR-SID-6843 


8.6 

OEM 

none 

Orientdb-core-2.2.31 

Orientdb-core-2.2.37 

CVE-2023-34454 

7.5 

OEM 

none 

snappy-java-1.1.0.1.jar 

snappy-java-1.1.10.5.jar 

CVE-2023-34455 

7.5