インフィニティソリューションズ株式会社ブログ

MySQLのパスワードに残る脆弱性

MySQLはかなり広く使われているデータベースであることは間違いない。MySQLに限らず、様々なソフトウェアで脆弱性の懸念は存在するが、InformationWeekによると、相当危険な脆弱性がMySQLにあるとのこと。

MySQL Database Flaw Leaves Passwords Vulnerable(MySQLデータベースにパスワードの脆弱性あり)

MySQL

‘MySQL and MariaDB database servers are vulnerable to a brute-force attack that can reveal admin-level passwords in just seconds. The vulnerability stems from a flaw relating to how the databases verify password hashes.’

「MySQLとMariaDBデータベースサーバは、ブルートフォース攻撃(総当り攻撃)に脆弱性を持ち、管理者レベルのパスワードがほんの数秒で漏れてしまう。この脆弱性は、データベースがパスワードハッシュを確認する方法に関する欠陥から生じるもの。」

— かなり根本的な問題だ。

‘Due to the flaw, there’s a chance that MySQL/MariaDB would think that the password is correct even while it is not, and then accept any password, according to Sergei Golubchi, security coordinator for MariaDB, in asecurity advisoryposted to the oss-sec mailing list. The post continued, “Because the protocol uses random strings, the probability of hitting this bug is about [one in] 256.”’

「この欠陥により、MySQL/MariaDBは、パスワードが正しくなくとも、正しいものと思い、あらゆるパスワードを受けて入れてしまう可能性があると、MariaDBのセキュリティコーディネータのSergei Golubchi氏はoss-secメーリングリストにポストしたセキュリティ・アドバイザリで述べている。このポストでは、さらに、『プロトコールがランダムな文字列を使うため、このバグにヒットする確率は、1/256だ。』」

‘”If one knows a user name to connect (and “root” almost always exists), she can connect using *any* password by repeating connection attempts. [Around] 300 attempts takes only a fraction of second, so basically account password protection is as good as nonexistent,” said Golubchi.’

「Golubchi氏によれば、『接続するためのユーザ名を知っていれば(ほとんどの場合rootが存在する)、繰り返し接続を試みることにより、あらゆるパスワードを使って接続することが出来る。300回の試行でも、1秒も満たないうちに行えるため、基本的にアカウントのパスワード保護は無いに等しい。』」

‘Thankfully, however, just because the vulnerable code is contained in a database that uses MySQL or MariaDB code doesn’t necessarily mean the database is at risk. “Although a wide range of MySQL and MariaDB versions use the vulnerable code, only some of these systems are exploitable,” saidMetasploit founder, developer, and researcher H.D. Moore, in ablog postthat includes workarounds for mitigating the vulnerability in exploitable systems.’

「しかし幸い、MySQLやMariaDBのコードを使うデータベースに脆弱性コードが含まれているからといって、必ずしもデータベースが危険な状態にあるというわけではない。Metasploitの創設者で開発兼研究者であるH.D. Moore氏によれば、『MySQLやMariaDBの数多くのバージョンが脆弱性のあるコードを使っているとはいえ、そのうちの一部のみが悪用される可能性があるだけだ』とのこと。」

‘To date, Moore said, researchers have found that the following implementations are vulnerable to the exploit: Ubuntu Linux 64-bit (versions 10.04, 10.10, 11.04, 11.10, 12.04), OpenSuSE 12.1 64-bit MySQL 5.5.23-log, Debian Unstable 64-bit 5.5.23-2, Fedora, and Arch Linux (versions not known). Notably, however, official builds from MySQL and MariaDB can’t be exploited, and Moore said Red Hat confirmed that the vulnerability can’t be exploited in Red Hat Enterprise Linux 4, 5, and 6.’

「Moore氏によると、これまでの調査で、以下の実装に悪用されかねない脆弱性が存在することが分かっている。Ubuntu Linux 64ビット (バージョン 10.04, 10.10, 11.04, 11.10, 12.04), OpenSuSE 12.1 64ビット MySQL 5.5.23-log, Debian Unstable 64ビット 5.5.23-2, Fedora, and Arch Linux (バージョン不明)。 しかしながらとりわけ、MySQLやMariaDBのオフィシャル・ビルド版は悪用される恐れが無く、Moore氏によると、Red Hatは、Red Hat Enterprise Linux 4、5、6では脆弱性を悪用することは出来ないことを確認しているとのこと。」

‘Oracle, which develops MySQL, has patched the related flaw via its April 2012 critical patch update, while both MySQL and MariaDBhave issued their own patches. ‘

「MySQLを開発しているOracleは、April 2012 クリティカル・パッチ・アップデートで関連する欠陥にパッチを提供している一方、MySQLとMariaDBも独自のパッチを発行している。」

‘Based on Moore’s personal research, there are “approximately 1.74 million MySQL servers across the Internet [which are] at large,” he said, and about 50% of them–869,000 databases–are vulnerable to the exploit.’

「Moore氏の個人的な調査によれば、多く見積もってインターネット全体で約174万のMySQLサーバが存在し、そのうち約半数、86万9千のデータベースが悪用される脆弱性を有しているとのこと。」

‘Binding the database server to localhost means that it can’t be accessed remotely, which thus helps mitigate the attack. Likewise, putting access controls in place can block unapproved access from the Internet, which also mitigates the vulnerability.‘

「データベースサーバをローカルホストにバインドすれば、リモートからアクセスすることは出来ないため、アタックの危険性を軽減するのに役立つ。同様に、アクセスコントロールを入れることにより、インターネットからの未承認のアクセスをブロックすることができるため、脆弱性を軽減する。

‘Moore also noted that a related exploit modulefor the free Metasploit penetration testing tool that targets the MySQL and MariaDB vulnerability has already been developed and released.’

「Moore氏によれば、無料のMetasploit侵入テストツールのMySQLとMariaDBの脆弱性をターゲットとしたexploitモジュールを開発し、リリース済みとのことだ。」

— 最後は宣伝ですが、MySQLを使っているなら、要チェック。