使用cherrypy(python 2)禁用弱密码

我使用带有Python 2的Cherrypy 3.8.0来使用pyOpenSSL使用SSL / TLS。

我想禁用SSL3以避免POODLE(或其他弱密码)。

这是我到目前为止所拥有的:

  server_config={
          ‘server.socket_port‘: 443,
          ‘server.ssl_module‘:‘pyopenssl‘,
          ‘server.ssl_certificate‘:‘/path/myserver.crt‘,
          ‘server.ssl_private_key‘:‘/path/myserver.key‘,
      }

这与this question类似,但对于python 2和pyopenssl。

如何指定或排除特定密码?谢谢!

1 个答案:

答案 0 :(得分:6)

要禁用SSL3,您应该自己设置ssl_context变量,而不是接受默认值。以下是使用Python内置ssl模块(代替内置cherrypy ssl模块)的示例。

import cherrypy
from OpenSSL import SSL

ctx = SSL.Context(SSL.SSLv23_METHOD)
ctx.set_options(SSL.OP_NO_SSLv2 | SSL.OP_NO_SSLv3)

...

server_config = {
    ‘server.socket_host‘: ‘0.0.0.0‘,
    ‘server.socket_port‘: 443,
    ‘server.ssl_context‘: ctx
}

cherrypy.config.update(server_config)

在这种情况下,SSL来自OpenSSL模块。

值得注意的是,从Python 3.2.3开始,ssl模块默认禁用某些弱密码。

此外,您可以使用

专门设置所需的所有密码

ciphers = {
    ‘DHE-RSA-AE256-SHA‘,
    ...
    ‘RC4-SHA‘
}

ctx.set_cipher_list(‘:‘.join(ciphers))

如果您正在使用CherryPyWSGIServer模块中的web.wsgiserver,则可以使用

设置默认密码

CherryPyWSGIServer.ssl_adapter.context.set_cipher_list(‘:‘.join(ciphers)

原文地址:https://www.cnblogs.com/qiumingcheng/p/12262463.html

时间: 2024-12-18 07:13:56

使用cherrypy(python 2)禁用弱密码的相关文章

PYTHON测试邮件系统弱密码

#-*- coding:utf-8 -*- #测试公司邮件系统弱密码, from email.mime.text import MIMEText import smtplib #弱密码字典 passList = ['***','***123','abc123','123456'] #用户列表 userList = ['ds','ff','fd','f','fs'] #设置邮箱后缀及服务器地址 last_addr = '@***.com' smtp_server = 'mail.***.com'

基于Python+协程+多进程的通用弱密码扫描器

听说不想扯淡的程序猿,不是一只好猿.所以今天来扯扯淡,不贴代码,只讲设计思想. 0x00 起 - 初始设计 我们的目标是设计一枚通用的弱密码扫描器,基本功能是针对不同类型的弱密码,可方便的扩展,比如添加SSH.SVN.phpmyadmin的弱密码扫描功能.我们设定启动方法是命令行,可以通过命令行指定扫描对象,以及扫描哪些弱密码. 既然是要求可扩展,那我们首先来编写一个通用的框架,然后通过添加POC的方法来实现扩展.在这个框架中,我们需要处理的事情包括: 初始化扫描对象(格式化URL.从文件或数据

SVN弱密码扫描(Python)

寂寞如雪的用脑过度,所以来写个博客分享一下.#虽然上一篇博客我还没写完 SVN的弱密码,看起来很复杂,但实际上很简单啊= =虽然不像pymssql/mymssql这种,Python提供了很好用的包,但如果了解其中的原理就很简单了~~ 0x00 基本认知 首先要知道如下图所示的认证方式是什么认证: 这个涉及到HTTP认证方式,具体可以参考 http://blog.csdn.net/samlei/article/details/5485305 SVN用了最简单的Basic Auth.Basic Au

python 使用正则表达式判断密码强弱

学python的re模板,写了个文章发现没人看,所以总结出来经验,理论没人爱,实战的人心,那么既然没人喜欢理论就直接上实战,在实战中精炼理论.不多说直接先上代码 def password_level(password): weak = re.compile(r'^((\d+)|([A-Za-z]+)|(\W+))$') level_weak = weak.match(password) level_middle = re.match(r'([0-9]+(\W+|\_+|[A-Za-z]+))+|

测试教程网.unittest教程.3. 实例: 测试弱密码

From: http://www.testclass.net/pyunit/test_example_1/ 背景 考虑这样一个测试弱密码的实例,这个我们在pytest相关教程中也有过描述. 我们需要判断用户的密码中包含简单密码,规则是这样的,密码必须至少6位,满足6位的话判断用户的密码不是password123或者password之类的弱密码. 对于如下的测试数据,我们要如何使用unittest来进行相关测试呢? [ {"name":"jack","pas

python实现FTP弱口令扫描器与简单端口扫描器

python实现FTP弱口令扫描器与简单端口扫描器 目录 FTP弱口令扫描器 简单端口扫描器 参考: https://blog.csdn.net/rebelqsp/article/details/22109925 https://www.aliyun.com/jiaocheng/434055.html?spm=5176.100033.2.10.3571581eheCuHX FTP弱口令扫描器 # Ftp匿名扫描器的实现,需要使用FTP这个类 # Ftp这个类实现了Ftp客户端的大多数功能,比如连

弱密码算法简单汇总

整理一下非安全的弱密码算法,在使用时要注意. 一.加解密算法(cipher) 3des_cbc 3DES algorithm des_cbc DES algorithm aes128_cbc AES128 algorithm aes128_ctr AES128_CTR algorithm aes192_cbc  AES192 algorithm aes192_ctr AES192_CTR algorithm aes256_cbc AES256 algorithm aes256_ctr AES25

unittest 3 实例:测试弱密码,如何测试多组数据

目的 考虑这样一个测试弱密码的实例. 我们需要判断用户的密码中包含简单密码,规则是这样的,密码必须至少6位,满足6位的话判断用户的密码不是password123或者password之类的弱密码. 对于如下的测试数据,我们要如何使用unittest来进行相关测试呢? [ {"name":"jack","password":"Iloverose"}, {"name":"rose","

CMD打开远程并禁用空白密码只运行控制台登录

记录一下,在单位管理局域网机器时 写出的小程序: 应用场景:比如异地A的局域网内主机需要远程登录进入系统调试,而A电脑的Radmin之类的远程控制软件无效,就只能使用操作系统自带的远程桌面功能,而,异地A所在主机的操作人员对电脑一窍不通,此时电话里告诉他如何一步步打开远程并设置密码是非常繁琐的,尤其是设置密码后,电脑每次开机都需要输入密码,很不方便.而使用本地安全策略中的禁用“只允许空白密码远程登录”选项,则可以使用 Administrator 用户名,空白密码 远程登录到异地A的主机,所以网上