タグ

mysqlとsecurityに関するakishin999のブックマーク (16)

  • CVE-2016-6662 MySQL Remote Root Code Execution / Privilege Escalationについて - Qiita

    免責 取り敢えずわかっている範囲で書いただけなので、手元で再現やパッチの正当性は確認していません。 自己責任でどうぞ。 これ(2016/09/22 22:00)以降新しい情報が出てきても、おそらくもう更新しません。 CVE-2016-6662 についてはこちら MySQLに重大な脆弱性見つかる、パッチ存在せずデフォルトで影響 - ITmedia ニュース oss-sec: CVE-2016-6662 - MySQL Remote Root Code Execution / Privilege Escalation ( 0day ) この脆弱性を再現させるために必要なもの (未検証) 5.5.52, 5.6.33, 5.7.15は影響を受けないかも知れません。詳しくは図のさらに下に。 手元で再現させてはいませんが、 オリジナルの脆弱性報告 の影響を受けるバージョンがしゃらっと "5.7.14

    CVE-2016-6662 MySQL Remote Root Code Execution / Privilege Escalationについて - Qiita
  • 危険がデンジャー、MySQLのFile_priv | GMOメディア エンジニアブログ

    こんにちは、DBAのたなかです。 先月末くらいにAmazon RDSに触る機会があって初めて気付いたのですが、 RDSのrootはいくつか権限をREVOKEされています。 SUPERがないからSET GLOBALで設定できない話はよく聞いていたのですが、FILEもありません。 どうせシェルがないからLOAD DATA INFILE使えないし、FILE権限なんてあってもしょうがない…なんて思ってませんか? FILE権限ってPaaS側にとっても結構デンジャーなんです。 今日はそんなおはなし。 【DBサーバーのファイルが読み取れる】 基ですかね。 mysql> SELECT LOAD_FILE('/etc/hosts'); ..LOAD_FILEで読み込むのはサーバー側のファイルです。 mysqldの実行ユーザーが読めるファイルなら何でも読みます。 $HOMEのパスさえわかれば、.ssh/au

  • MySQL 5.7.4で導入されたdefault_password_lifetimeがじわじわくる(MySQL 5.7.11でFIX!!)

    MySQL 5.7.4で導入されたdefault_password_lifetimeがじわじわくる(MySQL 5.7.11でFIX!!) 【2016/01/13 10:12】 MySQL 5.7.11でdefault_password_lifetimeのデフォルトは0に変更になりました! それ以降のバージョンであればこの記事の内容は気にする必要はありません。 日々の覚書: MySQL 5.7.11でdefault_password_lifetimeのデフォルトが0になるらしい! TL;DR default_password_lifetime= 0 を秘伝のmy.cnfに入れておくつもり。 MySQL :: MySQL 5.7 Reference Manual :: 5.1.4 Server System Variables パラメーターの意味は読んで字のごとく、「最後にパスワードが更新さ

  • 【緊急】RDS for MySQL アップデートのお知らせ | DevelopersIO

    はじめに こんにちは植木和樹です。日10月17日付けでMySQL 5.5/5.6に対する脆弱性が発表されています。これはAWSのRDSも対象となっています。 AWS Developer Forums: 【参考日語訳】MySQL 5.5 and 5.6 Security Advisory MySQL 5.5 and 5.6 Security Advisory 上記ページのリンク先にあるOracleの発表を読むと、「ユーザーパスワード認証なしに悪意のあるコードを実行できる」とあります。 訂正:2014/10/18 9:10 最初に公開した内容の一部に2点誤りがありました。 日時間 10/18(土)に強制アップグレードされるインスタンスはPublicly Accessibleの設定に関係なく、セキュリティーグループが無条件解放になっているインスタンスが対象となります 日時間 10/18(

    【緊急】RDS for MySQL アップデートのお知らせ | DevelopersIO
  • PHP+PDO+MySQLの組み合わせではSQLインジェクション攻撃で複文呼び出しが可能

    基礎からのPHPという書籍を読んでおりましたら、SQLインジェクションの攻撃例として、以下のSQL文ができあがる例が紹介されていました。PHP+PDO+MySQLという組み合わせです。 SELECT * FROM tb2 WHERE ban=1;delete from tb2 2つのSQL文がセミコロンで区切って1つにまとめられていますが、これを「複文(multiple statement)」と言います。私は、SQLインジェクション攻撃の文脈で複文が使える組み合わせを調べたことがあり、PHPMySQLという組み合わせでは、複文は使えないと思っていましたので、この攻撃は成立しないのではないかと思いました。 しかし、決めつけも良くないと思い手元の環境で動かしてみたところ、あっさり動くではありませんか。 PDOを用いてMySQLを呼び出す場合は複文が実行できると気づきましたが、なぜPDOの場合

  • パスワードが漏洩しないウェブアプリの作り方 〜 ソルトつきハッシュで満足する前に考えるべきこと

    ■■序論 徳丸さんのスライド「いまさら聞けないパスワードの取り扱い方」に見られるように、昨今、ウェブアプリケーションの設計要件として、サーバ内に侵入された場合でもユーザーのパスワードをできるだけ保護すべきという論調が見受けられるようになってきました。 上掲のスライドでは、その手法としてソルトつきハッシュ化を勧めています。しかしながらスライドに書かれているとおり、ソルトつきハッシュには、複雑なパスワードの解読は困難になるものの、単純なパスワードを設定してしまっているユーザーのパスワードについては十分な保護を提供できないという問題があります。そして、多くのユーザーは適切なパスワード運用ができない、というのが悲しい現実です。 ソルトつきハッシュを使った手法でこのような問題が残るのは、ウェブアプリケーションサーバに侵入した攻撃者がユーザーの認証情報をダウンロードして、認証情報をオフライン攻撃するこ

  • ChefでのMySQLパスワードの扱い - matetsuだもんで

    opscodeのリポジトリにあるMySQLのcookbookでは、rootユーザやレプリケーション用のユーザのパスワードをランダムに生成して設定している。 opscode の recipe の特徴 このランダムという点をカバーするべく、うまい仕組みが組み込まれている。 パスワードを設定するところは node.set_unless['mysql']['server_root_password'] = secure_password といった形で、attributeに設定されていない場合はランダムに生成するという事をして、2度目以降も同じパスワードとなるようになっている。 2回目以降も同じパスワードを保証するために、もうひとつの技が unless Chef::Config[:solo] ruby_block "save node data" do block do node.save end

    ChefでのMySQLパスワードの扱い - matetsuだもんで
  • MySQL/MariaDBにバグ、256分の1の確率で間違ったパスワードでも認証されてしまう | スラド セキュリティ

    特定のバージョンのMySQLおよびMariaDBにおいて、「256分の1の確率で、パスワードが間違っていたとしてもパスワード認証を突破できてしまうう」バグが発見された(SecLists.Org、SecManiac)。 このバグを使用すると、300回程度のアクセスを試みるだけでrootを含む任意のユーザーでのログインが可能であり、事実上パスワード認証が意味を成さなくなってしまうとのこと。 ただしこれらの影響を受けるビルドは少なく、多くの公式ベンダが提供するビルドでは問題はないそうだ。 対象となるMariaDBおよびMySQLのバージョンは5.1.61、5.2.11、5.3.5、5.5.2。こただしこの問題が発生するか否かはmemcmpの実装によって異なり、GCCビルトインのものやBSDのlibcのものについては安全だが、LinuxのSSE最適版glibcに含まれるmemcmpについては安全で

  • Mundane Life: MySQL の Prepared Statement

    Sunday, April 10, 2011 MySQL の Prepared Statement けさは、SQL インジェクションを少しだけ勉強したので、それに関して、ごく私的なメモを書き残しておこうと思う。情報処理推進機構 (IPA) の 「安全なウェブサイトの作り方」 では、SQL インジェクションの脆弱性を予防するための根的解決として、まず第一に 「SQL 文の組み立ては全てプレースホルダで実装する」(改訂第5版 p.9) と述べている。 プレースホルダーには、動的プレースホルダーと静的プレースホルダーがあって、これらについては IPA の 「安全な SQL の呼び出し方」 が詳しい。 また、最近刊行された 『体系的に学ぶ 安全な Web アプリケーションの作り方』(徳丸浩著 ソフトバンククリエイティブ ISBN978-4-7973-6119-3) にも詳しい解説が載っている。大

  • AndroidのNFC機能でFeliCaの読み書きをする | −ゆめログ− | ゆめみスタッフブログ

  • Connector/JのSQLインジェクション脆弱性 - SH2の日記

    PreparedStatement使ってるのにSQLインジェクションが起きるんですけど?という話題。徳丸浩の日記 - JavaMySQLの組み合わせでUnicodeのU+00A5を用いたSQLインジェクションの可能性より。 再現したのでバグレポート投げておきました。MySQL Bugs: #41730: SQL Injection when using U+00A5です。すてきなパッチで解決されることを期待したいと思います。 うちの社内でcharacterEncoding使ってるところはないから大丈夫なはず…。と思っていたのですが、ブクマコメントをいただいたとおり、character_set_server=cp932の設定がされたmysqldにcharacterEncodingなしでつないだ場合もインジェクションを起こせますね。sjisもujisもeucjpmsもダメです。というわけで、

    Connector/JのSQLインジェクション脆弱性 - SH2の日記
  • Connector/J 5.1とServer Side Prepared Statement - mir the developer

    ここ数日「MySQL + Connector/J(JDBCドライバ) + プリペアードステートメント」の話題がちらほら出ています。正確に把握はしていないですがSQLインジェクション対策→PreparedStatementという流れできた話のようです。 徳丸浩の日記 - JavaMySQLの組み合わせでUnicodeのU+00A5を用いたSQLインジェクションの可能性 へぼへぼCTO日記 - useServerPrepStmtsを使うのが根解決だとはおもう。けど…? id:kazuhookuのメモ置き場 - MySQL+Java でサーバサイドプリペアードステートメントを使うべきで「ない」理由 自分は元Connector/J開発メンバ(※インターン生として)でもありとても気になる話題なので、Connector/Jのソース解析も含めた説明をここで行いたいと思う。 プリペアードステートメント

    Connector/J 5.1とServer Side Prepared Statement - mir the developer
  • JavaとMySQLの組み合わせでUnicodeのU+00A5を用いたSQLインジェクションの可能性

    補足 この記事は旧徳丸浩の日記からの転載です(元URL、アーカイブはてなブックマーク1、はてなブックマーク2)。 備忘のため転載いたしますが、この記事は2008年12月22日に公開されたもので、当時の徳丸の考えを示すものを、基的に内容を変更せずにそのまま転載するものです。 補足終わり 今年のBlack Hat Japanには、はせがわようすけ氏が「趣味と実益の文字コード攻撃」と題して講演され話題となった。その講演資料が公開されているので、私は講演は聞き逃したが、資料は興味深く拝見した。その講演資料のP20以降には、「多対一の変換」と題して、UnicodeのU+00A5(通貨記号としての¥)が、他の文字コードに変換される際にバックスラッシュ「\」(日語環境では通貨記号)の0x5Cに変換されることから、パストラバーサルが発生する例が紹介されている。 しかし、バックスラッシュと言えばSQL

  • Live Nude Cams 😍 - Ooh Cams

    Live nude webcam chat IntroductionLive nude webcam chat has become increasingly popular as a form of online entertainment and communication. This unique platform allows individuals to connect with models in real-time, engaging in intimate experiences through video chat. With the advancements in technology and the widespread availability of high-speed internet connections, live nude webcam chat has

  • MySQLでカラムの暗号化/復元 (Nega Diary)

    DBを作る上で必ず悩んでしまう問題。 もし、もし、仮にDBからレコードのデータを全部ぶっこぬかれた場合、そこに個人情報が載っかってると非常にマズイ。 だから、もし、もし、仮にDBからレコードをぶっこぬかれても、データとして意味が内容に、暗号化しておけないか・・と。 DBに格納されている時は暗号化されておいて、スクリプトから取り出した時点で、復元されているという感じ。 MD5やCRYPTは、一方通行なため、暗号化する前のデータがわかってなければ使えない。 どうしたらいいものかと調べたので、結果をここにまとめる。 環境:MySQL 4.0.2以降 phoneというカラムがあり、これを暗号化する。 INSERT INTO test( phone ) VALUES ( AES_ENCRYPT( '0120-000-1234', 'secret_key' ) )

  • SET NAMESは禁止

    (Last Updated On: 2018年8月13日)MySQLには文字エンコーディングを変更する「SET NAMES」SQL文が用意されています。(PostgreSQLも同様のSQL文、SET CLIENT_ENCODINGがあります)この機能はSQLコンソールからは使ってよい機能ですが、アプリケーションからは使ってはならない機能です。SQLインジェクションに脆弱になる場合があります。 Ruby on Railsを読んでいて、ActiveRecordを説明している部分にMySQLの文字エンコーディングを変更する場合の例としてSET NAMESが利用されていました。アプリケーションからはSET NAMESは使ってはならない事を周知させるのは結構時間が必要かなと思いました。 PHPも5.2の途中からMySQLモジュールにlibmysqlの文字エンコーディング設定APIのラッパー関数が

    SET NAMESは禁止
  • 1