最善の方法は、OWASPトップ10を読むことです。これに慣れていない場合は、Open Web Application Security Projectであり、Webアプリのセキュリティに取り組んでいるコミュニティです。
悪意のあるユーザーが最も悪用しやすいのは、SQLインジェクションとXSSです。XSSはユーザーに悪影響を与える可能性がありますが、単一のSQLインジェクションの脆弱性がサーバー全体を危険にさらす可能性があります。SQLIは、パラメーター化されたクエリを使用するだけで防止でき、XSSの防止は、適切な入力検証と出力エンコーディングを使用することで実行できます。
ソフトウェアエンジニアリングの観点から、ユーザーによって提供された入力(これには非表示フィールドが含まれます)がコア機能を駆動することはありません。たとえば、サイトで商品を販売していて、価格の隠しフィールドがある場合、誰かがその値を非常に簡単に変更できるため、これは非常に悪いことです。
ユーザー名とパスワードを収集する場合は、それらがハッシュ化およびソルト化されていることを確認し、ユーザー情報を表示または収集するすべてのログイン画面とページにSSL(https)が設定されていることを確認してください。
OWASPトップ10のドキュメントは、https ://www.owasp.org/index.php/Top_10_2010にあります。
入力の検証とエンコードの実行についてサポートが必要な場合は、OWASP ESAPI(https://www.owasp.org/index.php/Category:OWASP_Enterprise_Security_API )を確認し、[PHP]タブをクリックしてください。
SQLインジェクションの場合、フレームワークを正しく使用している限り、codeigniterなどのフレームワークで保護する必要があります。ありがたいことに、フレームワークの使用が増えているため、SQLIの問題はますます少なくなっています。