Actualización de Git con 8 vulnerabilidades corrixidas

Publicado versións correctivas do sistema de control de fontes distribuídas Git 2.24.1, 2.23.1, 2.22.2, 2.21.1, 2.20.2, 2.19.3, 2.18.2, 2.17.3, 2.16.6, 2.15.4 e 2.14.62.24.1 XNUMX, que corrixiu vulnerabilidades que permitían a un atacante reescribir rutas arbitrarias no sistema de ficheiros, organizar a execución remota de código ou sobrescribir ficheiros no directorio ".git/". A maioría dos problemas identificados polos empregados
Microsoft Security Response Center, cinco das oito vulnerabilidades son específicas da plataforma Windows.

  • CVE-2019-1348 - comando de transmisión "feature export-marks=path"permite escribir etiquetas en directorios arbitrarios, que se poden usar para sobrescribir rutas arbitrarias no sistema de ficheiros cando se realiza unha operación de "importación rápida de git" con datos de entrada sen marcar.
  • CVE-2019-1350 - escape incorrecto dos argumentos da liña de comandos podería levar á execución remota do código do atacante durante a clonación recursiva mediante o URL ssh://. En particular, os argumentos de escape que rematan nunha barra invertida (por exemplo, “proba \”) manexáronse incorrectamente. Neste caso, ao enmarcar un argumento con comiñas dobres, escapouse a última comiña, o que permitiu organizar a substitución das súas opcións na liña de comandos.
  • CVE-2019-1349 — cando se clonan recursivamente submódulos (“clone —recurse-submodules”) no ambiente Windows baixo certas condicións podería ser activar o uso do mesmo directorio git dúas veces (.git, git~1, git~2 e git~N recoñécense como un directorio en NTFS, pero esta situación só se probou para git~1), que podería usarse para organizar escribindo no directorio ". git". Para organizar a execución do seu código, un atacante, por exemplo, pode substituír o seu script a través do manejador posterior á compra no ficheiro .git/config.
  • CVE-2019-1351 — o manejador de nomes de unidades de letras nas rutas de Windows ao traducir camiños como "C:\" foi deseñado só para substituír os identificadores latinos dunha soa letra, pero non tivo en conta a posibilidade de crear unidades virtuais asignadas mediante "subst letter:path" . Tales camiños non foron tratados como camiños absolutos, senón como camiños relativos, o que fixo posible, ao clonar un repositorio malicioso, organizar un rexistro nun directorio arbitrario fóra da árbore de directorios de traballo (por exemplo, cando se usaban números ou caracteres Unicode no disco). nome - "1:\what\the\ hex.txt" ou "ä:\tschibät.sch").
  • CVE-2019-1352 — cando se traballa na plataforma Windows, o uso de fluxos de datos alternativos en NTFS, creados engadindo o atributo ":stream-name:stream-type" ao nome do ficheiro, permitidas sobrescribir ficheiros no directorio ".git/" ao clonar un repositorio malicioso. Por exemplo, o nome ".git::$INDEX_ALLOCATION" en NTFS tratouse como unha ligazón válida ao directorio ".git".
  • CVE-2019-1353 — ao usar Git nun ambiente WSL (Windows Subsystem for Linux) ao acceder ao directorio de traballo non utilizados protección contra a manipulación de nomes en NTFS (os ataques a través da tradución de nomes FAT eran posibles, por exemplo, podíase acceder a ".git" a través do directorio "git~1").
  • CVE-2019-1354 -
    oportunidade escribe no directorio ".git/" da plataforma Windows ao clonar repositorios maliciosos que conteñan ficheiros cunha barra invertida no nome (por exemplo, "a\b"), que é aceptable en Unix/Linux, pero é aceptado como parte de o camiño en Windows.

  • CVE-2019-1387 — a comprobación insuficiente dos nomes dos submódulos podería usarse para organizar ataques dirixidos, que, se se clonan de forma recursiva, poderían potencialmente podería levar para executar o código do atacante. Git non impediu a creación dun directorio de submódulos dentro do directorio doutro submódulo, o que na maioría dos casos só provocaría confusión, pero non impediu potencialmente que o contido doutro módulo fose sobrescrito durante o proceso de clonación recursiva (por exemplo, os directorios do submódulo). "hippo" e "hippo/hooks" colócanse como " .git/modules/hippo/" e ".git/modules/hippo/hooks/", e o directorio hooks en hippo pódese usar por separado para aloxar hooks activados.

Recoméndase aos usuarios de Windows que actualicen inmediatamente a súa versión de Git e que, ata a actualización, se absteñan de clonar repositorios non verificados. Se aínda non é posible actualizar con urxencia a versión de Git, para reducir o risco de ataque, recoméndase non executar "git clone —recurse-submodules" e "git submodule update" con repositorios sen marcar, non usar "git". importación rápida” con fluxos de entrada sen marcar e non clonar repositorios en particións baseadas en NTFS.

Para maior seguridade, as novas versións tamén prohiben o uso de construcións da forma "submódulo.{name}.update=!command" en .gitmodules. Para as distribucións, pode seguir o lanzamento de actualizacións de paquetes nas páxinas Debian,Ubuntu, RHEL, SUSE/openSUSE, Fedora, Arco, ALT, FreeBSD.

Fonte: opennet.ru

Engadir un comentario