私たちの Web サイトは、フォルダーに 777 のアクセス許可があり、ユーザーがそこにファイルをアップロードし、スクリプトをリモートで実行できるという事実が原因でハッキングされました。ただし、サイトには画像をトリミングするクライアント機能があり、トリミングした画像をそこに保存する必要があるため、フォルダーは 777 である必要があります。
このフォルダを保護してハッキングを防ぐにはどうすればよいですか?
これを行う方法を教えてください。どうもありがとう!
私たちの Web サイトは、フォルダーに 777 のアクセス許可があり、ユーザーがそこにファイルをアップロードし、スクリプトをリモートで実行できるという事実が原因でハッキングされました。ただし、サイトには画像をトリミングするクライアント機能があり、トリミングした画像をそこに保存する必要があるため、フォルダーは 777 である必要があります。
このフォルダを保護してハッキングを防ぐにはどうすればよいですか?
これを行う方法を教えてください。どうもありがとう!
私はあなたのデザインを再考します。クライアントが必要とする特定のタスクを実行するために自分で作成したスクリプトの読み取りと実行 (ただし、書き込みは不可) にクライアントを制限する必要があります。スクリプトで、有効なイメージではない他のファイルで使用できないように、イメージ ファイルを操作していることを確認します。ファイル拡張子を確認するだけでなく、ファイルの最初の数バイトも確認します (ほとんどの形式では、それが何であるかがわかります)。ファイル拡張子は簡単に変更できます。
ユーザーが独自のスクリプトを実行用にサーバーにアップロードすることを決して許可しないでください。そうすれば、ハッキングは本当に簡単になります。これを行う必要がある「パワー」ユーザーがいる場合は、独自の環境にサンドボックス化された独自のユーザー アカウントを作成します。このようにして、他のユーザーやシステムに影響を与えることはできず、彼らの行動に対する否認防止が行われます (したがって、彼らが愚かなことをした場合、彼らに責任を負わせることができます)。あなたのものではありません。
CHMOD 777 は本質的に安全ではありません。スクリプトをインストールするときの問題を一時的に回避するためにのみ使用されます。スクリプトをインストールしたら、CHMOD で 755 などに戻します。これを保護するには、アクセスを広く開いたもの以外に変更する必要があります。
ユーザーに画像をトリミングさせるには、Jcropのような従来の JavaScript クロッパーをお勧めします