Jelikož čas nadešel, venku už je jaro, já mám zase grafomanské choutky.

Co se tedy u blog.cz změnilo ? No moc ne, teda alespoň to co je na první pohled vidět. Primární ochrana zůstala prakticky stejná, odpověď na kontrolní otázku z kódu zmizela a objevilo se něco takového

<noscript>
  napište &quot;blog.cz je skvely&quot;: <input type="text" name="secondaryMail" value="" />
</noscript>
<script type="text/javascript">
 // <![CDATA[
 var ansa = Array('b', '9376', 'log.cz je skvel', '417', 'y', '5552');
 document.write('<input type="hidden" name="secondaryMail" value="' + ansa[0] + ansa[2] + ansa[4] + '' + '" />');
 // ]]>
</script>

Tuhle část kódu lze opět zpracovat poměrně elegantně i bez interpreteru js. Ono teoreticky ani není možné generovat ochranu téhle úrovně tak aby nebylo možno ji zpracovat i mimo prohlížeč, je to daň za to, že nechcete otravovat lidi… odpověď tedy:


my $string_pole;
my $string_spojovaci;
my @ansa;
my $newval;

if($content =~ /var ansa = Array(\([^)]*\))/im) {
  $string_pole = $1;
  print "  - pole odparsovano - ".$string_pole."\n";
} else {
  print "  ! nemohu odparsovat pole s heslem\n";
  exit;
}

if($content =~ /document.write\('<input type="hidden" name="secondaryMail" value="([^"]*)/im) { #'
  $string_spojovaci = $1;
} else {
  print "  ! nemohu odparsovat spojovaci string\n";
  exit;
}

eval('@ansa = '.$string_pole.';');
$string_spojovaci = "'".$string_spojovaci."'";
$string_spojovaci =~ s/\+/\./g;
$string_spojovaci =~ s/ansa/\$ansa/g;
print "  - spojovaci string - ".$string_spojovaci."\n";

eval('$newval = '.$string_spojovaci.';');

print '  - nove heslo - '.$newval."\n";
$form{'secondaryMail'} = $newval;

K mému překvapení to nebyla jediná změna, kterou pánové udělali. To na čem stojí a padá právě systém hromadných blogů se tu zároveň stává výhodou. Systém proti jednotlivým spamům nikdy hromadně neubráníte, ale řekněme že po dvacátým postu Vás prostě systém zařízne, protože předpokládám že všechny komentáře procházejí stejným filtrem musí být hodně jednoduché mass postery označit.

Můžu se jen domnívat jak filtr vevnitř funguje, určitě v tom bude zase hrát roli časování a nějaká jednoznačná identifikace odesílatele. Z mého pohledu už další zkoumání ztrácí smysl a můžu vesele pogratulovat programátorům že udělali konečně krok správným směrem :)

Co bude dál ? No přestat parazitovat na cizích blogách a generovat si vlastní v masovém množství :)

Komentáře jsou uzavřeny.





© sh, bw and hosting donated by lidos.cz