私的良スレ書庫
不明な単語は2ch用語を / 要望・削除依頼は掲示板へ。不適切な画像報告もこちらへどうぞ。 / 管理情報はtwitterでログインするとレス評価できます。 登録ユーザには一部の画像が表示されますので、問題のある画像や記述を含むレスに「禁」ボタンを押してください。
元スレ【PHP】下らねぇ質問はID出して書き込みやがれ 86
php スレッド一覧へ / php とは? / 携帯版 / dat(gz)で取得 / トップメニューみんなの評価 :
レスフィルター : (試験中)
「違和感」を感じるかは、
セキュリティを重視するか、
セキュリティを軽視したコードを書くかの主観の問題。
セキュリティを重視すれば違和感を感じない。
毎月のようにある Web アプリの XSS 脆弱性は、
まったくエスケープしていないのではなく、
出力時にエスケープしているため。
セキュリティを重視するか、
セキュリティを軽視したコードを書くかの主観の問題。
セキュリティを重視すれば違和感を感じない。
毎月のようにある Web アプリの XSS 脆弱性は、
まったくエスケープしていないのではなく、
出力時にエスケープしているため。
自分はフレームワークでも >>142 みたいのを入れてるよ
echo何度も実行するより$echo .= ~みたいにつなげていって最後に出すのが速度的にもいいね。
$_GET全てに無条件でエスケープは無いな
受け取ったデータ全てが画面表示されるわけでもないし
受け取ったデータ全てが画面表示されるわけでもないし
URLの長さの上限はIEで2100バイト、Apacheで8190バイトだし変換コストでの問題は無いと思う
セキュリティ云々じゃなくて単純に変なだけでしょ
とにかく$_GET $_POSTは有無をいわさずエスケープっておかしいよ
入力値はまずチェック(バリデーション)からはいるでしょ?
わざわざエスケープ済みのデータを基準にしてチェックするわけ?
入力時エスケープにするとしてもタイミングが悪いよね?
やるとしてもデータ格納直前にやるべきでない?
とにかく$_GET $_POSTは有無をいわさずエスケープっておかしいよ
入力値はまずチェック(バリデーション)からはいるでしょ?
わざわざエスケープ済みのデータを基準にしてチェックするわけ?
入力時エスケープにするとしてもタイミングが悪いよね?
やるとしてもデータ格納直前にやるべきでない?
htmlspecialcharsは表示直前
エスケープはDBに入れる直前が基本だろ
エスケープはDBに入れる直前が基本だろ
ううむ・・・
色々調べてみたけど
入力時エスケープによって脆弱性が生まれると主張する人も結構いるね
色々調べてみたけど
入力時エスケープによって脆弱性が生まれると主張する人も結構いるね
htmlspecialcharsは表示直前
DBに入れるのは受け取った生のデータが基本だろ
DBに入れるのは受け取った生のデータが基本だろ
もちろんSQLインジェクション用のエスケープはするよ
「htmlspecialcharsは表示直前」だと「うっかり」忘れる。
世の Web アプリの XSS 脆弱性のほとんどはこの「うっかり」。
だから、最初の段階でエスケープ。
従来のソフトウェア工学的には変かもしれないけれど、
人間工学的には必要。
世の Web アプリの XSS 脆弱性のほとんどはこの「うっかり」。
だから、最初の段階でエスケープ。
従来のソフトウェア工学的には変かもしれないけれど、
人間工学的には必要。
議論がループしている。
>>142- から再読を。
>>142- から再読を。
うっかりミスというかルール作りすればそんなのおきないでしょ
たとえば文字列出力時は
function es($str) {
echo htmlspecialchars($str, ENT_QUOTES);
}
es("<strong>ほげー</strong>");
っていう風にやるとか
voidにしたけどStringにして
echo es("<strong>ほげー</strong>");
にするとか
必ず何かを通すようにルール作りしとけばよい
たとえば文字列出力時は
function es($str) {
echo htmlspecialchars($str, ENT_QUOTES);
}
es("<strong>ほげー</strong>");
っていう風にやるとか
voidにしたけどStringにして
echo es("<strong>ほげー</strong>");
にするとか
必ず何かを通すようにルール作りしとけばよい
うっかりDBパスワードをechoしてしまうかもしれないからDBは使用厳禁ってか?
>>167
たぶんそのルールを忘れるって事だと思うぞ。
議論は平行線のままだろうな。
厳密なコーディング規約を作れば良い
→ルールを守らない奴がでてくる
しっかりテストすれば良い
→テストに抜けがあるかもしれない
こういう事だろ?
たぶんそのルールを忘れるって事だと思うぞ。
議論は平行線のままだろうな。
厳密なコーディング規約を作れば良い
→ルールを守らない奴がでてくる
しっかりテストすれば良い
→テストに抜けがあるかもしれない
こういう事だろ?
>>169
コードレビューとかしないの?
コードレビューとかしないの?
「必ず何かを通すようにルール」や
「コードレビュー」によって 100% 見落としがなくなりますか?
「コードレビュー」によって 100% 見落としがなくなりますか?
>>172
子供じゃないんだから…。
「一か所に入れるだけ」というルールは守られやすいし、
コードレビューでも一か所を見るだけだから
見落としの可能性は極めて低いでしょう?
その逆に、表示直前だと、ページ数が数百、
出力箇所が数千ある場合、
見落とす確率が非常に高くなるよね。
そして、それこそが Web アプリの脆弱性なんですよ。
子供じゃないんだから…。
「一か所に入れるだけ」というルールは守られやすいし、
コードレビューでも一か所を見るだけだから
見落としの可能性は極めて低いでしょう?
その逆に、表示直前だと、ページ数が数百、
出力箇所が数千ある場合、
見落とす確率が非常に高くなるよね。
そして、それこそが Web アプリの脆弱性なんですよ。
>>176
ヘボくない設計って?
ヘボくない設計って?
ウェブアプリの脆弱性君
お前のアプリケーションは入力データをそのまま出力するだけなのか
信頼しないデータは入力されたものだけなのか
次のスクリプトを読んで>>142が無価値なものだと気付こうぜ
<?php $uri = $_GET['uri']; $filename = apache_lookup_uri($uri)->filename; ?>
URI <?php echo $uri; ?> に対するファイル名は <?php echo $filename; ?> です。
例外処理は本質じゃないので省いてあります
お前のアプリケーションは入力データをそのまま出力するだけなのか
信頼しないデータは入力されたものだけなのか
次のスクリプトを読んで>>142が無価値なものだと気付こうぜ
<?php $uri = $_GET['uri']; $filename = apache_lookup_uri($uri)->filename; ?>
URI <?php echo $uri; ?> に対するファイル名は <?php echo $filename; ?> です。
例外処理は本質じゃないので省いてあります
>>173
>その逆に、表示直前だと、ページ数が数百、
>出力箇所が数千ある場合、
>見落とす確率が非常に高くなるよね。
普通はMVCのビューに変数を渡す時、またはビューが変数を出力
する時に一括してエンティティ化や文字コード変換などの出力処理
をかけるんだよ。
カプセル化して出力には必ずビュークラスを通すようにしておけば
目視で全部確認するなんて前時代の方法はいらない。
>子供じゃないんだから…。
100%とか言い出したのはそっちだろ?
本題に自信がないのか知らんけど煽りで煙に巻くのはやめてほしいね。
>その逆に、表示直前だと、ページ数が数百、
>出力箇所が数千ある場合、
>見落とす確率が非常に高くなるよね。
普通はMVCのビューに変数を渡す時、またはビューが変数を出力
する時に一括してエンティティ化や文字コード変換などの出力処理
をかけるんだよ。
カプセル化して出力には必ずビュークラスを通すようにしておけば
目視で全部確認するなんて前時代の方法はいらない。
>子供じゃないんだから…。
100%とか言い出したのはそっちだろ?
本題に自信がないのか知らんけど煽りで煙に巻くのはやめてほしいね。
>>178
これの実行結果はどうなるの
これの実行結果はどうなるの
俺はその手のはテーブル構造を書いたArrayをまわすようにしてる。
でも、値によって保存方法のルールが複雑なら、別に愚直に長く
書いてもいいと思うぜ。
でも、値によって保存方法のルールが複雑なら、別に愚直に長く
書いてもいいと思うぜ。
>>189
select * from 物件表 where 市町村id=1 or 市町村id=2 or 市町村id=3
なんてのを想定してるんだろ?
そのままの意味じゃねえか
この意味がわからないならSQLの勉強しろとしかいいようがない
select * from 物件表 where 市町村id=1 or 市町村id=2 or 市町村id=3
なんてのを想定してるんだろ?
そのままの意味じゃねえか
この意味がわからないならSQLの勉強しろとしかいいようがない
>>190
jpgraphでグラフを描けるのであれば、後はページの一部をjavascriptで定期更新するだけ。
ajax timerで検索してみると良いかも。
後はjavascriptのスレで質問してくれ。
jpgraphでグラフを描けるのであれば、後はページの一部をjavascriptで定期更新するだけ。
ajax timerで検索してみると良いかも。
後はjavascriptのスレで質問してくれ。
>>180
そう。戻す。
HTML 出力時に「わざわざ」直前にエスケープして
それを忘れて XSS 脆弱性を出すように、
メールや PDF の「わざわざ」直前にデエスケープして
それを忘れて脆弱性じゃないバグの方を選択する。
それに、HTML より、メール、PDF の方が出力箇所が圧倒的に少ないから。
だから脆弱性を重視するかどうかなんだって。
そう。戻す。
HTML 出力時に「わざわざ」直前にエスケープして
それを忘れて XSS 脆弱性を出すように、
メールや PDF の「わざわざ」直前にデエスケープして
それを忘れて脆弱性じゃないバグの方を選択する。
それに、HTML より、メール、PDF の方が出力箇所が圧倒的に少ないから。
だから脆弱性を重視するかどうかなんだって。
PHP4年使ってきたけど、未だにPECLがわかりません。
なので今日しっかり理解しようと思います。
PECLはどういった位置づけなのでしょうか。
以前まで、PEARのようなライブラリと思っていたのですが、
最近はdllのようなモジュールとしての扱いかなと思ってきました。
それで正しいのでしょうか。
なので今日しっかり理解しようと思います。
PECLはどういった位置づけなのでしょうか。
以前まで、PEARのようなライブラリと思っていたのですが、
最近はdllのようなモジュールとしての扱いかなと思ってきました。
それで正しいのでしょうか。
標準機能じゃ満足にできないことをやるためのもの
ペイントじゃうまくできないからPhotoshopいれたり
CADやりたいけど標準じゃないから新しく入れたりみたい
ペイントじゃうまくできないからPhotoshopいれたり
CADやりたいけど標準じゃないから新しく入れたりみたい
$query = "select * from 物件表 where";
foreach ($_POST['town_cd'] as $key => $val) {
if ($key == 0) {
$query .= " 市町村id={$val}";
continue;
}
$query .= " or 市町村id={$val}";
}
では市町村idが多い場合、orも増えるということ?
foreach ($_POST['town_cd'] as $key => $val) {
if ($key == 0) {
$query .= " 市町村id={$val}";
continue;
}
$query .= " or 市町村id={$val}";
}
では市町村idが多い場合、orも増えるということ?
みんなの評価 :
類似してるかもしれないスレッド
- 【PHP】下らねぇ質問はID出して書き込みやがれ 80 (1001) - [98%] - 2009/2/18 6:30 ○
- 【PHP】下らねぇ質問はID出して書き込みやがれ 85 (1001) - [98%] - 2009/7/31 4:07 ○
- 【PHP】下らねぇ質問はID出して書き込みやがれ 96 (1001) - [98%] - 2010/7/22 7:47
- 【PHP】下らねぇ質問はID出して書き込みやがれ 76 (1001) - [98%] - 2008/12/6 22:36 ○
- 【PHP】下らねぇ質問はID出して書き込みやがれ 82 (1001) - [98%] - 2009/4/6 19:33
- 【PHP】下らねぇ質問はID出して書き込みやがれ 83 (1001) - [98%] - 2009/4/27 3:17 ○
- 【PHP】下らねぇ質問はID出して書き込みやがれ 84 (1001) - [98%] - 2009/6/15 21:04 ○
- 【PHP】下らねぇ質問はID出して書き込みやがれ 81 (1001) - [98%] - 2009/3/7 14:17 ○
- 【PHP】下らねぇ質問はID出して書き込みやがれ 89 (1001) - [98%] - 2009/11/13 23:03
- 【PHP】下らねぇ質問はID出して書き込みやがれ 88 (1001) - [98%] - 2009/10/12 1:52
- 【PHP】下らねぇ質問はID出して書き込みやがれ 87 (1001) - [98%] - 2009/9/15 18:32
- 【PHP】下らねぇ質問はID出して書き込みやがれ 126 (1001) - [96%] - 2013/3/19 13:15
- 【PHP】下らねぇ質問はID出して書き込みやがれ 116 (1001) - [96%] - 2012/3/21 18:01
- 【PHP】下らねぇ質問はID出して書き込みやがれ 106 (1001) - [96%] - 2011/6/3 5:17
- 【PHP】下らねぇ質問はID出して書き込みやがれ 136 (936) - [96%] - 2014/9/18 12:45
- 【PHP】下らねぇ質問はID出して書き込みやがれ 97 (1001) - [96%] - 2010/9/18 2:01
- 【PHP】下らねぇ質問はID出して書き込みやがれ 94 (1001) - [96%] - 2010/4/20 19:31
トップメニューへ / →のくす牧場書庫について