タグ

SQLに関するSeacolorのブックマーク (14)

  • そろそろSQLインジェクションについてひとこと言っておくか。 - だらだらやるよ。

    ちょっとSQL Injectionについて未だに情報が少ないのにいらついていたので。 というか対策ばっかりで何ができますよーってのはほとんどログインできますよーくらいじゃねえか。 具体的な攻撃方法もわからずにぼんやり対策してるだけの人多いような気がするのでちょっと攻撃方法書いとく。 SQLインジェクションってなに? アプリのユーザ入力領域からSQL文を注入されてしまうこと。 サーバでこういうコード書いてると、user_nameに「' or '1'='1';#」とか書かれて素敵なことになる。(mysqlの場合) String sql = "SELECT * FROM users WHERE = name = '"+user_name+"' AND password='"+user_password+"'"; 簡単に言うと、開発者の意図しないSQLをユーザの入力によって行う攻撃手法ですね。 S

    そろそろSQLインジェクションについてひとこと言っておくか。 - だらだらやるよ。
  • 続:SQLのバインド機構は「エスケープ処理された値」をはめ込むのか - ockeghem's blog

    前回のエントリSQLのバインド機構は「エスケープ処理された値」をはめ込むのか - ockeghem(徳丸浩)の日記に対応して、mi1kmanさんのブクマ経由で、訂正が出ていることを知った。 訂正内容 1ページ目を下記のように変更いたしました(2個所)。 バインド値はエスケープ処理した後にプレースホルダにはめ込むので、悪意あるSQL文が挿入されても、その実行を阻止することができる(図1-2)。 ↓ SQL文のひな型とバインド値は個別にデータベースに送られ、構文解析されるので、バインド値に悪意あるSQL文が挿入されても、その実行を阻止することができる(図1-2)。 http://www.impressit.co.jp/inside/?p=791 なんとなく私のエントリの断片が散りばめられているのを別にしても、『悪意あるSQL文…の実行を阻止することができる』というあたりに、サニタイズ的発想が依

    続:SQLのバインド機構は「エスケープ処理された値」をはめ込むのか - ockeghem's blog
  • IDEA * IDEA

    ドットインストール代表のライフハックブログ

    IDEA * IDEA
  • SQLite ドキュメント - Third impact (翻訳文書)

    SQLite の使いどころ SQLite を使うのが最適な場合と、一般的なクライアント・サーバー型データベースエンジンを 使ったほうが良い場合について記述した文書です。

  • インデックスの基礎知識

    ■ インデックスとは データベースの世界で、インデックス(索引)とはテーブルに格納されているデータを 高速に取り出す為の仕組みを意味します。 インデックスを適切に使用することによってSQL文の応答時間が劇的に改善 される可能性があります。 インデックスにはB-Treeインデックスをはじめ、ビットマップインデックス、 関数インデックスなどの種類がありますが、ここでは最も一般的に使われ、かつ ほとんどのDBMSでサポートされているB-Treeインデックスについて解説します。 ※ CREATE INDEX文でオプションを指定しない場合は通常B-Treeインデックスが 作成されます。 ■ B-Treeインデックスのしくみ B-Tree(Balanced Tree)インデックスは次のようなツリー状の構造になっています。 ツリーの先頭はヘッダブロックと呼ばれています。ヘッダブロックでは、キー値の 範囲

  • リレーショナル・データベースの世界

    サービス終了のお知らせ いつもYahoo! JAPANのサービスをご利用いただき誠にありがとうございます。 お客様がアクセスされたサービスは日までにサービスを終了いたしました。 今後ともYahoo! JAPANのサービスをご愛顧くださいますよう、よろしくお願いいたします。

  • IDEA * IDEA

    ドットインストール代表のライフハックブログ

    IDEA * IDEA
  • XPもいいけれど、先ずはSQLが出来るようになるべき。:なにわのITベンチャー社長Blog - CNET Japan

    hisyamadaより: XPの導入をしようとした私はすぐに大きな壁に突き当たりました。それは「全員同席」と「ペアプログラミング」でした。全員同席とはユーザ、マネージャ、開発者が一箇所で開発を行うという考え方で、システム開発のスピードを加速させ、利害関係の不和を解消するために考え出された手法です。特筆すべきは顧客と開発者を同席させると言うもので、開発過程で明らかになる不明瞭な要求や仕様を、同席している顧客に即決させる[続きを読む] XPもよいと思うのですけれど、弊社はSQLにこだわっています。 一般的にDB(SQL)のスキルがなさすぎなんですね。 弊社の入社試験の変形型で説明します。 使われるテーブルは 得意先マスタ     得意先コード     得意先名     住所     ・・・ 受注テーブル     受注ID     受注日     得意先コード     ・・・ 受注明細テーブル

  • 徳丸浩の日記 - そろそろSQLエスケープに関して一言いっとくか - SQLのエスケープ再考

    補足 この記事は旧徳丸浩の日記からの転載です。元URL、アーカイブはてなブックマーク1、はてなブックマーク2。 備忘のため転載いたしますが、この記事は2007年11月26日に公開されたもので、当時の徳丸の考えを示すものを、基的に内容を変更せずにそのまま転載するものです。 補足終わり 稿ではSQLインジェクション対策として、SQLのエスケープ処理の方法について検討する。 最近SQLインジェクション攻撃が猛威を振るっていることもあり、SQLインジェクションに対する解説記事が増えてきたようだが、対策方法については十分に書かれていないように感じる。非常に稀なケースの対応が不十分だと言っているのではない。ごく基的なことが十分書かれていないと思うのだ。 SQLインジェクション対策には二通りある。バインド機構を使うものと、SQLのエスケープによるものだ。このうち、SQLのエスケープについて、十分

  • Tag2Find MOONGIFT

    ファイルもタグ管理 すっかり定着したタグ管理。ファイルの管理にも導入しよう。 ファイルもタグ管理 情報をタグで管理すると言うのは、Web2.0系(と言うのも曖昧だが)アプリケーションで数多く取り入れられるようになってきた。既に違和感なく扱っている人も多いのではないだろうか。 それすら通り越し、何でもタグがなければと思っている方はこれを使ってみるといい。 今回紹介するフリーウェアはTag2Find、Windowsにタグ機能をつけるソフトウェアだ。 Tag2Findを使えば、Windows上のファイルについてタグ管理できるようになる。勿論、全てのファイルに行う必要はない。必要だと思ったファイルにだけタグをつけよう。 後はタスクバーになる検索ウィンドウで、タグ文字列を入力すれば即座に結果が得られる。また、プレビューやファイル情報を見られる専用のファイル管理インタフェースもある。 Tag2Find

    Tag2Find MOONGIFT
  • エスケープだけしてれば、セキュリティ対策が万全になる訳ではないですよ - masaのメモ置き場

    題 「サニタイズ言うなキャンペーン」私の解釈 読みました。分かりやすくとてもよい記事だと思いますが、ホワイトリスト型のアプローチが補助的な対策であるとも読み取れてしまうこともありそうなため、エスケープだけしておけば大丈夫という誤った認識を持ってしまう開発者さんが増えてしまいそうなのが心配です。ということで、いちお書いておきます。 SQLの特殊文字をエスケープすることで対策可能なセキュリティの問題は、特殊文字が混在することにより構文が破壊されるといった限定された状況だけです。 例としては、SQLインジェクションの解説でよく取り上げられる select password from usertable where id = '入力値' 入力値に ' or '1' = '1 が与えられると・・・といった攻撃は防ぐことは出来ますが、 select password from usertable w

    エスケープだけしてれば、セキュリティ対策が万全になる訳ではないですよ - masaのメモ置き場
  • SQLインジェクション【SQL Injection】

    SQLインジェクション(SQLの挿入)は,Webアプリケーションへの攻撃手法の一つです。Webサーバーに対して特殊なデータを送ることで,アプリケーション開発者が想定していないSQL文を実行させます。この攻撃に対する対策を怠ると,データベース内の情報を不正に取得されたり,削除されたりする危険性があります。 SQLインジェクションに対するぜい弱性は,クライアントから受け取ったデータをもとにしてデータベースへのアクセスを実行するSQL文を組み立てる個所で発生します。例えばアプリケーションのプログラム中に,SQL文で操作対象のレコードを絞り込むWHERE句を組み立てる“WHERE userid='$uid'”のようなコードが書かれているとします。プログラマは,変数$uidにはクライアントから受け取ったユーザーIDを格納することを想定しています。 ところが,悪意のあるユーザーが“' OR 1=1--

    SQLインジェクション【SQL Injection】
  • Web2.0ナビ: SQL-DESIGNERがスゴイ

    いいね! 0 ツイート B! はてブ 447 Pocket 2 データベースの設計時にER図をかくことが多いと思いますが、SQL-designerというウェブベースのツールが非常に使いやすいく、デザイン的にも綺麗で便利。 MSproject等のデータベース設計を行う専用ソフトは非常に多くあるが、どれもインストールが必要だったり、設定ファイルが必要だったり、ソフトが重かったり、環境依存が激しかったりして、使いにくい。 使いかたは簡単で、 1.ウェブページにいって 2.テーブルやフィールドを追加する 3.プリントアウトorXMLエクスポート だけ。 データの型なども選択できて、設計が終わったら、SQL文をそのまま発行したり、作ったEQ図をXMLでエクスポートやインポートすることも可能。Javascriptベースなので、めんどくさいインストールや環境依存もなし。 ウェブ上でやるのは、セキュリティ

  • firstworks: sql relay - sqlrelay persistent database connection pool pooling proxy load balance balancing odbc oracle mysql msql postgresql sybase db2 interbase sqlite access c perl DBD DBI python php zope ruby tcl java jni unix linux persistant

    Featuring... Support for PHP 8.1 Support for Oracle 18 and 19 Improvements for ODBC and PostgreSQL The MySQL and PostgreSQL protocol modules enable SQL Relay to speak the MySQL and PostgreSQL client-server protocols, making it a transparent, server-only proxy for MySQL and PostgreSQL databases. How does SQL Relay compare to direct connections? SQL Relay maximizes throughput by eliminating the conn

  • 1