Cabextract

Cabextract
Información sobre la plantilla
Cabextract.JPG
Cabextract soporta todas las características y formatos de archivos contenedores de Microsoft y los archivos de instalación de Windows CE . Se distribuye bajo la licencia GNU GPL y se basa en la LGPL portátil libmspack biblioteca.
DesarrolladorStuart Caie
Diseñado porProyecto Fedora
Modelo de desarrolloExtracción de archivos contenedores
Lanzamiento inicial23 de marzo de 2015
Última versión estableversión 1.6
Plataformas soportadasMultiplataforma
Génerose basa en la biblioteca libmspack LGPL portátil
Sistemas Operativos compatiblesWindows, OS X, Linux y openSUSE
IdiomaInglés
LicenciaLicencia pública general de GNU

Cabextract es Software Libre para la extracción de archivos contenedores de Microsoft, también llamados archivos .CAB, en UNIX o sistemas tipo UNIX. cabextract se distribuye bajo la licencia GPL.

Características

Cabextract se basa en la biblioteca libmspack LGPL portátil. cabextract soporta todas las características especiales y todos los formatos de compresión de archivos contenedores de Microsoft. Archivos contenedores de Microsoft son utilizados por Microsoft y otros para distribuir todo tipo de datos y el software:. Fuentes Web básicos, videos Longhorn, actualizaciones del sistema operativo y los códecs de vídeo, También puede mirar dentro de otros archivos para armarios empotrados.

Ultima versión

Cabextract versión 1.6 fue lanzado el 23 de marzo de 2015. Es una versión menor que corrige errores en cabextract. Cabextract también está disponible pre-construido para varias plataformas:

Paquetes de Linux

  • Descargar cabextract 1.6 i386 RPM
  • Descargar cabextract 1.6 source RPM
  • Cabextract en rpmfind.net
  • Cabextract para Debian
  • Cabextract para Ubuntu
  • Cabextract para Gentoo
  • Cabextract para Slackware
  • Cabextract para T2 SDE

Paquetes BSD

  • Cabextract para FreeBSD
  • Cabextract para NetBSD
  • Cabextract para OpenBSD
  • Cabextract para Solaris 10 y 11

Paquetes de Mac OS X

  • Imagen de disco independiente
  • Cabextract para Fink
  • Cabextract para Macports

Paquetes de Microsoft Windows

  • Cabextract para Cygwin x86
  • Cabextract para Cygwin x86_64

Otras plataformas

  • Cabextract para AmigaOS
  • Cabextract para AmigaOS4
  • Cabextract para DOS / FreeDOS

Instalación de cabextract

Para instalar una versión empaquetada de cabextract (por ejemplo, para Debian, Ubuntu, los BSDs, Fink, Macports, Cygwin), siga las instrucciones de ese sistema. Para instalar el RPM, utilice el comando rpm -i cabextract-1.6-1.i386.rpm Para instalar desde el código fuente tarball:

$ Tar zxf cabextract-1.6.tar.gz
$ Cd cabextract-1.6
$ ./configure
hacer
# Make install

Instrucciones más detalladas se incluyen en el archivo INSTALL que se encuentra en el directorio cabextract-1.6.

Utilizando cabextract

Introduzca man cabextract para leer la página del manual cabextract. Además, la ejecución del comando cabextract con la opción --help da un breve resumen del uso.

En el uso normal, basta con introducir cabextract y el nombre del gabinete o archivo ejecutable que desea extraer. Cabextract extraerá todos los archivos de todos los gabinetes al directorio actual, preservando cualquier estructura de directorio interna, permisos de archivo y fechas de archivo. Para una lista de archivos en lugar de extraerlos, utilice el --list opción. Para probar la integridad del archivo (haciendo el trabajo de extraer los archivos, pero no guardar los resultados en cualquier lugar), utilice el --test opción. Esto también imprime la suma de comprobación MD5 de cada archivo en el archivo.

Cabextract busca automáticamente los archivos de armarios incrustados, y los extrae todos. Si cualquier gabinete de múltiples partes están presentes, cabextract busca automáticamente las partes y los vincula en. Para suprimir este comportamiento, utilice el --single opción.

Cabextract puede reparar algunos tipos de archivos de gabinete corruptos. Tal vez una mejor palabra para esto es "salvamento", ya que los datos corruptos se pierde para siempre. Utilizando el --fix opción, perderán los datos no serán sustituidos por ceros y cabextract intentará continuar a bloques de datos posteriores, que esperemos que no son corruptos.

Usted puede hacer archivos de extracción cabextract en un directorio específico con el --directory opción, y se puede obligar a los nombres de archivos extraídos para letras minúsculas con la --lowercase opción. Puede controlar qué archivos se extrajo utilizando el --filter opción. Por ejemplo, cabextract filter '*.wav' music.cab va a extraer sólo los archivos .wav de music.cab.

Desarrollando cabextract

Puede obtener la versión de desarrollo actual de cabextract desde el repositorio GitHub libmspack . Utilice el script incluido rebuild.sh para construir el proyecto.

Cambios en cabextract 1.6

Era posible que los archivos del gabinete se extrajeran en ubicaciones de archivos absolutas, y era posible en Cygwin moverse por las protecciones absolutas y relativas de la trayectoria de cabextract usando barras invertidas. Estos problemas han sido solucionados.

Cambios en cabextract 1.5

  • Varios accidentes y bloqueos se encontraron con el AFL herramienta para generar archivos contenedores corruptos. Estos bloqueos y bloqueos se han corregido.
  • Cabextract ahora reemplaza caracteres Unicode defectuosos en nombres de archivo con el carácter de reemplazo Unicode estándar
  • wince_rename ahora pone archivos en la ruta de instalación correcta

Vulnerabilidades de seguridad

Esta es una lista de vulnerabilidades de seguridad reportadas en cabextract, y la versión (s) de cabextract que afectan. Debe actualizar a la versión más reciente siempre que sea posible.

Vulnerabilidad

  • CVE-2015-2060 : Un archivo CAB con overlong UTF-8 codificaciones para "/" pueden obtener sus archivos extraídos en una ruta absoluta en lugar del directorio actual. En Cygwin, un archivo CAB que utiliza "/" y "\" puede evadir cheques de archivos absolutos y "../" recorridos de directorio y puede obtener sus archivos extraídos a cualquier ruta
  • CVE-2015-4471 : Un archivo CAB con datos comprimidos-LZX que termina la fase inicial de un bloque comprimido de tamaño irregular puede causar un 1 byte bajo-leer, pero ningún accidente.
  • CVE-2015-4470 : Un archivo CAB con datos comprimidos-MSZIP y un código de distancia de 30 hace un 1 byte exceso de leer, pero ningún accidente.
  • CVE-2014-9732 : Un archivo CAB con dos carpetas, la segunda carpeta no válida, y una orden de descompresión de archivos de la carpeta 1, 2, 1, hace que la ejecución salte a NULL.
  • CVE-2014-9556 : En arquitecturas de 32 bits, un archivo CAB con un archivo no válido offset o longitud (donde compensado + longitud 2 ^ 32) provoca un bucle infinito en el decodificador Quantum.
  • CVE-2010-2801 : Un archivo CAB puede hacer que el descodificador Quantum escribir una pequeña longitud negativa para la salida. --test modo de cabextract interpreta esto como un gran número entero sin signo y lee la mayor parte del espacio de direcciones, causando un error de segmentación .
  • CVE-2010-2800 : Un archivo CAB que termina en un bloque sin comprimir MS-postal provoca un bucle infinito en el decodificador MS-postal.
  • CVE-2004-0916 : Un archivo CAB puede usar "../" en los nombres de archivo para atravesar directorios.

Fuentes