openssl vulnerability affect PostgreSQLs

Openssl的某些版本报的一些心跳扩展包的处理漏洞, 如下 : 

CVE-2014-0160


Learn more at National Vulnerability Database (NVD)

? Severity Rating ? Fix Information ? Vulnerable Software Versions ? SCAP Mappings

Description
The (1) TLS and (2) DTLS implementations in OpenSSL 1.0.1 before 1.0.1g do not properly handle Heartbeat Extension packets, which allows remote attackers to obtain sensitive information from process memory via crafted packets that trigger a buffer over-read, as demonstrated by reading private keys, related to d1_both.c and t1_lib.c, aka the Heartbleed bug.

可能导致敏感信息被攻击者获取.

如果在你的pg中使用了openssl相关的认证, 数据加密. 那么请尽快更新openssl版本, 影响的版本如下.

CVE-2014-0160: 7th April 2014A missing bounds check in the handling of the TLS heartbeat extension can be used to reveal up to 64kB of memory to a connected client or server. This issue did not affect versions of OpenSSL prior to 1.0.1. Reported by Neel Mehta.Fixed in OpenSSL 1.0.1g (Affected 1.0.1f, 1.0.1e, 1.0.1d, 1.0.1c, 1.0.1b, 1.0.1a, 1.0.1)

在PostgreSQL中使用openssl加密的文章可参考 : 

http://blog.163.com/digoal@126/blog/static/163877040201342233131835

http://blog.163.com/digoal@126/blog/static/1638770402013423101455507

检测PostgreSQL是否受到此漏洞影响, 可参考如下 : 

http://michael.otacoo.com/postgresql-2/testing-heartbleed-on-postgres/

http://filippo.io/Heartbleed

[参考]
1. http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2014-0160

2. http://www.openssl.org/news/vulnerabilities.html

3. http://blog.hagander.net/archives/219-PostgreSQL-and-the-OpenSSL-Heartbleed-vulnerability.html

4. PostgreSQL 用到openssl库的地方.

configure:#include <openssl/ssl.h>

configure:#include <openssl/ssl.h>

configure:#include <openssl/err.h>

configure:#include <openssl/err.h>

contrib/sslinfo/sslinfo.c:#include <openssl/x509.h>

contrib/sslinfo/sslinfo.c:#include <openssl/asn1.h>

contrib/pgcrypto/openssl.c:#include <openssl/evp.h>

contrib/pgcrypto/openssl.c:#include <openssl/blowfish.h>

contrib/pgcrypto/openssl.c:#include <openssl/cast.h>

contrib/pgcrypto/openssl.c:#include <openssl/des.h>

contrib/pgcrypto/openssl.c:#include <openssl/rand.h>

contrib/pgcrypto/openssl.c:#include <openssl/err.h>

contrib/pgcrypto/openssl.c:#include <openssl/aes.h>

contrib/pgcrypto/pgp-mpi-openssl.c:#include <openssl/bn.h>

doc/src/sgml/libpq.sgml:#include <openssl/ssl.h>

doc/src/sgml/html/libpq-status.html:#include <openssl/ssl.h>

src/interfaces/libpq/fe-secure.c:#include <openssl/ssl.h>

src/interfaces/libpq/fe-secure.c:#include <openssl/conf.h>

src/interfaces/libpq/fe-secure.c:#include <openssl/engine.h>

src/interfaces/libpq/libpq-int.h:#include <openssl/ssl.h>

src/interfaces/libpq/libpq-int.h:#include <openssl/err.h>

src/tools/msvc/Solution.pm:             $proj->AddIncludeDir($self->{options}->{openssl} . '\include');

src/include/pg_config.h.win32:/* Define to build with (Open)SSL support. (--with-openssl) */

src/include/pg_config.h:/* Define to build with (Open)SSL support. (--with-openssl) */

src/include/libpq/libpq-be.h:#include <openssl/ssl.h>

src/include/libpq/libpq-be.h:#include <openssl/err.h>

src/include/pg_config.h.in:/* Define to build with (Open)SSL support. (--with-openssl) */

src/bin/psql/command.c:#include <openssl/ssl.h>

src/backend/postmaster/fork_process.c:#include <openssl/rand.h>

src/backend/libpq/auth.c:#include <openssl/rand.h>

src/backend/libpq/be-secure.c:#include <openssl/ssl.h>

src/backend/libpq/be-secure.c:#include <openssl/dh.h>

src/backend/libpq/be-secure.c:#include <openssl/conf.h>

时间: 2024-09-29 10:26:59

openssl vulnerability affect PostgreSQLs的相关文章

OpenSSL安全公告高危漏洞 可以对默认配置的服务器发动DDoS攻击

OpenSSL项目组在今天发布高威胁安全通告CVE-2016-6304,更新内容包括:修复了自2016年5月以来的安全漏洞,其中包括一个高危漏洞,一个为"中危",其余均评级为"低危".OpenSSL安全公告 [22 Sep 2016]公告如下: OCSP状态请求扩展跨内存边界增长(CVE-2016-6304) 安全等级: 高危 恶意的客户端可以发送过大的OCSP状态请求延期.如果该客户端不断请求重新谈判,发送一个大的 OCSP 状态请求每延长一次,那么就会有无限的内

一个检测OpenSSL心脏出血漏洞的Python脚本分享_python

什么是SSL? SSL是一种流行的加密技术,可以保护用户通过互联网传输的隐私信息.网站采用此加密技术后,第三方无法读取你与该网站之间的任何通讯信息.在后台,通过SSL加密的数据只有接收者才能解密. SSL最早在1994年由网景推出,1990年代以来已经被所有主流浏览器采纳. 什么是"心脏出血"漏洞? SSL标准包含一个心跳选项,允许SSL连接一端的电脑发出一条简短的信息,确认另一端的电脑仍然在线,并获取反馈.研究人员发现,可以通过巧妙的手段发出恶意心跳信息,欺骗另一端的电脑泄露机密信息

openssl使用DSA算法生成签名

  命令: openssl> dgst -dss1 -sign C.pri -out signature.bin s.txt 解释 C.pri是DSA算法生成的私钥文件 s.txt是制作签名的原文 signature.bin是生成的签名文件 php中可以使用下面的方法察看签名内容  代码如下   <?php echo bin2hex(file_get_contents('signature.bin')); ?> 参考内容 消息摘要算法 支持的算法包括:MD2, MD4, MD5, MDC

【转载】升级OpenSSL修复高危漏洞Heartbleed

背景:       OpenSSL全称为Secure Socket Layer,是Netscape所研发,利用数据加密(Encryption)作技术保障在Internet上数据传输的安全.可确保数据在网络上的传输不会被窃听及截取.       当然,OpenSSL是一个强大的密码库,我们在使用SSL协议的时候不一定非得采用OpenSSL,不过目前基本上都是用的OpenSSL,因为它更安全,使用起来也更简单.       在近期互联网安全协议OpenSSL v1.0.1到1.0.1f的密码算法库中

Openssl:构建CA的过程并实现web服务基于https访问的网络架构

本文环境 RedHat 5.8 本博文主要内容:加密算法.CA介绍和配置等.web利用CA认证构建https安全传输 1.在互联网上数据额传输有两种:明文传输和加密传输.明文传输的协议有:ftp.http.smtp.telnet.但是为了数据的完整性和安全性,所以后来引用了加密等相关手段来保证数据的安全和完整性. 2.数据的机密性: 为了保证我们传输的数据不让第三方看到,所以我们采用加密来保证数据的机密性,让数据加密以后传输出去~然后让接收方利用相关的解密工具来对其收到的加密密文解密成明文,然后

使用OpenSSL生成并学习使用RSA密钥对

非对称加密算法也叫<公开密钥算法>,不同于对称加密算法,非对称加密算法加密密钥与解密密钥不是一把密钥.非对称密钥对中公钥是可以公开的. 这种算法如果使用公钥进行加密,则只能使用相应的私钥解密:如使用私钥加密,也只能使用相应的公钥解密.而要想通过公钥推导出私钥几乎是不可能的(这样的算法可以使用一些不可逆函数实现)! OpenSSL支持RSA.DSA.DH三种不同的非对称加密算法.下面我们将介绍如何使用OpenSSL生成并学习使用RSA密钥对. RSA非对称加密: 一.生成RSA密钥对(opens

不重新编译PHP为php增加openssl模块的方法

复制代码 代码如下:yum -y install openssl /usr/local/bin/是php的安装目录 切换到php安装目录的etx/openssl目录 cd /root/soft/php-5.2.8/ext/openssl 复制代码 代码如下: /usr/local/bin/phpize Cannot find config.m4. Make sure that you run '/usr/local/bin/phpize' in the top level source dire

php环境下配置openssl实现签名验证

配置如下 1:编辑openssl,php5需要0.96以上版本 2:将编译好的libeay32.dll,ssleay32.dll放到system32目录下 3:将php.ini中的openssl.dll前面的;去掉 4:将php目录下的php_openssl.dll拷贝到system32目录下 5:设置环境变量 OPENSSL_CONF=c:opensslopenssl.cnf 其中php自带了一个cnf示例,在phpextrasopenssl目录下 编写测试代码: $config = arra

linux c md5加密使用 openssl

方法一: #include<stdio.h> #include<openssl/md5.h> #include<string.h> int main( int argc, char **argv ) { MD5_CTX ctx; unsigned char *data="123"; unsigned char md[16]; char buf[33]={'\0'}; char tmp[3]={'\0'}; int i; MD5_Init(&c