アカウント名:
パスワード:
null で空文字列を意味するというのは、そのまんま加工せずにパラメータとして入れ込んでしまっているのではないか? こっちはインジェクション・アタックとか大丈夫なんかいな?
長すぎる方をよく見てみると、名前の途中にアポストロフィが入ってるし。ど初級のSQLインジェクションアタックで最初に試みるのがアポストロフィとか \ エスケープとかだから、たぶん対処はされているんだと信じるが…
物理学の'tHooft先生も、ご自身の名を冠された小惑星について、アポストロフィを削られているから、この小惑星上ではアポストロフィを禁止する、と怒っておられたなあ。
#ハイフン記号とかも名前として入力できないシステムもある。
インジェクションアタック自体は、入力文字をそのままSQLにぶっこむことが問題なので、SQLパラメータにすればシングルクオート付きの名前でも問題ない。Nullって名前でも。
で、入力がNullの時、文字列のNullを返すというインターフェイスで、「Null」ならデータ未入力だという判定ロジックの問題と思われるが、Nullって名前の人がいるというテストはしなかったと言われると、否定出来ない。マジで居るんだなあ。
他にどういう名前がまずいの?未定義さんとかいたら問題起こる?
とある会社のWebサイトで、外部と連携してる(顧客から申し込みがあると外部サイトにも情報を送信する)システムを作ってた頃。自システムの文字コードがUTF-8、連携先のシステムがEUC-jpで動いてたんだ。
で、名字がJISの第3水準だか第4水準だかの文字(1文字)の人が申し込みしたとき、変換インターフェースが空文字に置き換えた挙げ句、連携先のサーバーアプリが所謂「ぬるぽ」で落ちて騒ぎになったことはある。
そういや Mailman-jp は UTF-8 に公式対応したのかな。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
Stableって古いって意味だっけ? -- Debian初級
SQLインジェクションアタックの対象になりかねない (スコア:5, 参考になる)
null で空文字列を意味するというのは、そのまんま加工せずにパラメータとして入れ込んでしまっているのではないか? こっちはインジェクション・アタックとか大丈夫なんかいな?
長すぎる方をよく見てみると、名前の途中にアポストロフィが入ってるし。ど初級のSQLインジェクションアタックで最初に試みるのがアポストロフィとか \ エスケープとかだから、たぶん対処はされているんだと信じるが…
物理学の'tHooft先生も、ご自身の名を冠された小惑星について、アポストロフィを削られているから、この小惑星上ではアポストロフィを禁止する、と怒っておられたなあ。
#ハイフン記号とかも名前として入力できないシステムもある。
Re: (スコア:1)
インジェクションアタック自体は、入力文字をそのままSQLにぶっこむことが問題なので、
SQLパラメータにすればシングルクオート付きの名前でも問題ない。Nullって名前でも。
で、入力がNullの時、文字列のNullを返すというインターフェイスで、「Null」ならデータ未入力だという判定ロジックの問題と思われるが、
Nullって名前の人がいるというテストはしなかったと言われると、否定出来ない。
マジで居るんだなあ。
Re: (スコア:0)
他にどういう名前がまずいの?
未定義さんとかいたら問題起こる?
Re:SQLインジェクションアタックの対象になりかねない (スコア:2, 興味深い)
とある会社のWebサイトで、外部と連携してる(顧客から申し込みがあると外部サイトにも情報を送信する)システムを作ってた頃。
自システムの文字コードがUTF-8、連携先のシステムがEUC-jpで動いてたんだ。
で、名字がJISの第3水準だか第4水準だかの文字(1文字)の人が申し込みしたとき、変換インターフェースが空文字に置き換えた挙げ句、連携先のサーバーアプリが所謂「ぬるぽ」で落ちて騒ぎになったことはある。
Re: (スコア:0)
そういや Mailman-jp は UTF-8 に公式対応したのかな。