Neohapsis/evilarc — pull request #1 by mattstreet (2014-04-29 02:55:14+00:00)
Title: Update evilarc.py - make archive paths more flexible

Changed how zip files are written so that archive files can be named things like home/../../../../../tmp/look_a_pathname_traversal

The way TarFile already works allows this as well. Added fullpath option attempting to preserve the original API and support this.

I needed to test some code which required the files being extracted to start with the archive folder so I wanted to use your code to do create archive path names like "example/../../../../../../../tmp/TADA". The way your code uses ZipFile.write wouldn't allow that, I started to overload write but then realized that writestr allows this.