のくす牧場
コンテンツ
牧場内検索
カウンタ
総計:126,364,104人
昨日:no data人
今日:
最近の注目
人気の最安値情報

    私的良スレ書庫

    不明な単語は2ch用語を / 要望・削除依頼は掲示板へ。不適切な画像報告もこちらへどうぞ。 / 管理情報はtwitter
    ログインするとレス評価できます。 登録ユーザには一部の画像が表示されますので、問題のある画像や記述を含むレスに「禁」ボタンを押してください。

    元スレ【PHP】下らねぇ質問はID出して書き込みやがれ 77

    php スレッド一覧へ / php とは? / 携帯版 / dat(gz)で取得 / トップメニュー
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
    レスフィルター : (試験中)
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter
    751 : nobodyさん - 2008/12/22(月) 05:37:08 ID:??? (+66,+29,-66)
    お前らって、グーグルの面接で
    「ニューヨークにはピアノの調律師は何人いるか?」
    って質問されたら、答えられなくて発狂するの?
    752 : nobodyさん - 2008/12/22(月) 06:04:46 ID:??? (+61,+29,-1)
    >>751
    それがどうかしたの?
    753 : nobodyさん - 2008/12/22(月) 06:07:29 ID:??? (+57,+29,-23)
    なんで唐突にGoogleの話が出てくるんだか
    スレ違いな上に頭悪いな
    754 : nobodyさん - 2008/12/22(月) 06:13:45 ID:??? (+48,+20,-9)
    お前らってグーグルで検索できない
    質問されると発狂するじゃん
    755 : nobodyさん - 2008/12/22(月) 06:24:37 ID:??? (+37,+19,-2)
    例えばどれ?
    756 : nobodyさん - 2008/12/22(月) 06:31:15 ID:??? (+57,+29,-16)
    いつから人力検索スレになったんだよ
    はてなにでも池
    760 : nobodyさん - 2008/12/22(月) 09:15:50 ID:??? (+51,+23,-37)
    動作効率を求めるならネイティブ関数
    使いやすさや開発の効率など機能の利便さを求めるならライブラリ
    762 : nobodyさん - 2008/12/22(月) 09:25:01 ID:??? (-4,-27,-1)
    PDOだけでおk
    764 : nobodyさん - 2008/12/22(月) 09:57:12 ID:??? (+43,+25,+0)
    あってるよ
    766 : nobodyさん - 2008/12/22(月) 10:00:35 ID:??? (-6,-29,-91)
    >763
    あってる。というか、可能な時はいつでもprepareを使え。

    DB接続のパフォーマンスがどうしても問題になる場合のみ、しぶしぶmysql関数。
    それ以外の場合はPECL::PDO(現在はPECLではなく標準ライブラリ)。
    きちんとクラス構成ができていれば、書き換えはそれほど手間ではないので、迷ったらとりあえずPDOで書く。
    767 : nobodyさん - 2008/12/22(月) 10:14:36 ID:??? (-4,-30,-271)
    >765
    その本を燃やせ。というか、出版社を燃やせ。あり得ない。
    「エスケープは、出力先に応じて適切なものを選ぶ」のが基本。
    出力先はSQLなのだから、SQLとして安全になるようなエスケープを選ぶ必要がある。
    DBに応じたエスケープ関数があるはずだからそれを使え。
    たとえばMySQLならmysql_real_escape_string。SQLiteならsqlite_escape_string。
    http://jp2.php.net/manual/ja/refs.database.php

    とりあえずそれだと、'NULL OR TRUE'という入力には確実に無防備になる。
    WHERE ID = $id
    というプログラムに上記文字列がぶち込まれた時にどう動作するか考えてみるといい。
    DROPやDELETE、UPDATEと組み合わせた文も上手くやれば発行可能かもしれん。
    HTMLの実体参照はよりによってセミコロンを多用するしな。
    ユーザー管理テーブルが書き換えられ、RDBMSのroot権限を奪取される事もじゅうぶんあり得る。
    768 : nobodyさん - 2008/12/22(月) 10:15:12 ID:??? (+57,+30,-75)
    >>765
    目的がSQLインジェクション対策でないからしなくていい
    DBには生のデータを入れるのが基本
    XSS等を意識するのは取り出す時
    取り出す時に忘れるかもしれないから入れる時にエスケープする人もいるが
    取り出す時にエスケープするのは当たり前なので
    穴を防ぐ目的としてはいいかもしれないが根本的な解決にはなってない
    769 : nobodyさん - 2008/12/22(月) 10:17:41 ID:??? (+52,+29,-2)
    >>765
    それはPHPが進化する過程の中での話し
    770 : nobodyさん - 2008/12/22(月) 10:20:58 ID:??? (+52,+29,-14)
    マユツバってなに?
    773 : nobodyさん - 2008/12/22(月) 11:31:17 ID:??? (+0,-30,-51)
    >>771
    hiddenの値はHTMLのソース見れば
    誰でも見れるよね。

    つまり、スクリプト等でhiddenの値を
    自動的に読み取るようにして、その値を
    連続でぶちこまれたら、アカウント10万個とか
    取られてしまうのではないかな?
    774 : nobodyさん - 2008/12/22(月) 11:33:23 ID:??? (-1,-25,-64)
    >>771
    金庫に鍵をさしっぱなしで一緒に置いておいても
    問題がないならいいんじゃないの?
    俺ならhiddenにいれずに簡易に済ませるならセッションに入れる
    775 : nobodyさん - 2008/12/22(月) 11:37:46 ID:??? (+90,+29,-70)
    でもセッションの値ってたいてい
    クッキーにも書き込んでるよね。

    クッキーの値はクライアント側から読めるわけで、
    もしアタッカーが、クッキーの値を読み取って、
    自動的に連続入力するスクリプトをrubyで書いたら
    やっぱりアカウント10万個とか取られてしまう。のでは?
    776 : nobodyさん - 2008/12/22(月) 11:44:22 ID:??? (+67,+29,-3)
    >>775
    クッキーに記録しなければいいだけじゃん
    777 : nobodyさん - 2008/12/22(月) 11:46:49 ID:??? (+73,+29,-97)
    >>775
    すまん、高度すぎて言ってる意味が分らん
    クッキーに入ってるのはセッションIDだろ?
    画像チャプタってたいがい都度生成だろうからその都度ID変わるし
    都度セッションに値セットするなら仮に違うセッションID使われたとしても
    セッションの参照先に値が無いからとおらないだろ
    778 : nobodyさん - 2008/12/22(月) 11:52:47 ID:??? (-1,-29,-18)
    SIDやhiddenによるIDがそのまま認証鍵だと思い込んでいるのでしょうね
    だから安全性に問題があるとは書いている
    779 : nobodyさん - 2008/12/22(月) 11:57:34 ID:??? (+52,+29,-1)
    つかなんでルビー?
    780 : 771 - 2008/12/22(月) 12:01:59 ID:??? (+62,+29,-99)
    >>773
    >>774
    たくさんのアドバイスありがとうございます!
    今独学でPHPを勉強してるんですが
    アプリケーション作成時にXXSやSQLインジェクション、XSRFなど
    どんな時にセキュリティを施せばいいかがすごい難しかったりします。
    もう少し頑張って勉強してみます。
    本当にありがとうございました!
    781 : nobodyさん - 2008/12/22(月) 12:04:39 ID:??? (+3,-29,-22)
    いや、そのhiddenの値は、
    ユーザーが手で入力すべき値と
    同一なの?
    783 : nobodyさん - 2008/12/22(月) 12:15:33 ID:??? (+41,+13,-23)
    わからんから、とりあえず
    配列の要素を1万個に増やして
    F5しまくって実験
    784 : nobodyさん - 2008/12/22(月) 12:17:34 ID:??? (+8,-29,-235)
    CAPTCHAで「12345」と出るとしよう。
    hiddenに入れる値(以下、キー)に「12345」としたら何の意味もない。これは論外。

    じゃあ、推測困難な計算方法で「12345」が導けるようなキーはどうだろう。
    たとえば「23456」とか(これだと推測容易なんで、実際はもっと難しい計算を使うべき)。これは悪くない。

    これを発展させて、crypt($salt . '12345')とかをキーにする。これも悪くない。まず破られないだろう。

    ベストは、キーには「12345」とはまったく無関係の値を入れておき、キーと「12345」の関連付けはDBなどで行なう方法。
    これだとDBのデータを知らないと絶対に両者を関連付けられない。

    セッション・キーを発行しているなら、もうキーにできる値はあるので、新規に発行する意味もない。
    キーとしてセッション・キーを使い、CAPTCHA生成時に「12345」をセッション変数としてサーバーに保存しておけばいいわけだ。
    785 : nobodyさん - 2008/12/22(月) 12:21:03 ID:??? (+3,-30,-72)
    ちょい説明が足りなかったかな。
    > これを発展させて、crypt($salt . '12345')とかをキーにする
    この場合、キーから'12345'は算出不能になる。
    答え合わせは、ユーザーの入力した「12345」を同じ方法でcryptして、両者が一致するかで行なう。
    786 : nobodyさん - 2008/12/22(月) 12:26:46 ID:??? (-13,-29,-4)
    >782
    Shift_JISでプログラムを書くな。
    787 : nobodyさん - 2008/12/22(月) 12:33:08 ID:??? (+54,+26,-12)
    >>786
    でも文字コードが原因だったら
    「毎回」エラーが出るのでは?
    790 : nobodyさん - 2008/12/22(月) 12:53:25 ID:??? (-16,-29,-3)
    var_dump($dbh);
    792 : nobodyさん - 2008/12/22(月) 12:57:56 ID:??? (+48,+29,-2)
    >>791
    つど偉そうに聞いていいスレ
    793 : nobodyさん - 2008/12/22(月) 13:07:26 ID:??? (+3,-30,-73)
    http://jp2.php.net/manual/ja/pdo.connections.php
    データベースへの接続に成功すると、PDO クラスのインスタンスが スクリプトに返されます。
    この PDO オブジェクトが存在する間、 接続がアクティブであり続けます。

    パスワードわざと間違えたのを入れて、もいちど var_dump($dbh);
    794 : 771 - 2008/12/22(月) 13:29:14 ID:??? (+64,+30,-154)
    >>781
    そう考えてました。
    掲示板の新規登録のところを作ってたんですが
    個人情報を扱う場所じゃないから
    そこまで厳しくしないでいいかなと思ってました・・
    明らかに無知ですよね・・
    もう少ししっかり勉強します。
    >>784
    丁寧な説明本当にありがとうございます!
    色んな方法があるんですね。

    アプリケーションでも様々な物があり
    個人情報を登録してもらうフォームや掲示板の新規登録のフォームなど
    各々でどこまでのセキュリティを施すべきかの判断が
    本当に難しく感じます。
    しっかり勉強しようと思います。
    795 : nobodyさん - 2008/12/22(月) 13:30:26 ID:??? (+53,+20,-2)
    ちなみにどうやって?
    796 : 771 - 2008/12/22(月) 13:48:07 ID:??? (+74,+30,-99)
    >>795
    先日PHPサイバーテロの技法という本を買って
    今それを読みながらwebで一つ一つを調べています。

    XSSにしてもXSRFにしても言葉と意味はなんとなく理解できたんですが
    ただどんな状況下でそういった事が起こりえるのかが
    理解できにくく苦労しています。
    私自身以前はwebデザイン関係で働いてましたので
    情報漏えいに対する危機感は理解しているつもりです。
    それで今いい勉強の仕方を考えているんですがなかなか難しいですね。

    私事ですいません。
    797 : nobodyさん - 2008/12/22(月) 14:10:18 ID:??? (+90,+29,-22)
    http://raven-seo-tools.com/
    ここのサイトなのですが壁紙は全て同じ色なのに
    一部分だけ明るくなってます。
    どうやってそれをやっているのでしょうか?
    自分も真似をしたくて質問させてもらいました。
    798 : nobodyさん - 2008/12/22(月) 14:12:48 ID:??? (+55,+16,-4)
    >>796
    良い方法です。頑張って。
    >>797
    PHPと関係無し
    799 : nobodyさん - 2008/12/22(月) 14:21:03 ID:??? (+58,+30,+0)
    800 : nobodyさん - 2008/12/22(月) 14:21:35 ID:??? (+63,+25,-1)
    >>797
    seoのために2ちゃんで宣伝ごくろうさまです作者様
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / php スレッド一覧へ
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

    類似してるかもしれないスレッド


    トップメニューへ / →のくす牧場書庫について