Hi Michael.
Can you think of any good reason to accept a submission via a known open
proxy? You can grab a maintained open proxy list and use it for a while
Rolan-style... to tag potential spam as an experiment. Every market is
different, but in the tech world I see no valid reason to accept
connections from known open proxies (they are always spam). As a
competitive SEO, I know of no easier way to automate web connections
than via open proxies.
Bot nets are still a problem and all the big boys use them so maybe get
used to a little spam here and there as well.
-=john
Michael Southwell michael.southwell-at-nyphp.com |nyphp dev/internal
group use| wrote:
I thought I was following best practices (
http://www.nyphp.org/phundamentals/spoofed_submission.php ) in
creating a comment form for a restaurant client (There is no security
issue here; the comments are emailed):
I stored a random token in the session:
session_start();
if ( ! isset( $_SESSION['secret'] ) ) $_SESSION['secret'] = uniqid(
rand(), TRUE );
I hid that token in the form:
<form action="comments.php" method="post" onSubmit="return
checkForm(this)">
<input type="hidden" name="secret" value="<?= $_SESSION['secret'] ?>" />
Upon submission, I checked for the token:
if ( $_POST['secret'] !== $_SESSION['secret'] ) die( 'invalid form
submission' );
But I still got obvious spoofed submissions, not very many of them,
and all vapid and often nonsensical (a sample: "I consider that beside
Your site there is future!"), but still maddening. So I added a
five-minute timeout:
if ( ! isset( $_SESSION['timeout'] ) ) {
$timeout = time() + 5 * 60;
$_SESSION['timeout'] = $timeout;
}
and checked for that as well:
$now = time();
if ( $_POST['secret'] !== $_SESSION['secret'] || $now >
$_SESSION['timeout'] ) die( 'invalid form submission' );
But this hasn't helped much; I still get a few of them, though I can't
figure out how they can be generated. Any advice?
Michael Southwell, Vice President for Education
New York PHP
http://www.nyphp.com/training - In-depth PHP Training Courses
_______________________________________________
New York PHP Community Talk Mailing List
http://lists.nyphp.org/mailman/listinfo/talk
NYPHPCon 2006 Presentations Online
http://www.nyphpcon.com
Show Your Participation in New York PHP
http://www.nyphp.org/show_participation.php
--
-------------------------------------------------------------
Your web server traffic log file is the most important source of web business
information available. Do you know where your logs are right now? Do you know
who else has access to your log files? When they were last archived? Where
those archives are? --John Andrews Competitive Webmaster and SEO Blogging at
http://www.johnon.com
_______________________________________________
New York PHP Community Talk Mailing List
http://lists.nyphp.org/mailman/listinfo/talk
NYPHPCon 2006 Presentations Online
http://www.nyphpcon.com
Show Your Participation in New York PHP
http://www.nyphp.org/show_participation.php