Python中文
首页
教程
问答
标签
搜索
登录
注册
如何保护自己免受gzip或bzip2炸弹的攻击?
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>这与问题<a href="https://stackoverflow.com/questions/1459080/how-can-i-protect-myself-from-a-zip-bomb">about zip bombs</a>有关,但考虑到gzip或bzip2压缩,例如接受<code>.tar.gz</code>文件的web服务。在</p> <p>Python提供了一个方便使用的<a href="http://docs.python.org/2/library/tarfile.html" rel="nofollow noreferrer">tarfile module</a>,但似乎没有提供针对zipbomb的保护。在</p> <p>在使用tarfile模块的python代码中,检测zip炸弹最优雅的方法是什么,最好不要从tarfile模块复制太多的逻辑(例如透明的解压缩支持)?在</p> <p>而且,简单一点:不涉及真正的文件;输入是一个类似文件的对象(由web框架提供,代表用户上传的文件)。在</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>如果您是为linux开发的,那么可以在单独的进程中运行解压,并使用ulimit来限制内存使用。在</p> <pre><code>import subprocess subprocess.Popen("ulimit -v %d; ./decompression_script.py %s" % (LIMIT, FILE)) </code></pre> <p>记住减压_脚本.py在写入磁盘之前,应将整个文件解压缩到内存中。在</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
如何将Python中的列表复制到给定的目标中?
10 回答
如何将python中的列表插入SQL表
6 回答
如何将python中的列表转换为numpy数组以放入十位
6 回答
如何将python中的列表输入javascript?
9 回答
如何将python中的列表返回给dag?
10 回答
如何将Python中的列表项重新排列成成对的元组/列表?
3 回答
如何将Python中的初始化对象序列化为XML?
5 回答
如何将python中的十进制字符串转换为数字?
5 回答
如何将Python中的原始输入文本转换为Tkinter中的标签?
4 回答
如何将python中的反斜杠命令转换为在Linux上运行
9 回答
如何将python中的命令行参数转换为字典?
3 回答
如何将python中的图像值传递到kivy中的kv文件?
8 回答
如何将Python中的图像数组(枕头对象)上传到Google云
6 回答
如何将Python中的图像编码为Base64?
9 回答
如何将python中的图像调整为灰度低分辨率,如MNIST时尚数据?
8 回答
如何将python中的多个html输出保存到单个文件(或多个)中?
9 回答
如何将Python中的多个ifelse语句重构为一个函数?
10 回答
如何将Python中的多处理与Django结合使用,从xml文件创建数千个模型实例?
6 回答
如何将python中的多级API响应转换为dataframe
3 回答
如何将python中的多线程编程模型转换为异步/等待模型?
4 回答