{"categories":[{"label":"Utilities","url":"https://skillfed.io/packages/category/utilities/4"},{"label":"Testing","url":"https://skillfed.io/packages/category/software-development-testing/2"},{"label":"Security","url":"https://skillfed.io/packages/category/security"}],"enrichment":{"capability":"Fickling is a decompiler, static analyzer, and bytecode rewriter for Python pickle serializations that detects, analyzes, and can reverse-engineer or create malicious pickle and pickle-based files including PyTorch models.","skillfed_tags":["pickle-security","ml-safety","bytecode-analysis"],"use_cases":["Scan downloaded PyTorch models or pickle files for malicious imports before loading them in production","Automatically block unsafe pickle deserialization in ML pipelines using global hooks or context managers","Analyze suspicious pickle files by decompiling them to Python AST for manual code review","Detect polyglot files that exploit multiple PyTorch or TorchScript format specifications","Trace pickle bytecode execution without executing embedded malicious code for forensic analysis"],"what_it_does":"Fickling provides tools to inspect and validate Python pickle files for malicious content before they are deserialized. It works by hooking into Python's pickle module to intercept and analyze bytecode execution, checking imports against an allowlist of known-safe ML library imports. The package can be used as a library with context managers or global hooks, or as a command-line tool for batch analysis.\n\nThe core use case is securing AI/ML environments where untrusted pickle files (including PyTorch model files) may be loaded. Fickling can also decompile pickle bytecode to an AST for manual inspection, trace pickle execution without running malicious code, inject code into pickle files, and identify polyglot files that masquerade as multiple formats. It supports PyTorch formats from v0.1.1 through v1.3 and TorchScript formats v1.0 through v1.4.","worth_installing":"Yes. Fickling is actively maintained, has no runtime dependencies, supports current Python versions, and fills a genuine security gap in ML workflows where pickle deserialization is a known attack vector. The LGPLv3+ license is permissive for most use cases. Install it if you load pickle or PyTorch files from any untrusted source."},"id":"fickling","links":{"html":"https://skillfed.io/packages/fickling","md":"https://skillfed.io/packages/fickling.md","pypi":"https://pypi.org/project/fickling/"},"maintenance":{"status":"active"},"meta":{"latest_release":"2026-06-26","license_spdx":null,"license_treatment":"copyleft","name":"fickling","python_support":"supports_current","summary":"A static analyzer and interpreter for Python pickle data"},"popularity":{"monthly_downloads":993426,"position":4556,"tier":"top_5000"},"security":{"n_vulnerabilities":0},"version":"0.1.12"}
