View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0009165 | Kali Linux | New Tool Requests | public | 2025-05-09 16:03 | 2025-10-03 14:51 |
Reporter | 0xless | Assigned To | |||
Priority | normal | Severity | minor | Reproducibility | have not tried |
Status | new | Resolution | open | ||
Summary | 0009165: Slip - create malicious archive files containing path traversal payloads. It supports zip, tar, 7z and zip-like | ||||
Description | Slip is a malicious archive generator to exploit path traversal vulnerabilities. Version to be added: v1.0.0 (https://github.com/0xless/slip/releases/tag/v1.0.0) MotivationMost commonly used tools rarely support path traversal payloads in archives, this makes it hard and time consuming to create malicious archives when attempting to find vulnerabilities in a software. With slip it's really convenient to create highly customizable archives that fit most situations. FeaturesSlip is a feature rich script capable of satisfying most "zip-slip" hunting needs, in particular the script:
Dependencies: python libraries py7zr==0.20.0, click Similar tools: https://github.com/ptoomey3/evilarc seem to be the most known tool for the job. Activity: Tool development started a couple of years ago. There are a few planned features to be added, but I just released the first stable version. I'm the maintainer of the repo and I'm available to fix bugs. How to install: How to use: Create a tar.bz2 archive containing 2 explicit paths: python3 slip.py --archive-type tar --compression bzip2 --paths "../etc/hosts, ../../etc/hosts" --file-content "foo" archive.tar Create a zip archive containing an explicit path and an explicit symlink: python3 slip.py --archive-type zip --compression deflate --paths "../etc/hosts" --symlinks "../etc/shadows" --file-content "foo" archive.zip Create a 7z archive with a named symlink: python3 slip.py --archive-type 7z --symlinks "../etc/hosts;linkname" archive.7z This technique is really useful in case directory traversal payloads are filtered in paths but not in symlink, as it would be possible to achieve an arbitrary write file referring to the named symlink as parth of the path (e.g. symlink: ../etc/;foo, path: foo/hosts). Create an archive from an existing one and add a new payload: python3 slip.py --clone source.7z --paths "foo" --file-content "bar" archive.7z Create an archive from a JSON file and add new payloads: python3 slip.py --json-file definition.json --paths "foo0,bar00" --symlinks "/etc/passwd,/etc/shadow" --file-content "buzz" archive.zip With definition.json containing: [ Supported fields are file-name, content, base64, type. If base64 is specified, content will be decoded form base64. type can only be path or symlink. Create a tar.bz2 archive with 4 payloads to search for "config.ini" at 3 different depths (it also uses Windows flavor dot dot slash): python3 slip.py --archive-type tar --compression bzip2 --paths "config.ini" --search 3 --dotdotslash "..\" --file-content "foo" archive.tar The archive will contain: config.ini NOTE: --search does not support named symlink usage to prevent named symlinks from overwriting eachother. Create a tar archive with payloads from the default mass-find dictionary to find the /etc/host/ file: python3 slip.py --archive-type tar --mass-find "/etc/hosts" --mass-find-mode symlinks archive.tar Packaged: The tool is not already packaged for debian | ||||
Date Modified | Username | Field | Change |
---|---|---|---|
2025-05-09 16:03 | 0xless | New Issue | |
2025-05-12 12:06 | g0tmi1k | Summary | Slip is a CLI tool to create malicious archive files containing path traversal payloads. It supports zip, tar, 7z and zip-like ( => Slip - create malicious archive files containing path traversal payloads. It supports zip, tar, 7z and zip-like |
2025-10-03 14:51 | g0tmi1k | View Status | private => public |