Security
A .3mf cannot run by itself, but a hostile file can attack the slicer that
opens it. preslice reads the file without running anything and checks it first.
For the known cases, see can a .3mf file have a virus.
What are the six checks?
| Check | Looks for |
|---|---|
| XXE | XML that fetches outside files |
| XML bomb | XML that expands until memory runs out |
| Code injection | Script patterns in settings and G-code |
| ZIP path traversal | File names that escape their folder |
| Compression bomb | A small file that unpacks huge |
| Signatures | Whether the file is signed |
What do the results mean?
| Result | Meaning |
|---|---|
| Pass | Nothing found in the files checked |
| Warn | Something unusual |
| Fail | A known attack pattern, with the file it is in |
| Info | Nothing to check, or a fact |
What is not checked?
preslice is not an antivirus. It does not verify signatures or judge whether a print will succeed. The container itself is defined by the 3MF Core Specification, worth reading beside a file that fails a check.