blob: 75ec1fd616d9af5c237ed362b90ad5760966f7b3 [file] [log] [blame]
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
#
# Copyright 2015 Oracle and/or its affiliates. All rights reserved.
#
# Oracle and Java are registered trademarks of Oracle and/or its affiliates.
# Other names may be trademarks of their respective owners.
#
# The contents of this file are subject to the terms of either the GNU
# General Public License Version 2 only ("GPL") or the Common
# Development and Distribution License("CDDL") (collectively, the
# "License"). You may not use this file except in compliance with the
# License. You can obtain a copy of the License at
# http://www.netbeans.org/cddl-gplv2.html
# or nbbuild/licenses/CDDL-GPL-2-CP. See the License for the
# specific language governing permissions and limitations under the
# License. When distributing the software, include this License Header
# Notice in each file and include the License file at
# nbbuild/licenses/CDDL-GPL-2-CP. Oracle designates this
# particular file as subject to the "Classpath" exception as provided
# by Oracle in the GPL Version 2 section of the License file that
# accompanied this code. If applicable, add the following below the
# License Header, with the fields enclosed by brackets [] replaced by
# your own identifying information:
# "Portions Copyrighted [year] [name of copyright owner]"
#
# If you wish your version of this file to be governed by only the CDDL
# or only the GPL Version 2, indicate your decision by adding
# "[Contributor] elects to include this software in this distribution
# under the [CDDL or GPL Version 2] license." If you do not indicate a
# single choice of license, a recipient has the option to distribute
# your version of this file under either the CDDL, the GPL Version 2 or
# to extend the choice of license to its licensees as provided above.
# However, if you add GPL Version 2 code and therefore, elected the GPL
# Version 2 license, then the option applies only if the new code is
# made subject to such option by the copyright holder.
#
# Contributor(s):
#
# Portions Copyrighted 2015 Sun Microsystems, Inc.
LAB_security_error=Erro de Seguran\u00e7a
LAB_security_warning=Advert\u00eancia de Seguran\u00e7a
SecurityCheck_NAME=Fun\u00e7\u00f5es da biblioteca C
SecurityCheck_DESCRIPTION=Verifique o uso das fun\u00e7\u00f5es da biblioteca C n\u00e3o protegidas
DisableHint=Configurar Dicas
#AvoidFunctionUsage
FunctionUsageAudit.name=Usando {0}
FunctionUsageAudit.alternative=\nAlternativa: {0}
#issues descriptions
FunctionUsageAudit.gets.description=Essa fun\u00e7\u00e3o n\u00e3o verifica se h\u00e1 limites ao armazenar a entrada. Essa fun\u00e7\u00e3o n\u00e3o pode ser usada com seguran\u00e7a.
FunctionUsageAudit.cftime.description=Essas rotinas n\u00e3o fazem verifica\u00e7\u00e3o de limites no buffer de entrada e podem importar dados do usu\u00e1rio por meio da vari\u00e1vel de ambiente CFTIME
FunctionUsageAudit.strcat.description=N\u00e3o \u00e9 poss\u00edvel limitar essas fun\u00e7\u00f5es a um tamanho de buffer m\u00e1ximo.\nO uso dessas fun\u00e7\u00f5es sempre for\u00e7ar\u00e1 os revisores a seguir a l\u00f3gica e evitar a varredura automatizada de vulnerabilidades no c\u00f3digo-fonte.
FunctionUsageAudit.access.description=Essa fun\u00e7\u00e3o n\u00e3o tem utilidade porque as informa\u00e7\u00f5es que ela fornece ficam desatualizadas pelo tempo que voc\u00ea tem para utiliz\u00e1-las.\nO uso de access() seguido de open() tem uma condi\u00e7\u00e3o de agilidade que n\u00e3o pode ser resolvida.
FunctionUsageAudit.strncat.description=strncat() \u00e9 dif\u00edcil de usar porque exige o c\u00e1lculo do tamanho apropriado do buffer de destino
FunctionUsageAudit.strncpy.description=N\u00e3o \u00e9 garantido que strncpy() termine com nulo o buffer de destinos.
FunctionUsageAudit.chmod.description=Essas fun\u00e7\u00f5es operam em nomes de caminho e est\u00e3o sujeitas a condi\u00e7\u00f5es de agilidade. \nNormalmente, os programas n\u00e3o devem precisar chamar chown/chmod, mas honrar o uid atual (retorne para ele antes de abrir os arquivos.) e umask.
FunctionUsageAudit.alloca.description=N\u00e3o verifica se o ponteiro retornado est\u00e1 dentro dos limites da pilha -\ne para aloca\u00e7\u00f5es de mem\u00f3ria maiores que uma p\u00e1gina, pode pular a p\u00e1gina de prote\u00e7\u00e3o de pilha para outras p\u00e1ginas alocadas e substitu\u00ed-las.
FunctionUsageAudit.drand48.description=Este \u00e9 um gerador de n\u00famero aleat\u00f3rio fraco; ele n\u00e3o \u00e9 \u00fatil para fins de seguran\u00e7a.
FunctionUsageAudit.execvp.description=Essas fun\u00e7\u00f5es s\u00e3o muito perigosas para uso em bibliotecas ou comandos e e daemons privilegiados porque elas encontram o execut\u00e1vel \npesquisando os diret\u00f3rios na vari\u00e1vel de ambiente PATH, que est\u00e1 sob controle total do usu\u00e1rio.
FunctionUsageAudit.sprintf.description=Causa t\u00edpica de estouro de buffer. Se, por qualquer motivo, voc\u00ea precisar usar essas fun\u00e7\u00f5es, certifique-se de que o segundo \nargumento n\u00e3o possa ser controlado pelo usu\u00e1rio e de que voc\u00ea possa confiar que os par\u00e2metros n\u00e3o exceder\u00e3o o buffer de destino.
FunctionUsageAudit.getlogin.description=O valor retornado por getlogin() n\u00e3o \u00e9 confi\u00e1vel; \u00e9 uma mera dica de nome do usu\u00e1rio.
FunctionUsageAudit.getpass.description=Somente os primeiros 8 bytes de entrada s\u00e3o usados. Evite utiliz\u00e1-los em um novo c\u00f3digo.
FunctionUsageAudit.mktemp.description=Gera um nome de arquivo tempor\u00e1rio, mas a seguran\u00e7a do uso do nome do caminho gerado n\u00e3o \u00e9 garantida, visto que h\u00e1 uma condi\u00e7\u00e3o de agilidade \nentre as verifica\u00e7\u00f5es em mktemp() e open() subsequente pela aplica\u00e7\u00e3o.
FunctionUsageAudit.popen.description=Essa chamada de biblioteca sempre envolve o shell que envolve as vari\u00e1veis de ambiente PATH, IFS e outras, bem como a interpreta\u00e7\u00e3o de caracteres especiais. \nUse posix_spawn() para executar outros programas, com waitpid() ou pipe(), conforme necess\u00e1rio.
FunctionUsageAudit.tempnam.description=Essa fun\u00e7\u00e3o n\u00e3o \u00e9 adequada para gerar nomes de arquivo imprevis\u00edveis. \nH\u00e1 uma condi\u00e7\u00e3o de agilidade entre a gera\u00e7\u00e3o do nome do arquivo e seu uso em, por exemplo, open()
FunctionUsageAudit.truncate.description=Esta fun\u00e7\u00e3o est\u00e1 sujeita a condi\u00e7\u00f5es de agilidade no nome do caminho. \nUse ftruncate() ap\u00f3s um open() seguro.
FunctionUsageAudit.utmpname.description=Use os arquivos utmp e utmpx padr\u00e3o.
FunctionUsageAudit.kvm_open.description=Gera um nome de arquivo tempor\u00e1rio, mas a seguran\u00e7a do uso do nome do caminho gerado n\u00e3o \u00e9 garantida, visto que h\u00e1 \numa condi\u00e7\u00e3o de agilidade entre as verifica\u00e7\u00f5es em mktemp() e open() subsequente pela aplica\u00e7\u00e3o.
FunctionUsageAudit.open.description=Ao abrir para leitura de um programa privilegiado, certifique-se de abrir o arquivo conforme o usu\u00e1rio, eliminando privil\u00e9gios ou definindo o uid efetivo como o uid real. \nAo abrir para grava\u00e7\u00e3o, use os flags O_NOFOLLOW e O_NOLINKS, ou use O_CREAT|O_EXCL para assegurar-se de que um novo arquivo seja criado, em vez de abrir um arquivo existente. \nAo abrir um arquivo, considere se o descritor de arquivo deve ser mantido aberto em uma chamada exec().
FunctionUsageAudit.dup.description=Retorne os descritores de arquivos com o FD_CLOEXEC limpo para que eles possam ser eliminados quando um programa chamar exec(). O c\u00f3digo antigo fazia chamadas fcntl() pouco tempo depois \nque essas fun\u00e7\u00f5es eram retornadas para definir esse flag, mas em c\u00f3digo de v\u00e1rios threads (inclusive programas que por si mesmos executam um thread, mas podem estar vinculados \na bibliotecas que executam threads adicionais), isso deixa uma janela aberta para uma disputa com outro thread. As chamadas F_DUPFD_CLOEXEC & F_DUP2FD_CLOEXEC \npara fcntl (dispon\u00edvel no Solaris 11 e releases mais recentes) combinam a defini\u00e7\u00e3o de duplica\u00e7\u00e3o & flag em uma opera\u00e7\u00e3o at\u00f4mica, de modo que n\u00e3o h\u00e1 disputa.
FunctionUsageAudit.fopen.description=N\u00e3o \u00e9 poss\u00edvel criar com seguran\u00e7a arquivos dessa maneira. Entretanto, depois de ser verificado que existe um nome de caminho, por exemplo, ap\u00f3s mkstemp(), \nele poder\u00e1 ser usado para abrir esses nomes de caminho. Em outros casos, uma chamada segura de open() seguida por fdopen() dever\u00e1 ser usada.
FunctionUsageAudit.lstat.description=Essa fun\u00e7\u00e3o n\u00e3o \u00e9 adequada para verificar a exist\u00eancia ou a aus\u00eancia de um arquivo. Seguida por open(), ela tem uma condi\u00e7\u00e3o de agilidade inerente que n\u00e3o pode ser solucionada.
FunctionUsageAudit.bcopy.description=N\u00e3o use para copiar strings, ainda que o tamanho possa ser conhecido.
FunctionUsageAudit.catopen.description=Bibliotecas e programas n\u00e3o devem chamar catopen() em nomes de caminho informados pelo usu\u00e1rio. \nCat\u00e1logos de mensagens fornecidos pelo usu\u00e1rio podem ser utilizados para quebrar facilmente um c\u00f3digo privilegiado.
FunctionUsageAudit.chdir.description=Essa fun\u00e7\u00e3o \u00e9 aberta para condi\u00e7\u00f5es de agilidade de nome de caminho. N\u00e3o use em programas de v\u00e1rios threads. \nPara evitar a condi\u00e7\u00e3o de agilidade, use fchdir() ap\u00f3s o diret\u00f3rio ter sido aberto usando open()-ed e as propriedades terem sido verificadas usando fstat()).
FunctionUsageAudit.chroot.description=Os ambientes chroot'ed oferecem pouca prote\u00e7\u00e3o; os programas podem facilmente escapar. N\u00e3o execute qualquer programa privilegiado \nem um ambiente chroot()'ed e efetue chdir() para um ponto abaixo da nova raiz ap\u00f3s chroot().
FunctionUsageAudit.copylist.description=Essa fun\u00e7\u00e3o abre arquivos e s\u00f3 deve ser usada para abrir nomes de caminho seguros.
FunctionUsageAudit.dlopen.description=Os par\u00e2metros transmitidos ao dlopen s\u00f3 dever\u00e3o ser nomes de caminho n\u00e3o qualificados que assim sejam encontrados usando o caminho do vinculador de runtime, \nou nomes de caminho completos que n\u00e3o sejam de forma alguma derivados da entrada do usu\u00e1rio (inclusive de argv[0] !!!) N\u00e3o h\u00e1 maneira de abrir com seguran\u00e7a um objeto compartilhado fornecido pelo usu\u00e1rio; \na fun\u00e7\u00e3o _init() do objeto \u00e9 executada antes do retorno de dlopen().
FunctionUsageAudit.execl.description=Certifique-se de que o ambiente esteja limpo e de que descritores de arquivo desnecess\u00e1rios estejam fechados antes de executar um novo programa.
FunctionUsageAudit.fattach.description=Verifique o descritor de arquivo ap\u00f3s aberto (usando fstat()), n\u00e3o o nome do arquivo antes da abertura.
FunctionUsageAudit.printf.description=Em risco de strings de formato especificadas pelo usu\u00e1rio. \nSe a string de formato vier de um cat\u00e1logo de mensagens, verifique suas manipula\u00e7\u00f5es NLSPATH e os usos de catopen()/catget().
FunctionUsageAudit.snprintf.description=Em risco de strings de formato especificadas pelo usu\u00e1rio. \nSe a string de formato vier de um cat\u00e1logo de mensagens, verifique suas manipula\u00e7\u00f5es NLSPATH e os usos de catopen()/catget(). \nsnprintf() e vsnprintf() retornam o n\u00famero de caracteres que teriam sido gravados no buffer se ele fosse grande o suficiente. \nObserva\u00e7\u00e3o: nenhum dos argumentos pode apontar para o buffer de sa\u00edda.
FunctionUsageAudit.swprintf.description=Em risco de strings de formato especificadas pelo usu\u00e1rio. \nSe a string de formato vier de um cat\u00e1logo de mensagens, verifique suas manipula\u00e7\u00f5es NLSPATH e os usos de catopen()/catget(). \nObserva\u00e7\u00e3o: nenhum dos argumentos pode apontar para o buffer de sa\u00edda.
FunctionUsageAudit.syslog.description=Em risco de strings de formato especificadas pelo usu\u00e1rio. \nSe a string de formato vier de um cat\u00e1logo de mensagens, verifique suas manipula\u00e7\u00f5es NLSPATH e os usos de catopen()/catget().
FunctionUsageAudit.scanf.description=Ao verificar strings, certifique-se de que o formato especificado inclua tamanhos de buffer m\u00e1ximos. \nObserve que o buffer correspondente deve ter pelo menos 1 byte maior para permitir espa\u00e7o para termina\u00e7\u00e3o de caractere NULO.
FunctionUsageAudit.ftw.description=Segue links simb\u00f3licos e cruza pontos de montagem. \nUse nftw com os flags apropriados definidos (uma combina\u00e7\u00e3o de FTW_PHYS e FTW_MOUNT).
FunctionUsageAudit.getenv.description=O ambiente \u00e9 totalmente especificado pelo usu\u00e1rio. Quando poss\u00edvel, o uso de getenv() deve ser evitado em bibliotecas. \nAs strings retornadas por getenv() podem ter at\u00e9 NCARGS bytes (que atualmente \u00e9 1MB para ambientes de 32 bits.) \nOs nomes de caminho derivados de vari\u00e1veis de ambiente n\u00e3o devem ser confi\u00e1veis. \nEles n\u00e3o devem ser usados como entrada para qualquer uma das fun\u00e7\u00f5es *open(), inclusive catopen() e dlopen().
FunctionUsageAudit.mkdir.description=Tenha cuidado com o caminho utilizado. \nEssa fun\u00e7\u00e3o n\u00e3o seguir\u00e1 links simb\u00f3licos para o \u00faltimo componente, de modo que eles s\u00e3o relativamente seguros.
FunctionUsageAudit.strccpy.description=N\u00e3o \u00e9 poss\u00edvel limitar essas fun\u00e7\u00f5es a um tamanho de buffer m\u00e1ximo. \nO uso dessas fun\u00e7\u00f5es sempre for\u00e7ar\u00e1 os revisores a seguir a l\u00f3gica e evitar a varredura automatizada de vulnerabilidades no c\u00f3digo-fonte.
FunctionUsageAudit.umask.description=N\u00e3o utilize em bibliotecas ou aplica\u00e7\u00f5es; \no usu\u00e1rio sabe melhor e seu umask deve ser usado. Al\u00e9m disso, n\u00e3o \u00e9 protegido contra v\u00e1rios threads.