Skip to content
KitploitKITPLOIT
HerramientasExploitsBlog
Log in
Enviar
HerramientasExploitsBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
dasel-hardened-container — Paquete e imagen reforzados de dasel v3.3.1 construidos mediante Melange y apko. Parcheando CVE-2026-33320. | Kitploit
Herramientas/GitHubGitHub/nedlir/dasel-hardened-container
Utilidades de Propósito GeneralSeguridad de ContenedoresAnálisis de VulnerabilidadesAuditoría de ConfiguraciónDevSecOpsDetección de SecretosSeguridad de Cadena de Suministro
GitHubnedlir/dasel-hardened-container

dasel-hardened-container

Paquete e imagen reforzados de dasel v3.3.1 construidos mediante Melange y apko. Parcheando CVE-2026-33320.

Ver Repositorio
20hace 4 mesesAún no revisado

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

dasel v3.3.1 contenedor endurecido

Este es un paquete melange y una imagen de contenedor apko para dasel v3.3.1 con un parche en tiempo de compilación para CVE-2026-33320 (expansión ilimitada de alias YAML). La imagen se construye enteramente a partir de un APK producido localmente; no se utiliza ninguna imagen upstream preconstruida.

Requisitos previos

HerramientaVersión probadaPropósito
Docker29.3.1Runtime de contenedores; ejecuta melange/apko mediante compose.yaml
melange0.50.5 (imagen Docker cgr.dev/chainguard/melange@sha256:b6f11bb45a6090c182986028fd2249fb1a18dcb6e173c4ce001dd3fb4cb1dd71)Constructor de paquetes APK
apko1.2.10 (imagen Docker cgr.dev/chainguard/apko@sha256:20dfc1f5e3461b5eaf3279f762cd4bf86c7f3635d2a9642f905cf583525f9ee6)Constructor de imágenes OCI
  • Arquitectura: solo x86_64
  • Se requiere acceso a Internet para la compilación inicial (descarga el tarball fuente, los módulos Go y los paquetes Wolfi)

Requisitos de Windows

Todos los comandos de compilación y carga funcionan desde cualquier terminal (PowerShell, CMD o bash). Un paso todavía requiere un shell Unix:

  • bash tests/test.sh — el script de pruebas usa bash y coreutils (timeout, grep, sed)

Instale Git Bash (se incluye con Git for Windows) antes de ejecutar las pruebas de la imagen.

Estructura del Proyecto

.
├── .github/
├── melange/
│   ├── dasel.yaml
│   └── CVE-2026-33320.patch
├── apko/
│   └── dasel.yaml
├── tests/
│   └── test.sh
├── Makefile
├── compose.yaml
├── keys/                       # Generated, gitignored
│   ├── melange.rsa
│   └── melange.rsa.pub
├── sbom/                       # Generated, gitignored
│   ├── sbom-x86_64.spdx.json
│   └── sbom-index.spdx.json
├── packages/                   # Generated, gitignored
│   └── x86_64/
│       ├── dasel-3.3.1-r0.apk
│       └── APKINDEX.tar.gz
└── README.md

Construcción

Con Make

make build        # keygen (if needed) + package + image
make test         # package tests + image tests
make all          # build + test
make clean        # remove all generated artifacts
make help         # list all targets and variables

Comandos manuales

# 1. Generate signing keys (one-time)
docker compose run --rm melange keygen keys/melange.rsa

# 2. Build the APK package (fetches source, applies CVE patch, compiles)
docker compose run --rm melange build melange/dasel.yaml --arch x86_64 --signing-key keys/melange.rsa

# 3. Build the OCI image (consumes the local APK)
docker compose run --rm apko build apko/dasel.yaml dasel:3.3.1 dasel.tar --arch x86_64 --sbom-path sbom/

El paso 2 genera y firma automáticamente packages/x86_64/APKINDEX.tar.gz.

Ejecución

Después de cargar la imagen, ejecute dasel:

docker load --input dasel.tar

# Example: query a JSON file
echo '{"name": "dasel"}' | docker run --rm \
  --read-only \
  --cap-drop=ALL \
  --security-opt=no-new-privileges \
  -i dasel:3.3.1-amd64 \
  -i json 'name'

Estas opciones aplican la capa de tiempo de ejecución de la estrategia de defensa en profundidad descrita en Endurecimiento de la imagen: un sistema de archivos raíz inmutable, cero capacidades de Linux y ninguna vía de escalada de privilegios.

Pruebas

Con Make

make test          # all tests (package + image)
make package-test  # melange package tests only
make image-test    # image tests only (requires bash)

Comandos manuales

# Package tests
docker compose run --rm melange test melange/dasel.yaml --arch x86_64

# Image tests (requires Git Bash on Windows)
docker load --input dasel.tar
bash tests/test.sh

El script de pruebas verifica:

  • La imagen se carga y dasel version reporta v3.3.1
  • Extracción de claves JSON (-i json 'test')
  • Conversión de JSON a YAML (-i json -o yaml --root)
  • Parche CVE: un YAML malicioso de tipo "billion laughs" provoca "yaml expansion budget exceeded" en lugar de colgarse

Corrección de CVE-2026-33320

La vulnerabilidad permite un consumo ilimitado de CPU/memoria mediante alias YAML anidados exponencialmente (ataque billion laughs). El parche en melange/CVE-2026-33320.patch añade dos salvaguardas al lector YAML de dasel: un límite de profundidad de expansión (32) que limita el anidamiento recursivo de alias, y un presupuesto de expansión (1000) que limita el total de desreferencias de alias por documento. Cuando se alcanza cualquiera de los límites, la decodificación devuelve un error de inmediato.

Seguridad, Reproducibilidad y Minimalidad

  • Seguridad: CVE-2026-33320 parcheado en tiempo de compilación. Todos los paquetes están firmados. La imagen contiene solo 3 paquetes APK (wolfi-baselayout, ca-certificates-bundle, dasel)
  • Reproducibilidad: YAML declarativo tanto para el paquete como para la imagen. El tarball fuente está anclado por SHA256. Todas las versiones de herramientas están documentadas. El binario Go se compila con -trimpath para eliminar las rutas de compilación locales
  • Minimalidad: No hay shell ni gestor de paquetes en la imagen final; solo el binario dasel, los certificados CA y baselayout

Endurecimiento de la imagen

La imagen aplica defensa en profundidad más allá del empaquetado mínimo:

CapaMedidaEfecto
ConstrucciónUsuario no root (UID 65532)El proceso del contenedor nunca se ejecuta como root
Construcción-s -w ldflags + -trimpath automáticoBinario sin símbolos, sin fugas de rutas locales
ConstrucciónSolo 3 paquetesSuperficie de ataque mínima, sin shell ni gestor de paquetes
Tiempo de ejecución--read-onlySistema de archivos raíz inmutable
Tiempo de ejecución--cap-drop=ALLCero capacidades de Linux
Tiempo de ejecución--no-new-privilegesEvita la escalada de privilegios mediante setuid/setgid

Escaneo de vulnerabilidades

La imagen construida (dasel.tar) se escaneó con herramientas estándar de la industria para validar la postura de seguridad más allá del propio parche de CVE.

Syft (generación de SBOM)

Syft extrajo 36 paquetes de la imagen inspeccionando los metadatos de módulos del binario Go:

  • 3 paquetes APK: wolfi-baselayout 20230201-r29, ca-certificates-bundle 20260413-r0, dasel 3.3.1-r0
  • 32 módulos Go: incluidos go.yaml.in/yaml/v4, github.com/hashicorp/hcl/v2, github.com/pelletier/go-toml/v2, github.com/goccy/go-json, github.com/charmbracelet/bubbletea, golang.org/x/sys, golang.org/x/text, stdlib go1.25.9 y 25 más
  • 19 archivos inventariados: /usr/bin/dasel, /etc/ssl/certs/ca-certificates.crt, base de datos APK, SBOM por paquete y archivos de configuración de baselayout

Grype (escáner de vulnerabilidades)

Descargar herramienta