2011-03-13 8 views
1

私はphpフォームを検証するためにlivevalidationスクリプトを使用しましたが、私はいくつかの入力が数字ではない文字を挿入できるので、私のウェブサイトがハッキングされたと思います。どのようにハッキングのPHPフォームを解決する

ハッカーのもう1つの問題は、自分の選択タグがデータを誤って私のフォームに挿入しないようにすることです。

だから誰でも助けてくれますか?

+4

もう少しボビーのテーブルです:http://xkcd.com/327/ – corsiKa

+0

あなたのアドバイスありがとうが、私はPHPの初心者ですので、どのように私はgiudを見つけることができます助けてください – maha

+0

私はこれが私のお茶のカップではないことを認めて最初になるでしょう:)これはあまりアドバイスではありませんでしたそして、 "ここにはこの種のことについて面白い漫画があります。 – corsiKa

答えて

11

JavaScriptは安全な方法でデータをチェックすることはできません。それは、ユーザーの利便性だけと考えるべきです。

PHPでサーバー上で取得したすべてのデータを検証する必要があります。

PS:あなたは、Filtering機能選択ボックスを検証するためin_array()を便利、正規表現を見つけること、など

+0

あなたのご意見ありがとうございますが、私はPHPの初心者ですので、どうすれば助けてくれるのですか?非常に広範な質問である – maha

+0

@mahaを見つけることができます。私は手元に資源を持っていません(私は他の人がそうしていると確信しています)が、基本的にフォームが提出する変数$ _GETまたは$ _POSTをチェックし、それが期待どおりであることを確認する必要があります。フィルタリング機能に関するチュートリアルを検索して試してみたら、「メールアドレスを検証するにはどうすればよいですか?等々。 – Matthew

0

私のように行うことができます。

if (isset($_GET['string']) && !empty($_GET['string']) && is_string($_GET['string'])) 

    $str = mysql_real_escape_string(stripslashes(trim($_GET['string']))); 

そして:

if (isset($_GET['id']) && !empty($_GET['id']) && is_numeric($_GET['id'])) 

    $id = trim($_GET['id']); 

これはどう思う?

これらのすべてのテストの有用性についてはわかりません。

0

ダウンロードaccunetixどこかで無料バージョンを探すと、セキュリティホールのアプリケーションをテストできるようになります。それはそこに存在する他のくそのようなではない、素晴らしいUIと使いやすいです。 accunetix.com

+0

また、フォーム上のすべての入力が消去されていることを確認してください。それがチェックボックス、選択、入力、ラジオ、ボタンのいずれであっても関係ありません。ハッカーはあなたのサイトが自分が望むようにするためにanythignを修正しようとします。 –

関連する問題