【用Python自动清理系统垃圾,再也不用360安全卫士了】教程文章相关的互联网学习教程文章

python – Marshal反序列化 – 不安全【代码】

我在一个项目中工作,我使用cPickle快速加载文件.几天前我读到,元帅甚至可能比cPickle更快.它对我有用,但我很好奇,the documentation的这个警告是关于:Warning The marshal module is not intended to be secure against erroneous or maliciously constructed data. Never unmarshal data received from an untrusted or unauthenticated source.如果我不小心,会发生什么?解决方法:元帅 没有已知的方法来利用元帅.实际上执行代码...

python – 需要一个线程安全的异步消息队列【代码】

我正在寻找一个Python类(最好是标准语言的一部分,而不是第三方库)来管理异步“广播风格”消息. 我将有一个线程将消息放入队列(‘putMessageOnQueue’方法不能阻止),然后多个其他线程将等待消息,可能会调用一些阻塞’waitForMessage’函数.当消息放在队列上时,我希望每个等待的线程都获得它自己的消息副本. 我查看了内置的Queue类,但我不认为这是合适的,因为消费消息似乎涉及将它们从队列中删除,因此只有1个客户端线程会看到每个. 这...

如何在Python中安全地停止无限循环?【代码】

我有一个运行在无限循环上的脚本,并将数据添加到数据库中并执行我不能中途停止的事情,因此我不能只按ctrl C并停止它. 我希望能够以某种方式停止while循环,但让它在停止之前完成它的最后一次迭代. 让我澄清一下: 我的代码看起来像这样:while True:does somethingdoes more thingsdoes more things我希望能够在结束或开始时中断while循环,但不能在执行操作之间中断,因为那样会很糟糕. 如果我想继续,我不希望它在每次迭代后都问我. ...

python 字符串实例:检查并判断密码字符串的安全强度

检查并判断密码字符串的安全强度import string def check(pwd):#密码必须至少包含六个字符if not isinstance(pwd,str) or len(pwd)<6:return noot suitable for password#密码强度等级与包含字符种类的对应关系d = {1:weak,2:below middle,3:above middle,4:strong}#分别用来标记pwd是否含有数字、小写字母、大写字母、指定的标点符号r = [False]*4pwd_range = string.ascii_uppercase+string.ascii_lowercase+string.digits+,.!;>...

python – 以安全和正确的方式使用RandomForestClassifier的predict_proba()函数【代码】

我正在使用Scikit学习在我的数据集上应用机器学习算法.有时我需要设置标签/类本身的标签/类的概率.我没有将垃圾邮件/非垃圾邮件作为电子邮件的标签,而是希望仅举例:0.78概率给定的电子邮件是垃圾邮件. 出于这个目的,我使用带有RandomForestClassifier的predict_proba()如下:clf = RandomForestClassifier(n_estimators=10, max_depth=None,min_samples_split=1, random_state=0) scores = cross_val_score(clf, X, y) print(scor...

python – 如何在Flask中安全地获取用户的真实IP地址(使用mod_wsgi)?【代码】

我在mod_wsgi / Apache上设置了一个烧瓶应用程序,需要记录用户的IP地址. request.remote_addr返回“127.0.0.1”并尝试更正this fix,但我发现Django出于安全原因删除了类似的代码. 有没有更好的方法来安全地获取用户的真实IP地址? 编辑:也许我错过了一些明显的东西.我申请了werkzeug’s/Flask’s fix但是当我尝试使用带有更改标题的请求时它似乎没有什么区别: run.py:from werkzeug.contrib.fixers import ProxyFixapp.wsgi_app...

python – collections.defaultdict线程安全吗?【代码】

我根本没有使用Python中的线程,并且认为这个问题是一个完全陌生的问题. 我想知道defaultdict是否是线程安全的.让我来解释一下: 我有d = defaultdict(list)默认情况下会创建缺失键列表.假设我有多个线程同时开始执行此操作:d['key'].append('value')最后,我应该以[‘value’,’value’]结束.但是,如果defaultdict不是线程安全的,如果线程1在检查dict中的’key’之后和d [‘key’] = default_factory()之前产生线程2,它将导致交错,...

python – JSON与Pickle安全性

我最近遇到了Python pickle和cPickle模块的安全问题.显然,除非你覆盖,否则在pickle中没有实现真正的安全措施将find_class方法作为基本修改来获得更多安全性.但我经常听说JSON更安全. 任何人都可以对此进行详细阐述吗?为什么JSON比pickle更安全? 非常感谢!标记解决方法:json更安全,因为它基本上更有限. json文档可以编码的唯一python类型是unicode,int,float,NoneType,bool,list和dict.它们以基本上无关紧要的方式编组/解组,不易...

python – 列表是线程安全的吗?【代码】

我注意到经常建议使用具有多个线程的队列,而不是列表和.pop().这是因为列表不是线程安全的,还是出于其他原因?解决方法:列表本身是线程安全的.在CPython中,GIL可以防止对它们进行并发访问,而其他实现则会为其列表实现使用细粒度锁或同步数据类型.但是,虽然列表本身不会因同时访问的尝试而损坏,但列表的数据不受保护.例如:L[0] += 1如果另一个线程执行相同的操作,则不保证实际将L [0]增加一,因为=不是原子操作. (非常,很少有Python...

Pythonic线程安全对象

在阅读了很多关于这个主题并讨论IRC之后,反应似乎是:远离线程.很抱歉重复这个问题,我的目的是通过不接受“线程是邪恶的”答案来深入探讨这个问题,并希望找到一个共同的解决方案. 编辑:对锁定,死锁,锁粒度,活锁,非确定性和竞争条件的综合弊端说不. –Guido van Rossum 我正在开发一个Python Web应用程序,我想为每个用户创建一个只能由当前用户访问的全局对象. (例如请求的URI) 建议的方法是传递对象,IMO使应用程序更难维护,如果我...

python – 在BeautifulSoup中安全地.text.strip()的优雅方式?【代码】

我在Python下使用BeautifulSoup进行相当多的数据抓取和清理,并经常将.text.strip()附加到soup.find命令.示例:foo_stuff = soup.find(“foo”).text.strip() 在某些情况下,soup.find找不到任何内容,并且生成的.text.strip()会中断.在我看来,我可以通过以下几种方式解决这个问题: >写.总是返回一些东西的查询.我不是一个聪明的人,以干净的方式构建我的查询.>在每个.text.strip()上使用try / except语句 – 代码很难看.>我可以修补....

多用户IPython身份验证/安全性

我正在尝试设置一个IPython笔记本集群,托管在Interwebz的某个地方,供我,一些同事和我的一个孩子使用,每个人都有自己的笔记本.但是,鉴于IPython在主机中执行python命令,我只想允许某些人访问它.有没有办法让这种设置需要某种身份验证,而无需安装或设置apache或其他框架?解决方法:[编辑2015年2月] 运行多用户IPython笔记本的相关项目是使用JupyterHub(注意:IPython已部分重命名为Jupyter). JupyterHub具有可插拔的体系结构,可以处理...

python – getattr / setattr / hasattr / delattr线程是否安全?【代码】

看到这个Singleton实现:if not hasattr(Singleton, "_instance"): with Singleton._instance_lock: if not hasattr(Singleton, "_instance"): Singleton._instance = Singleton() return Singleton._instance 似乎“Singleton._instance = ..”(...

Python解包线程安全吗?【代码】

在Python中是否像x,y = self.mytuple atomic这样的操作? 或者在分配期间可以通过另一个线程修改self.mytuple,导致x引用self.mytuple的第一个版本,y引用第二个版本? 我正在使用Python 3.解决方法:只有当Python代码不处理项目访问时,它才是线程安全的. 解包由一个字节码处理:>>> def f(): ... a, b = self.mytuple ... >>> import dis >>> dis.dis(f)2 0 LOAD_GLOBAL 0 (self) 3 LOAD_ATTR ...

python – 使用Fortify软件安全中心REST API创建项目【代码】

我可以使用HP Fortify SSC的REST API创建项目吗?这样可以很好地获取项目列表:import requests import getpass import jsonurl = "https://www.example.com/ssc/api/v1/" endpoint = "auth/obtain_token" headers = {"Content-Type": "application/json","Accept": "application/json"} username = getpass.getuser() password = getpass.getpass() auth = (username, password)r = requests.post("{url}{endpoint}".format(url=u...