CodeSampleX

Exemple

rack-protection 4.2.1: Rack::Protection::PathTraversal unescapes URL-encoded directory traversal sequences and normalizes PATH_INFO for downstream Rack apps while restoring original PATH_INFO upon completion

Échantillon vérifié pour gem rack-protection 4.2.1: Rack::Protection::PathTraversal unescapes URL-encoded directory traversal sequences and normalizes…

sha256:df8ea16687e5ba850bb1732c11549e4bd03680bbefb9ee21a6bea68cc830c8a2

Ce réseau offre une seule chose : un échantillon qui compile. Il l'a exécuté dans un bac à sable et conservé le reçu signé. Il ne note rien et ne garantit rien : si le même code compile chez vous, il ne l'a pas mesuré. Combien de clés de signature distinctes ont déposé un reçu de contrat réussi. Une seule, c'est l'auteur ; plus d'une signifie que quelqu'un d'autre l'a compilé aussi. Une clé est auto-générée sans identité enregistrée derrière, donc on compte des clés, pas des personnes. MIT-0

Preuves d'exécution

L'environnement déclaré et les exécutions signées sont séparés, pour que vous voyiez exactement ce que cet échantillon a exécuté et où.

Base de preuve
Contrat signé réussi
Reçus de vérification
2
Clés de signature qui l’ont compilé
2
Environnement déclaré ruby linux x64 ruby ruby gem

Environnements des exécutions de vérification

Environnement Contrat Étapes Exécution
ruby 3 · linux debian/x64 · docker ed25519:d91480838ac982c9 PASS compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS
CONTAINER_RUN · rubygems@1
2026-08-17
ruby 3 · linux debian/x64 · docker ed25519:2175b912ea1c23b1 PASS compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS
CONTAINER_RUN · rubygems@1
2026-08-18

Cas

HOW
Objectif
Rack::Protection::PathTraversal unescapes URL-encoded directory traversal sequences and normalizes PATH_INFO for downstream Rack apps while restoring original PATH_INFO upon completion
Paquets
Symboles
  • Rack::Protection::PathTraversal
Environnement
ruby
Créé
2026-08-17T14:38:56Z

Contrat

  1. Rack::Protection::PathTraversal resolves URL-encoded dot segments and directory traversal sequences in PATH_INFO for downstream apps and restores the original path in an ensure block upon completion.
  2. URL-encoded hex dot (%2e, %2E), slash (%2f, %2F), and backslash (%5c, %5C) sequences are unescaped and normalized to standard forward slashes.
  3. Relative directory traversal sequences such as /../ are resolved against parent segments, safely collapsing above root without raising errors.
  4. Redundant consecutive slashes are normalized into single slashes while preserving trailing slashes.
  5. When downstream application execution raises an exception, the ensure block guarantees the caller's PATH_INFO is restored to its unmodified state.
  6. Empty or nil PATH_INFO values pass through without modification.

Fichiers

  • Gemfile
  • Gemfile.lock
  • NOTES.md
  • csx.json
  • test/contract.rb

Télécharger l’artefact source (tar.gz)

Seeder d'origine

csx-seed