CVE-2015-6908(OpenLDAPの脆弱性情報)
CVE-2015-6908(OpenLDAPの脆弱性情報)
こんにちは。SIOS OSSエバンジェリスト/セキュリティ担当の面です。
今回は、9/10に報告されていたOpenLDAPの脆弱性(CVE-2015-6908)について簡単に触れてみます。
CVE-2015-6908
Priority
Medium
影響するバージョン
OpenLDAP 2.4.42以下のバージョン
対応方法
OpenLDAPパッケージのバージョンアップ
概要
2015年9月10日にOpenLDAPのslapdデーモンに「適当に改変したパケット(BERデータ)を送ることでクラッシュ(SIGABRT)させることが出来る」という脆弱性が発見されました。
BERとは、RFC4511にもあるように、Basic Encoding Rulesの略です。
改変したBERデータを送ると
openldap-2.4.42.src.tar.gz(OpenLDAPオフィシャルサイトからダウンロード)中のopenldapのio.cファイルで
476 ber_get_next( 477 Sockbuf *sb, 478 ber_len_t *len, 479 BerElement *ber ) 480 { 481 assert( sb != NULL ); --snip-- 681 682 assert( 0 ); /* ber structure is messed up ?*/ 683 return LBER_DEFAULT; 684 }
ここのber_get_next()中682行目のassert()が呼ばれてプログラムが異常終了するというものです。
攻撃用のデータをリモートから送った場合、slapdが下記のように異常終了します(CentOS7でテスト)。
※これは、slapdをコマンドラインから-d3オプションで動作させたときの出力です。デーモンとして動作させているときも、同様に異常終了します。
560c91f6 backend_startup_one: starting "dc=my-domain,dc=com" 560c91f6 hdb_db_open: database "dc=my-domain,dc=com": unclean shutdown detected; attempting recovery. 560c91f6 hdb_db_open: database "dc=my-domain,dc=com": dbenv_open(/var/lib/ldap). 560c91f6 slapd starting 560c91fa slap_listener_activate(7): 560c91fa >>> slap_listener(ldap:///) 560c91fa connection_get(15): got connid=1000 560c91fa connection_read(15): checking for input on id=1000 ber_get_next ldap_read: want=8, got=8 0000: ff 84 84 84 84 84 77 83 ......w. 560c91fa connection_get(15): got connid=1000 560c91fa connection_read(15): checking for input on id=1000 ber_get_next ldap_read: want=1, got=1 0000: 0a . 560c91fa connection_get(15): got connid=1000 560c91fa connection_read(15): checking for input on id=1000 ber_get_next slapd: io.c:682: ber_get_next: Assertion `0' failed.
対応方法
対応方法は、各ベンダーの情報を確認して下さい。現時点(2015/10/01)では、主要なディストリビューションの情報は、以下のようになっています。
ディストリビューションとSELinuxバージョン | 機能 |
---|---|
ディストリビューション名 | 情報URL |
RedHat Enterprise Linux/CentOS | https://rhn.redhat.com/errata/RHSA-2015-1840.html |
Oracle Linux | http://linux.oracle.com/errata/ELSA-2015-1840.html |
SuSE | https://www.suse.com/security/cve/CVE-2015-6908.html |
Debian | https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=798622 |
[参考]
Security Assesment
Security Assesment