function ngen(){ /* , @*/ $names=file(dirname(__FILE__).'/names.txt'); $surnames=file(dirname(__FILE__).'/surnames.txt'); return trl($names[rand(0,count($names)-1)]).'-'.trl($surnames[rand(0,count($surnames)-1)]); // "-" , , _. } function trl($text) {/* , - */} function _l($v){/*- $v ( ), */} // . N email- , N=2; for ($i=0; $i<2;$i++){ $email=ngen(); $email=preg_replace('/[^A-Za-z-.]/','',$email); // , . $ch = curl_init('http://dx.com/newsletters'); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // , curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 6.0; rv:16.0) Gecko/20100101 Firefox/16.0'); curl_setopt($ch, CURLOPT_POSTFIELDS, 'email='.$email.'%40ocrd.ru&CheckedItems=5555&CheckedItems=4444&CheckedItems=8888&CheckedItems=9999&CheckedItems=3001&CheckedItems=3002&CheckedItems=3003&CheckedItems=3004&CheckedItems=199&CheckedItems=499&CheckedItems=799&CheckedItems=899&CheckedItems=599&CheckedItems=399&CheckedItems=699&CheckedItems=999&CheckedItems=1099&CheckedItems=1299&CheckedItems=1499&CheckedItems=1599&CheckedItems=1699&CheckedItems=1799'); // firebug $r= curl_exec($ch); _l("-in {$email}"); sleep(10); }
# /etc/exim4/conf.d/transport/01-ocrd_pipe ocrd_pipe: driver = pipe return_fail_output command = /usr/bin/php5 -f /var/mail/ocrd_mail.php $local_part
# /etc/exim4/conf.d/router/01-ocrd-pipe # , ( , , ) fwla: driver = redirect no_verify local_parts = tst:test:shilovyaroslav:valeryanyakushev:rogovanisim:potapovignatij:lukakarpov:avksentijuvarov:voronovfilat:kondratgavrilov data = ocrdmail@ya.ru unseen # . # -- ocrd: driver = accept domains = ocrd.ru transport = ocrd_pipe
<?php if (!isset($argv[1])) die(); $msg = ''; while(!feof(STDIN)) { $msg .= fread(STDIN, 1024); } // file_get_contents php://input =) $dir='/var/mail/ocrd.ru/'; $to=$argv[1]; // $fname=$to.'.'.date('dmy.His.').rand(1000,9999); $mf=$dir.'/'.$fname.'.msg'; file_put_contents($mf,$msg,FILE_APPEND); // , munpack // . $f=$dir.'/tempdesc.txt'; unlink($f); // mime messages, . $v=exec('munpack -f -C '.$dir.' '.$mf); _l("msg for {$to} {$fname}"); $c=file_get_contents($f); // . $v=activate_nl($to,$c) ; // fail? if (!$v) $v1= get_number($to,$c); // epic fail is so epic? if (!$v and !$v1) _l("err: not_detected ".$fname); // ddmmyy/<action> $t='err'; if ($v) $t='act'; if ($v1)$t='nbr'; $dc=$dir.'/'.date('dmy').'/'.$t; if ( !is_dir($dc)) mkdir($dc,0750,true); rename($mf,$dc.'/'.$fname.'.msg'); function activate_nl($to,$c){ // , global $dir,$fname; // . ? echo "Act_NL\n"; $regex='#/newsletters/confirmSubscribe\?e=(.+)%40ocrd.ru&c=(\d+)"#'; $m=array(); if(! preg_match($regex,$c,$m)) return false; // -- ( , ) _l("cnf for {$to}: e{$m[1]} c{$m[2]}"); file_get_contents("http://dx.com/newsletters/confirmSubscribe\?e={$m[1]}%40ocrd.ru&c={$m[2]}"); return true; } function get_number($to,$c){ // ID , . global $fname,$dir; echo "Act_GN\n"; $regex='#Your\s+lucky\s+number\s+is\D+(\d+)\s*<#'; $m=array(); if(! preg_match($regex,$c,$m)) return false; _l("lnm for {$to}: {$m[1]}"); return true; } function _l($v){ /* */}
Since we hadn’t been able to check all the winners email addresses. To remove the fairness.
Source: https://habr.com/ru/post/164661/