• 締切済み

javaScriptのセキュリティ

javascriptの処理は、 クライアントサイドで改竄可能だと思っており、 高いセキュリティが求められる処理は、 サーバサイドがよい認識で合っていますでしょうか? 例えば、SQLインジェクション対策をjavascriptでしていたとして、以下の手順だとすり抜けられたりしないでしょうか? (1)ウェブページを表示して、ブラウザの「html保存」でクライアントサイドに保管する。 (2)html内で宣言されたjavascriptの各リンクも、一旦ダウンロードする。 (3)クライアントに落としてきたjavascriptを改竄する。 (4)クライアントに落としてきたhtml内のjavascriptのリンクをローカルのjavascriptに差し替えて、 サーバにリクエストする。 高いセキュリティが求められる処理は、 サーバサイドがよい認識で合っていますでしょうか?

みんなの回答

  • b0a0a
  • ベストアンサー率49% (156/313)
回答No.2

相当認識がおかしいですね 別にそういう手順なんて踏まなくてもF12キーでデバッガ開いてコンソールに1行打ち込めば SQLインジェクションなんて簡単にできるのですよ そしてそれは別にJavaScriptに限ったことではないですよね 例えあなたが何のサイトも公開してなかったとしても インターネットに繋がったサーバーを立てた時点で どこの誰がどのようなリクエストを飛ばしてきて どのようにサーバーが使われても文句は言えないのですよ それが少しでも分かっていたら そもそもクライアントサイドでなにかやるなんて微塵も考えつかないことです クライアントサイドはサーバーとは「関係ない」のですから 高いセキュリティ云々もよく分かりません 高いセキュリティが求められるから できるだけクライアントサイドで処理を済ませようということもあるでしょう 誰でもアクセスできるサーバーサイドにデータを置かず処理の窓口を設けねければ そもそも脆弱性は発生しようがないのですから

TeferiMage
質問者

お礼

F12でもインジェクションできる点、 クライアントサイドの方がセキュリティを保てるケースがある点など、 なるほどでした。 ありがとうございます。

  • aokii
  • ベストアンサー率23% (5210/22062)
回答No.1

例えば、SQLインジェクション対策をjavascriptでしていたとして、その手順だとすり抜けられたりします。 高いセキュリティが求められる処理は、サーバサイドがよい認識で合っています。

TeferiMage
質問者

お礼

ありがとうございます。 サーバサイドで書こうと思います。