Configurações de proteção atualizadas para a versão linha de base 5.0

  • Versão de lançamento: Yokohama
  • Atualizado 30 de jan. de 2025
  • 16 min. de leitura
  • Algumas configurações de proteção foram atualizadas com a versão linha de base 5.0 da Central de segurança.

    A versão linha de base 5 inclui diversas atualizações de estilo e consistência entre registros nas descrições resumidas. Além disso, muitos scripts relacionados às propriedades foram atualizados para melhorar a precisão dos valores padrão nos casos em que a propriedade tenha sido removida da tabela sys_property.

    Documentação Atualizações
    Exigência de autorização para solicitações SOAP [Atualizado na Central de segurança 1.3, 1.5 e 2.0]
    • Nova correção: confira se a propriedade glide.basicauth.required.soap do Glide existe mesmo e está definida com o valor True. Como alternativa, configure a instância do WS Security definindo a propriedade glide.soap.require_ws_security como True e seguindo a documentação do produto para configurar os perfis do WS Security. Se a propriedade não aparecer na tabela sys_properties, adicione um novo registro.
    • Nova correção: confira se a propriedade glide.basicauth.required.soap está mesmo definida como verdadeira. Como alternativa, configure a instância do WS Security definindo a propriedade glide.soap.require_ws_security como verdadeira e seguindo a documentação do produto para configurar os perfis do WS Security.
    • Nova correção: confira se a propriedade com.glide.communications.httpclient.ocsp_allow_network_error existe mesmo e está definida como False. Se a propriedade não aparecer na tabela sys_properties, adicione um novo registro.
    • Correção antiga: confira se a propriedade com.glide.communications.httpclient.ocsp_allow_network_error está mesmo definida como False.
    Desabilitação da URL de conteúdo externo [Atualizado na Central de segurança 2.0]
    • Nova correção: confira se a propriedade glide.ui.url.external.content do Glide existe mesmo e está definida com o valor False. Se a propriedade não aparecer na tabela sys_properties, adicione um novo registro.
    • Correção antiga: confira se a propriedade glide.ui.url.external.content está mesmo definida como False.
    • Nova pontuação do CVSS: 7,2
    • Pontuação antiga do CVSS: 8,1
    • Script de regra: o script foi atualizado para melhorar a precisão da detecção.
    • Nova correção: confira se a propriedade glide.xml.entity.whitelist do Glide existe mesmo e está definida como "http://java.sun.com/j2ee/dtds/", e se a propriedade glide.xml.entity.whitelist.enabled do Glide existe e está definida com o valor verdadeiro. Se as propriedades não forem exibidas na tabela sys_properties, adicione novos registros.
    • Correção antiga: confira se a propriedade glide.xml.entity.whitelist está definida como "http://java.sun.com/j2ee/dtds/", e se a propriedade glide.xml.entity.whitelist.enabled está definida com o valor verdadeiro.
    Desabilitação de relatórios publicados não autenticados [Atualizado na Central de segurança 2.0]
    • Nova correção: confira se a propriedade glide.report.published_reports.enabled do Glide existe mesmo e está definida com o valor False. Se a propriedade não aparecer na tabela sys_properties, adicione um novo registro.
    • Correção antiga: confira se a propriedade glide.report.published_reports.enabled está mesmo definida como False.
    Habilitação das verificações da política de redefinição de senha [Atualizado na Central de segurança 2.0]
    • Nova correção: confira se a propriedade glide.enable.password_policy do Glide existe mesmo e está definida com o valor True. Se a propriedade não aparecer na tabela sys_properties, adicione um novo registro.
    • Correção antiga: confira se a propriedade glide.enable.password_policy está mesmo definida como verdadeira.
    Minimização do limite de expansão da entidade para o script GlideXMLUtil [Atualizado na Central de segurança 1.3, 1.5 e 2.0]
    • Nova correção: confira se a propriedade glide.xmlutil.max_entity_expansion está mesmo definida como 3.000 ou menos. Se a instância estiver em Washington ou posterior, o valor implícito padrão será 3000 se o registro sys_properties não existir. Se a instância não estiver em Washington ou posterior, a recomendação é que o administrador da instância crie um registro sys_properties com o nome glide.xmlutil.max_entity_expansion e o valor 3000.
    • Correção antiga: confira se a propriedade glide.xmlutil.max_entity_expansion está mesmo definida como 3000 ou menos.
    Desabilitar conexões SSLv2/SSLv3 de saída [Atualizado na Central de segurança 1.3]
    • Nova correção: confira se a propriedade glide.outbound.sslv3.disabled do Glide existe mesmo e está definida com o valor True. Se a propriedade não aparecer na tabela sys_properties, adicione um novo registro.
    • Correção antiga: confira se a propriedade glide.outbound.sslv3.disabled está mesmo definida como verdadeira.
    Importante:
    O valor da propriedade glide.outbound.sslv3.disabled é uma substituição segura e não pode ser alterado depois de mudado.
    • Nova descrição resumida: desativar comportamento legado de isolamento de escopo do GlideRecord
    • Descrição antiga resumida: ativar comportamento legado de isolamento de escopo do GlideRecord
    Restrição de tipos MIME carregados [Atualizado na Central de segurança 1.3 e 2.0]
    • Nova correção: certifique-se de que a propriedade glide.security.file.mime_type.validation exista e esteja definida como True. Se a propriedade não aparecer na tabela sys_properties, adicione um novo registro.
    • Correção antiga: confira se a propriedade glide.security.file.mime_type.validation está mesmo definida como True.
    Habilitação da proteção de interpolação do JS Jelly para expressões aninhadas [Atualizado na Central de segurança 2.0]
    • Nova correção: confira se a propriedade glide.ui.jelly.js_interpolation.protect_nested_expressions do Glide existe mesmo e está definida com o valor True. Se a propriedade não aparecer na tabela sys_properties, adicione um novo registro.
    • Correção antiga: confira se a propriedade glide.ui.jelly.js_interpolation.protect_nested_expressions está mesmo definida como True.
    Habilitação do SSL na autenticação LDAP [Atualizado na Central de segurança 1.5 e 2.0] Script de regra: o script foi atualizado para melhorar a precisão da detecção.
    Habilitação do UserCookie versão 3.1 [Atualizado na Central de segurança 2.0]
    • Nova descrição: o UserCookie v3 é gerado somente quando a propriedade glide.ui.secure.cookies.use_kmf is disabled está desativada. O UserCookie v3 não é seguro, porque armazena a chave secreta de HMAC em código seguro e idêntico para todos os clientes. Isso pode permitir que agentes mal-intencionados usem essa chave secreta para tentar sequestrar sessões de usuários. Se você definir a propriedade glide.ui.secure.cookies.use_kmf como True, o CookieDoUsuário v3.1 será usado e a chave secreta será armazenada no armazenamento de segurança, como KMF.
    • Descrição antiga: o UserCookie v3 é gerado somente quando a propriedade glide.ui.secure.cookies.use_kmf está desativada. O UserCookie v3 não é seguro, porque armazena a chave secreta de HMAC em código seguro e idêntico para todos os clientes. Isso pode permitir que agentes mal-intencionados usem essa chave secreta para tentar sequestrar sessões de usuários.
    • Nova correção: certifique-se de que a propriedade glide.ui.secure.cookies.use_kmf exista e esteja definida como True. Se a propriedade não aparecer na tabela sys_properties, adicione um novo registro.
    • Correção antiga: confira se a propriedade glide.ui.secure.cookies.use_kmf está mesmo definida como True. Isso significa que a propriedade UserCookie v3.1 será usada e que a chave secreta será armazenada no armazenamento de segurança, como um KMF.
    Definição da vida útil da OTP para redefinição de senha como 12 horas ou menos [Atualizado na Central de segurança 2.0] Script de regra: o script foi atualizado para melhorar a precisão da detecção.
    Registro de representação do usuário [Atualizado na Central de segurança 1.3 e 2.0]
    • Nova correção: certifique-se de que a propriedade glide.sys.log_impersonation exista e esteja definida como True. Se a propriedade não aparecer na tabela sys_properties, adicione um novo registro.
    • Correção antiga: confira se a propriedade glide.sys.log_impersonation está mesmo definida como True.
    Script de regra: o script foi atualizado para melhorar a precisão da detecção.
    • Nova correção: confira se a propriedade glide.processors.check_access_before_process do Glide existe mesmo e está definida com o valor True. Se a propriedade não aparecer na tabela sys_properties, adicione um novo registro.
    • Correção antiga: confira se a propriedade glide.processors.check_access_before_process está mesmo definida como sempre True.
    • Nova correção: confira se a propriedade glide.active.session.timeout.invalidate.session do Glide existe mesmo e está definida com o valor True. Se a propriedade não aparecer na tabela sys_properties, adicione um novo registro.
    • Correção antiga: defina a propriedade glide.active.session.timeout.invalidate.session do Glide como True.
    Imposição do escopo de segurança para o Espaço do agente para Gestão de casos de RH [Novo na Central de segurança 1.5 e atualizado na Central de segurança 2.0] Script de regra: o script foi atualizado para melhorar a precisão da detecção.
    Imposição do Playbook para licenças e permissões do escopo de segurança [Novo na Central de segurança 1.5 e atualizado na Central de segurança 2.0] Script de regra: o script foi atualizado para melhorar a precisão da detecção.
    Restrição de tipos MIME para download [Atualizado na Central de segurança 1.3 e 2.0]
    • Nova descrição: se a propriedade glide.ui.attachment.force_download_all_mime_types estiver definida como True, a propriedade glide.ui.attachment.download_mime_types será substituída para que todos os tipos de MIME sejam baixados, e não renderizados pelo navegador. Por exemplo, baixar texto/html força os arquivos HTML a serem baixados para o cliente como um arquivo, em vez de exibidos em linha no navegador, prevenindo um ataque XSS. O XSS pode levar a uma facilidade de conseguir escalação de privilégios a funções superiores, como a de um administrador, em situações em que uma movimentação mais lateral possa ser realizada.
    • Descrição antiga: se a propriedade glide.ui.attachment.force_download_all_mime_types não estiver definida como True, a propriedade glide.ui.attachment.download_mime_types será substituída para que todos os tipos de MIME sejam baixados, e não renderizados pelo navegador. Por exemplo, baixar texto/html força os arquivos HTML a serem baixados para o cliente como um arquivo, em vez de exibidos em linha no navegador, prevenindo um ataque XSS. A possibilidade de ter XSS pode levar a uma facilidade de conseguir escalação de privilégios a funções superiores, como a de um administrador, em situações em que uma movimentação mais lateral possa ser realizada.
    • Nova correção: confira se a propriedade glide.ui.attachment.force_download_all_mime_types está mesmo definida como True. Se a propriedade não existir na tabela sys_properties, o valor padrão será False.
    • Correção antiga: confira se a propriedade glide.ui.attachment.force_download_all_mime_types está mesmo definida como True.
    • Script de regra: o script foi atualizado para melhorar a precisão da detecção.
    Definição de tipos MIME para download restritos [Atualizado na Central de segurança 1.3, 1.5 e 2.0] Script de regra: o script foi atualizado para melhorar a precisão da detecção.
    Proibição do download de arquivos infectados [Atualizado na Central de segurança 1.5 e 2.0]
    • Nova descrição: quando a propriedade com.glide.snap.infected_download_allowed estiver definida como True, os usuários ainda conseguirão baixar anexos não verificados, caso o serviço de antivírus esteja inativo ou inacessível. Isso significa que é possível que um usuário baixe um arquivo malicioso e corra o risco de infectar a área de trabalho do usuário (caso não haja outra proteção de endpoint no dispositivo).
    • Descrição antiga: se com.glide.snap.infected_download_allowed não estiver definido com o valor recomendado de False, será possível baixar um arquivo malicioso que não tenha sido verificado, o que levará a um risco de infecção da área de trabalho do usuário.
    • Nova correção: confira se a propriedade com.glide.snap.infected_download_allowed está mesmo definida como False.
    • Correção antiga: confira se a propriedade com.glide.snap.infected_download_allowed está mesmo definida como False.
    Restrição do acesso à API com script GlideSystemUserSession [Atualizado na Central de segurança 1.3 e 2.0]
    • Nova descrição: gs.addErrorMessageNoSanitizationMessaging() e gs.addInfoMessageNoSanitization() são usados no ambiente de script para registro em log e notificações. Ambos estarão disponíveis na área restrita se esta propriedade não estiver definida com o valor False recomendado. A área restrita é um ambiente de script com poucos privilégios, disponível para usuários não autenticados e sem função. Esses dois métodos podem ser usados para exibir entradas não limpas para um usuário. Exibir entrada não limpa para o usuário é perigoso, pois a entrada não limpa pode conter algum código perigoso que seja executado no navegador do usuário. Isso pode ser utilizado para tradicionais ataques XSS refletidos. Os ataques XSS refletidos podem ser usados em vários cenários, incluindo sequestro de sessão.
    • Descrição antiga: o envio de mensagens na área restrita de script do glide é usado para fins de registro em log. Chamar esta função de erro não sanitizado expõe a plataforma a ataques XSS refletidos. Os ataques XSS podem facilitar a escalação de privilégios, roubando os cookies de sessão de alguém. Se glide.sandbox.usersession.allow_unsanitized_messages não estiver definido com o valor False recomendado, as funções de mensagens de erro não sanitizadas addErrorMessageNoSanitization e addInfoMessageNoSanitization estarão disponíveis para script.
    Habilitação de regras de consulta de gestão de pedidos de serviço para organizações de serviço [Novo na Central de segurança 1.5 e atualizado na Central de segurança 2.0]
    • Nova descrição: quando definidos como True, filtros/regras da tabela sn_query_rule serão usados para determinar o acesso de leitura às tabelas relacionadas à Gestão de serviços de campo (Ordem de serviço ou Tarefa de ordem de serviço) para o usuário conectado, por meio das regras de negócio da consulta e das ACLs de leitura. Quando for definida como falsa, os registros não serão filtrados com base nas regras de consulta. As regras de negócio de consulta adicionam mais validações de segurança. De modo especial, essa propriedade filtra os agentes, qualificadores e expedidores dos registros, com base no território que lhes tenha sido atribuído ou nos membros dos territórios. Seguir o princípio de privilégio mínimo para a leitura de registros é uma prática recomendada. Quando esta propriedade não está definida como verdadeira, pode haver um risco maior de exposição de dados das tabelas da Gestão de serviços de campo.
    • Descrição antiga: quando definidos como True, filtros/regras da tabela sn_query_rule serão usados para determinar o acesso de leitura às tabelas relacionadas à Gestão de serviços de campo (Ordem de serviço ou Tarefa de ordem de serviço) para o usuário conectado, por meio das regras de negócio da consulta e das ACLs de leitura. Quando for definida como falsa, os registros não serão filtrados com base nas regras de consulta. As regras de negócio de consulta adicionam mais validações de segurança. De modo especial, essa propriedade filtra os agentes, qualificadores e expedidores dos registros, com base no território que lhes tenha sido atribuído ou nos membros dos territórios. Seguir o princípio de privilégio mínimo para a leitura de registros é uma prática recomendada.
    • Nova descrição: a propriedade sn_ext_usr_reg.allowed_email_domains define quais endereços de e-mail têm permissão para se autorregistrarem em uma instância da ServiceNow. O formato deve ser uma lista de domínios de e-mail aceitáveis, como domínio1.com, domínio2.com, em que e-mails como exemplo@domínio2.com serão aceitos. Os domínios constantes nesta lista devem estar separados por vírgulas. Se sn_ext_usr_reg.allowed_email_domains não estiver definido com uma lista de domínios aceitáveis, os usuários com qualquer endereço de e-mail terão permissão para registrar contas nas instâncias. Se não for definido, agentes mal-intencionados poderão realizar o registro usando endereços de e-mail de domínios indesejados para obter acesso autenticado à instância.
    • Descrição antiga: a propriedade sn_ext_usr_reg.allowed_email_domains define quais endereços de e-mail têm permissão para se autorregistrarem em uma instância da ServiceNow. Se sn_ext_usr_reg.allowed_email_domains não estiver definido com uma lista de domínios aceitáveis, os usuários com qualquer endereço de e-mail terão permissão para registrar contas nas instâncias. Se não for definido, agentes mal-intencionados poderão realizar o registro usando endereços de e-mail de domínios indesejados para obter acesso autenticado à instância.
    • Nova descrição: esta propriedade controla se as consultas de junção receberão, ou não, condições separadas por domínio, para garantir que a funcionalidade de separação de domínios seja aplicada aos campos de referência com pontos. Se glide.sys.domain.include_domain_condition_on_join não estiver definido com o valor recomendado de verdadeiro em uma instância usando separação de domínios, poderão ser divulgadas informações confidenciais que não devem ser compartilhadas com um domínio específico. Pode haver um impacto funcional moderado na instância se os componentes dependerem das consultas entre domínios inseguras. As instâncias devem ser testadas em ambientes de subprodução antes da ativação.
    • Descrição antiga: esta propriedade controla se as consultas de junção receberão, ou não, condições separadas por domínio, para garantir que a funcionalidade de separação de domínios seja aplicada aos campos de referência com pontos. Se glide.sys.domain.include_domain_condition_on_join não estiver definido com o valor recomendado de verdadeiro em uma instância usando separação de domínios, poderão ser divulgadas informações confidenciais que não devem ser compartilhadas com um domínio específico.
    Imposição da verificação da lista de permissões de URL [Atualizado na Central de segurança 1.3, 1.5 e 2.0]
    • Nova correção: confira se a propriedade glide.security.url.whitelist.strict_check está mesmo definida como True ou se a propriedade glide.security.url.whitelist está com um valor definido.
    • Correção antiga: confira se a propriedade glide.security.url.whitelist.strict_check está mesmo definida como True ou se a propriedade glide.security.url.whitelist está com um valor definido.
    Definição de usuário convidado para solicitações SOAP [Atualizado na Central de segurança 1.3 e 2.0] Script de regra: o script foi atualizado para melhorar a precisão da detecção.
    Restrição do acesso ao script em segundo plano [Atualizado na Central de segurança 1.3 e 2.0]
    • Nova descrição: esta propriedade armazena a função necessária para acessar o módulo Script em segundo plano. Se glide.script_processor.admin não estiver definido como o valor padrão recomendado para Admin, quaisquer usuários com uma função de privilégios inferiores poderão executar scripts em segundo plano na instância. Isso levará a um desvio completo do sistema de ACL, permitindo acesso total às tabelas.
    • Descrição antiga: esta propriedade armazena a função necessária para acessar o módulo Script em segundo plano. Se glide.script_processor.admin não estiver definido como o valor de admin, security_admin ou maint recomendado, os usuários com uma função de privilégios inferiores poderão executar scripts em segundo plano na instância. Isso levará a um desvio completo do sistema de ACL, permitindo acesso total às tabelas.
    • Nova correção: confira se a propriedade glide.script_processor.admin está mesmo definida como Admin. Este é o valor padrão nas instâncias.
    • Correção antiga: confira se a propriedade glide.script_processor.admin está mesmo definida para as funções de admin, security_admin ou maint.
    • Nova descrição: quando a propriedade com.glide.communications.httpclient.verify_hostname do Glide não está definida com True como valor seguro, o nome do host e a cadeia de certificados apresentados por hosts remotos durante uma conexão TLS iniciada na instância da ServiceNow não são validados. Isso poderá prejudicar a segurança na conexão TLS e viabilizar ataques de intermediários, em que as comunicações entre duas partes são interceptadas, podendo resultar na divulgação de dados confidenciais.
    • Descrição antiga: se o com.glide.communications.httpclient.verify_hostname não estiver definido como True, ataques de intermediários, em que as comunicações entre duas partes são interceptadas, poderão ocorrer. Definir essa propriedade com um valor inseguro desabilita o processo de verificação de certificados, o qual avalia todas as certificações na cadeia de certificados por meio da verificação do status de revogação. Defina esta propriedade como True para evitar que o cliente http se conecte a um nome de host potencialmente perigoso.
    Tempo de bloqueio de controle para tentativas inválidas de redefinição de senha [Atualizado na Central de segurança 1.3 e 2.0]
    • Nova descrição resumida: Control Lockout Time for Invalid Password Reset Attempts
    • Descrição resumida antiga: Minimize Reset Password Request Max Attempts Window Duration
    • Nova descrição: a propriedade password_reset.request.max_attempt_window define a quantidade de minutos que um usuário deverá esperar para redefinir ou mudar sua senha depois de ultrapassar a quantidade máxima de tentativas malsucedidas definida com a propriedade password_reset.request.max_attempt property. A definição de pouco minutos para a propriedade password_reset.request.max_attempt_window aumenta o risco de um ataque de força bruta conseguir inserir uma senha válida, já que uma quantidade maior de tentativas de redefinição de senha poderá realizada. O recomendado é usar a quantidade padrão de 1.440 minutos.
    • Descrição antiga: se a propriedade password_reset.request.max_attempt_window não estiver definida com o valor recomendado de 1.440 minutos ou menos, poderá ser possível fazer um ataque de força bruta à conta, já que ela não será bloqueada depois de uma quantidade máxima de tentativas de autenticação incorretas.
    • Nova correção: confira se a propriedade password_reset.request.max_attempt_window está mesmo definida para o valor mínimo de 1.440.
    • Correção antiga: confira se a propriedade password_reset.request.max_attempt_window está mesmo definida para o valor máximo de 1.440.
    • Script de regra: o script foi atualizado para melhorar a precisão da detecção.
    • Nova descrição resumida: Disable GlideRecord Scope Fencing Legacy Behavior
    • Descrição resumida antiga: Enable GlideRecord Scope Fencing Legacy Behavior
    • Nova correção: defina a propriedade glide.record.legacy_cross_scope_access_policy_in_script do Glide como False. Quando ausente na tabela sys_properties, o valor padrão é True.
    • Correção antiga: defina a propriedade glide.record.legacy_cross_scope_access_policy_in_script do Glide como False.
    Limitação de tentativas de redefinição de senha inválidas [Atualizado na Central de segurança 1.3 e 2.0]
    • Nova descrição resumida: Limit Invalid Password Reset Attempts
    • Descrição resumida antiga: Minimize Reset Password Request Max Attempt Allowance