CAPTCHA (完全に自動化公開チューリングテスト以外に)間違いなく1つのスパムを受け取るの大半をノックするための最良の方法ですコンピュータと人間は言う。 同社のWeb 2.0アプリケーションで人気を呼んでいる。 あまりにも多くのスパマーは、広く使われるようになるためには必要不可欠な亀裂を発見した。 しかし場合は、ユニークで新しいCAPTCHAを作成できるのなら、多くの安全なサイトを後にし、他の皆は、同じスクリプトをサイトを利用する傾向があるだろう。
約1年前、私は、単純なスクリプトを追加した。 もしそれがエラーは、単純なクエリの正しい結果が入力されませんでした。 これは実際にはかなりよく、私にとって今、最も他人に動作します。 特に彼らの数に加えて、各リフレッシュ後に使用されるの変化に進化している。 私はこの私よりも少ないときにマークを滑りになるようなものを使用します。 だから一歩をさらにスクリプトを追加した。 なぜ? これは、 1つの番号を簡単にスクリプトをコピーすることができますので、一緒に働いてきたImageMagikていないすべてのサーバーおよび/またはGDライブラリをインストールしている。
約15行では、私の関数を動的に生成、異なる2つの数字記号の配列/文字/記号をユーザーにいくつかの異なる方法で適用するための適切な数学を教えることが可能となった。 スパマーのためには、もう少し複雑なためには、さらなる追加してください。 また、単語の間にランダムな文字列を挿入することで、それをミックスすることができます: "プラス"または"プラス"または" P Ł u 』 S "は。
-
//USAGE: $answer = numbercaptcha(); -
//****** Call this between <form></form> -
//****** $_POST will contain $_POST['number']_POSTを//****** $_POST will contain $_POST['number'] -
//****** Check if $_POST['number'] is == to $answerは//****** Check if $_POST['number'] is == to $answer -
//OPERATORS: Add additional $opperators to the array for more varriation用//OPERATORS: Add additional $opperators to the array for more varriation -
function numbercaptcha ( ) { -
//Set first and second num rand(min,max) -
$firstnum = rand ( 5 , 8 ) ; -
$secondnum = rand ( 1 , 4 ) ; -
$coinflip = rand ( 1 , 2 ) % 2 ; //Picks a random equation typeおすすめ$coinflip = rand ( 1 , 2 ) % 2 ; //Picks a random equation type -
if ( $coinflip == 0 ) {場合if ( $coinflip == 0 ) { -
$math = $firstnum $secondnum ; -
$operators = array ( " " , "Added To" , "Plus" ) ;加え$operators = array ( " " , "Added To" , "Plus" ) ; -
$operatorschoice = rand ( 1 , 3 ) % 3 ; -
} else { -
$math = $firstnum - $secondnum ; -
$operators = array ( "-" , "Minus" ) ; -
$operatorschoice = rand ( 1 , 2 ) % 2 ; -
} -
echo $firstnum . " " . $operators [ $operatorschoice ] . " " . $secondnum . " = <input type= \" text \" name= \" number \" maxlength= \" 2 \" size= \" 5 \" >" ;$エコーecho $firstnum . " " . $operators [ $operatorschoice ] . " " . $secondnum . " = <input type= \" text \" name= \" number \" maxlength= \" 2 \" size= \" 5 \" >" ;=echo $firstnum . " " . $operators [ $operatorschoice ] . " " . $secondnum . " = <input type= \" text \" name= \" number \" maxlength= \" 2 \" size= \" 5 \" >" ; -
return $math ; -
} - ダウンロードこのコード: 0314numbercaptcha.txt
何も誰にでもできるが、これもクラックすることができます。 しかし、典型的なボットの周りや、あなたのサイトにスパムに対処するには、プロのための頭痛の原因を"スクリプトキディー"あなたを得るでしょう。 この暴行を取得し、スパマー私は心の中で別の方法を計画している私の周りの道を自動化している。 もう1日は特に。
今のところ、私はスパムを避けるための鍵を見つけた典型的なCMSの距離および/またはフォーラムのシステムからは、いくつかの他のクッキーのカッターのサイト間で予測可能なコードが含まれて滞在している。 あなたの大半をこのふてくされないソリューションです。 しかし場合は、場所は、何か独自の問題... ...あなたはスパマーの典型的な期待をあなたのサイトを維持して、スパマーのスクリプトにこのコードを破ることができるかのように実装しています。
また、友人を追加/減算述べたように、ユーザーのハードすぎるかもしれないとのコメントを失っているよ/メール。 かもしれませんがあまりにも検討しているか? 私の場合は、コメントを残しているか、または追加することはできません場合は、 1桁の数字を引くメールを送信するユーザーの質を問題にしている。 ただし場合は、ランダム化種子部門の調整と一部の長いスローして、困難を増す可能性がある。 それはやり過ぎかもしれない: ) 。
もしあなたが私の最後の投稿をチェックアウトすることが、スパムシリーズ: 5つキャッチとウェブサイトのフォーム迷惑メール-防止のためにパート1を維持している。 私はそのページをチェックするためのコードの2番目のブロックの更新は、 URL形式の乱用を防ぐために言及。





































コメントを残す: