писал по просьбе знакомого. скрипт выдает webmoney BL в текстовом виде. (переводит БЛ-картинку в цифру) PHP: <? // запрос к скрипту - index.php?id=838229434718 function itfalse($x) { global $se; $ok=0; for ($j = 3; $j < 15; $j++) { if ($se[$x][$j] == 40) { $ok++; } } return $ok; } function iscount2($x,$y) { if (($x == 7) and ($y == 7)) { return 0; } if (($x == 1) and ($y == 0)) { return 1; } if (($x == 3) ) { return 2; } if (($x == 2) and ($y == 6)) { return 3; } if (($x == 2) and ($y == 1)) { return 4; } if (($x == 6) and ($y == 5)) { return 5; } if (($x == 7) and ($y == 4)) { return 6; } if (($x == 1) and ($y == 2)) { return 7; } if (($x == 6) and ($y == 6)) { return 8; } if (($x == 4)) { return 9; } } function iscount($x,$y) //1 2 digit { if ( ($x == 1) and ($y == 0) ) { return 1; } if (($x == 5) and ($y == 4)) { return 2; } if (($x == 2) and ($y == 7)) { return 3; } if (($x == 2) and ($y == 10)) { return 4; } if (($x == 7) and ($y == 5)) { return 5; } if (($x == 8) and ($y == 5)) { return 6; } if (($x == 1) and ($y == 3)) { return 7; } if (($x == 7) and ($y == 7)) { return 8; } if (($x == 5) and ($y == 8)) { return 9; } if (($x == 8) and ($y == 8)) { return 0; } } $wmid = file_get_contents('http://stats.wmtransfer.com/Levels/pWMIDLevel.aspx?wmid='.$_GET['id'].'&w=35&h=18&bg=0XDBE2E9'); $img = imagecreatefromstring($wmid); for ($i = 4; $i < 35; $i++) { for ($j = 3; $j < 15; $j++) { $se[$i][$j] = (imagecolorat ($img, $i, $j)); } } $is = false; $w = ''; if ( (itfalse(4) ==6 ) and (itfalse(5) ==7 ) and (itfalse(6) ==1 ) and (itfalse(7) ==2 ) and (itfalse(8) == 7 ) ) { $is = true; $w='no'; } if (!( itfalse(18) or itfalse(20) or itfalse(19) or ($is) ) ) { //one digit $p1 = itfalse(23,$se); $p2 = itfalse(28,$se); $w = (iscount($p1, $p2)); $is = true; } if ( ! ( itfalse(13) or itfalse(14) or itfalse(12) or ($is) ) ) { //two digit $p1 = itfalse(17,$se); $p2 = itfalse(22,$se); $w = (iscount($p1, $p2)); $p1 = itfalse(25,$se); $p2 = itfalse(30,$se); $w .= (iscount($p1, $p2)); $is = true; } if (!( itfalse(7) or itfalse(8) or itfalse(6) or ($is) ) ) { //tree digit $p1 = itfalse(11,$se); $p2 = itfalse(16,$se); $w = (iscount2($p1, $p2)); $p1 = itfalse(18,$se); $p2 = itfalse(23,$se); $w.=(iscount2($p1, $p2)); $p1 = itfalse(25,$se); $p2 = itfalse(30,$se); $w.= (iscount2($p1, $p2)); $is = true; } if ($is == false) { $p1 = itfalse(6,$se); $p2 = itfalse(11,$se); $w = (iscount2($p1, $p2)); $p1 = itfalse(13,$se); $p2 = itfalse(18,$se); $w.= (iscount2($p1, $p2)); $p1 = itfalse(20,$se); $p2 = itfalse(25,$se); $w.= (iscount2($p1, $p2)); $p1 = itfalse(27,$se); $p2 = itfalse(32,$se); $w.= (iscount2($p1, $p2)); } echo($w); ?>
Во-первых: беспонт. Во-вторых: Надо сразу записывать в файл. Нах обычный вывод? Вот написал (без html'я) - работает как обычный генератор uin;pass. PHP: <?phpset_time_limit(0);$nach = '10000';$kon = '10020';$fp=fopen('rezult.txt', 'w+'); // результативный файл вида uin;pass$pass_file=file('pass.txt'); // файл с паролямиfor($i=$nach; $i<$kon; $i++)foreach ($pass_file AS $one_pass){$v=str_replace("\r",'',$v);$v=str_replace("\n",'',$v);$uin_pass=$i.";".$one_pass;fwrite($fp,$uin_pass);}fclose($fp);echo('DONE');?>
Генератор диапазона номеров PHP: <?php set_time_limit(0); $file = 'uins.txt'; $from = $_POST['from']; $to = $_POST['to']; if($_POST['button']) { for($uins = $from; $uins <= $to; $uins++) { $gen = fopen($file, 'ab'); fwrite($gen, $uins."\r\n"); fclose($gen); } $msg = "Список успешно создан"; } ?> Введите диапазон ICQ номеров <form method="post"> От <input name="from" value="111"/><br/><br/> До <input name="to" value="222"/><br/> <input type="submit" name="button" value="Создать список"/> </form> <?php echo $msg ?> GrAmOzEkA, генератор случайных паролей PHP: function mkey($len = 8, $type = 'ALNUM') { $alpha = array('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z'); $ALPHA = array('A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'); $num = array('1', '2', '3', '4', '5', '6', '7', '8', '9', '0'); $simv = array('!', '@', '#', '$', '%', '^', '&', '*', '(', ')', '-', '_', '=', '+', '[', ']', '{', '}', '?', '<', '>'); $keyVals = array(); $key = array(); switch ($type) { case 'lower' : $keyVals = $alpha; break; case 'upper' : $keyVals = $ALPHA; break; case 'numeric' : $keyVals = $num; break; case 'ALPHA' : $keyVals = array_merge($alpha, $ALPHA); break; case 'ALNUM' : $keyVals = array_merge($alpha, $ALPHA, $num, $simv); break; } for($i = 0; $i <= $len-1; $i++) { $r = rand(0,count($keyVals)-1); $key[$i] = $keyVals[$r]; } return join("", $key); }
Isis, вот. Подправил: PHP: <?php set_time_limit(0); $file = 'uins.txt'; if(!empty($_POST["from"]) && $_POST["to"]) { $from = $_POST['from']; $to = $_POST['to']; if($_POST['button']) { for($uins = $from; $uins <= $to; $uins++) { $gen = fopen($file, 'ab'); fwrite($gen, $uins."\r\n"); fclose($gen); } } echo"Список успешно создан"; } else { ?> Введите диапазон ICQ номеров <form method="post"> От <input name="from" value="111"/><br/><br/> До <input name="to" value="222"/><br/> <input type="submit" name="button" value="Создать список"/> </form> <br/><br/> Все сохранится в файл uins.txt !!!<br/><br/><br/>(c) 2007 by Isis <? } ?>
Скрипт просто тупо создаёт файлы(куча ошибок там...): PHP: <? $format = array('.php', '.pdf', '.txt', '.jpg', '.mp3', '.xls', '.html', '.pif', '.ini', '.sys', '.pds', '.wma', '.wav','.exe', '.jpeg', '.rar', '.zip', '.gif', '.pl', '', '.mail', '.xml', '.bak'); $simvols="qazxswedcvfrtgbnhyujmkiolp1234567890QAZXSWEDCVFRTGBNHYUJMKIOLP"; $xyz="23"; // Количество символов в $simvols $size=StrLen($simvols)-1; // Пустая переменная в которую будем писать. $password=null; // Количество символов в пароле. $xyz; // Создаём пароль. while($xyz--) $password.=$simvols[rand(0,$size)]; for ($i = 0; $i <= 23-1; $i++) { $text=rand(0,6498432674666)."jyuftrzgb".$password."jyuzgzfdzgb".$password."jyuftrzgb".$password."jyuftrzgb".$password."jyuftrzgb".$password."jyuftrzgb".$password; $i=rand("0","23"); $password.=$simvols[rand(0,$size)]; $fp=fopen($password."fd".$format[$i],"ab"); fwrite($fp,$text); fclose($fp); } echo "DONE"; ?> Поместите скрипт в отдельную папку. и желательно в Опере подержите Ctrl+R сек 10,20... Комп может повиснуть...
Скрипт для удаления сообщений с форума античата Можно настроить из какого раздела=\ну это уже сами Писал для одного раза,то есть код не оптимизирован. 1.Вписываем свой логин ,пароль и ид(иди посмотреть можно на 1странице наведя на ссылку ВЫХОД) в два!файла 2.запускаем первый файл Происходит авториация ,поиск всех сообщений и запись в файл их ид 3.Запускаем файл Делет,происходит удаление всех сообщений,которые может удалить юзер сам. _http://test-lol.narod.ru/antichat/create/Login.php _http://test-lol.narod.ru/antichat/create/Delete.php на выходе файл parser.txt при перезапуске скрипта Login.php его нужно удалить ручками(parser.txt) просто сохраните эти файлы на жд Должны работать сокеты и set_time_limit(0);
Ходит миф что на ачате нельзя менять подпись обычным юзерам. Развею этот миф - в данный момент момент можно Должны работать сокеты Не забываем поставить свои логин,пароль,подпись урезается до 50символов _http://test-lol.narod.ru/antichat/create/profile.php Замечание: Подпись как раньше так и после будет отображаться только в вашем профайле
Мини криптор! Криптует тока php! PHP: <? // $file="123.php";//Старый файл $new="1233.php";//Новый файл // $content = file_get_contents($file); $content=str_replace("<?",'',$content); $content=str_replace("?>",'',$content); $content=str_replace("\n",'',$content); $contents = base64_encode($content); $fp=fopen($new,"w"); fwrite($fp,'<?eval(base64_decode("'.$contents.'"));return;?>'); fclose($fp); ?>
я тоже писал нечто подобное, правда лишь для себя и немного более расширенно... gzdeflate+base64. Есть опция записи в файл, понимает php без "<?" и "?>" на крипт и сам хеш на декрипт (по идее, должен понимать всю выводимую при энкрипте строку, но я намудрил где-то имхо) PHP: <? Error_Reporting(E_ALL & ~E_NOTICE); //visual form echo "<title>en/de.coder :) </title>"; echo "<form method='post'><textarea cols='50' rows='15' name='source'></textarea><br>"; echo "Encode <input type='radio' name='method' value='en' checked>"; echo "Decode <input type='radio' name='method' value='de'>"; echo "Writing into the file <input type='checkbox' name='write' value='1'><br><br>"; echo "<input type='Submit' name='Submit'></form><br><br><br>"; //encrypt if ($method == 'en') { $source = gzdeflate($source); $source = base64_encode($source); echo "eval(gzinflate(base64_decode('".htmlspecialchars($source)."')));"; //writing into the file if ($write !== 0) { $handle = fopen("encode.txt", "w+") or die ("Cannot open the file!"); fwrite($handle, $source); fclose($handle); } } //decrypt elseif ($method == 'de') { $source = str_replace("eval(gzinflate(base64_decode('","",$source); $source = str_replace("')));","",$source); $source = base64_decode($source); $source = gzinflate($source); echo $source; //writing into the file if ($write !== 0) { $handle = fopen("decode.txt", "w+") or die ("Cannot open the file!"); fwrite($handle, $source); fclose($handle); } } else echo "Выберите операцию..."; ?> можно жестко оптимизировать код имхо, но неохота)
а вот мой вариант (давно писал, один из первых скриптов ) PHP: <? echo '<title>icq_gen.php =\ </title>'; if (!isset($start) || !isset($end)) { $end=""; $start=""; $pass=""; echo '<form method=post>'; echo 'Начало диапазона: <input type=text name=start><br/><br/>'; echo 'Конец диапазона: <input type=text name=end><br/><br/>'; echo 'Желаемый пароль: <input type=text name=pass><br/><br/>'; echo "Писать в файл: <input type='checkbox' name='write' value='1'><br/><br/>"; echo "Выводить в браузер: <input type='checkbox' name='browse' value='1'><br/><br/>"; echo '<input type=submit value=Отправить></form>'; } $fname="result.html"; $end=$end++; $res=$start; $pass=trim($pass); $fp=fopen($fname, "w+"); if (!empty($pass)) { $len=strlen($pass); if ($len > 8) { $pass=substr($pass,0,8); } for ($a=0; $a<($end-$start); $a++) { if ($write !== 0) fwrite($fp,$res.";".$pass."<br/>"); if ($browse !== 0) echo $res.";".$pass."<br/>"; $res++; } fclose($fp); } else { for ($a=0; $a<($end-$start); $a++) { if ($write !== 0) fwrite($fp,$res.";".$pass."<br/>"); if ($browse !== 0) echo $res.";".$pass."<br/>"; $res++; } fclose($fp); } ?>
Вы *бнулись?=\ ну давайте тогда просто откроем тему - 1.как я начинал программировать(как я продолжаю начинать программировать) 2.Как записывать строки в файл 3.как пользоватьтся rand() и т п и т д Если выкладываете криптор ,ну так выложите не въ*бенный криптор
спамер для vkontakte.ru, спамит комментариями к зометкам, пока багу с blog_id не прикрыли с одного акка удавалось отправить около 2000 сообщений в час, теперь приходится парсить страницу и по этому скорость ниже =( Code: #usr/bin/perl ############################ # vkontakte.ru notes spamer # C!klodoL ############################ use IO::Socket; $email = '[email protected]'; $pass = 'fdsfsdfs'; $post_id = 200000; # id с которого начать $text = 'Превед!'; $host = 'localhost'; #хост прокси $port = '8118'; #порт $email =~s/@/%40/; $emps = "email=$email&pass=$pass"; $text =~s/([^A-Za-z0-9])/sprintf("%%%02X", ord($1))/seg; $login ="POST http://vkontakte.ru/login.php HTTP/1.1\r\n". "Host: vkontakte.ru\r\n". "Accept: */*\r\n". "Content-Type: application/x-www-form-urlencoded\r\n". "Content-Length: ".length($emps)."\r\n". "Referer: Referer: http://vkontakte.ru/\r\n". "User-Agent: Internet Explorer 6.0\r\n". "Connection: close\r\n\r\n$emps"; $sock = IO::Socket::INET->new(Proto=>'tcp', PeerAddr=>$host, PeerPort=>$port); print $sock $login; while ($answ = <$sock>){ if ($answ =~/remixmid=([0-9])/){ $answ =~m/(\d+)/; $remixmid = $1;} if ($answ =~/remixpass=([a-z0-9]{32})/){ $answ =~/remixpass=([a-z0-9]{32})/; $remixpass = $1;} } close $sock; $cookie = "remixchk=2; remixmid=$remixmid; remixemail=$email; remixpass=$remixpass;"; sleep(1.1); if ($remixpass){ while (1){ system("cls"); $get = "GET http://vkontakte.ru/notes.php?act=s&nid=$post_id HTTP/1.0\r\n". "Host: vkontakte.ru\r\n". "Accept: */*\r\n". "Content-Type: application/x-www-form-urlencoded\r\n". "Referer: http://vkontakte.ru/\r\n". "User-Agent: Internet Explorer 6.0\r\n". "Cookie: $cookie\r\n". "Connection: close\r\n\r\n"; $sock = IO::Socket::INET->new(Proto=>'tcp', PeerAddr=>$host, PeerPort=>$port); print $sock $get; while ($html = <$sock>){ if ($html =~ /name="blog_id"/gi){ $html=~m/(\d+)/gi; $blog_id = $1; } } close $sock; sleep(1); $uri = "blog_id=$blog_id&post_id=$post_id&act=addComment&comment=$text"; $cament = "POST http://vkontakte.ru/notes.php HTTP/1.1\r\n". "Host: vkontakte.ru\r\n". "Accept: */*\r\n". "Content-Type: application/x-www-form-urlencoded\r\n". "Content-Length: ".length($uri)."\r\n". "Referer: Referer: http://vkontakte.ru/\r\n". "User-Agent: Internet Explorer 6.0\r\n". "Cookie: $cookie\r\n". "Connection: close\r\n\r\n$uri"; $sock = IO::Socket::INET->new(Proto=>'tcp', PeerAddr=>$host, PeerPort=>$port); print $sock $cament; while ($p = <$sock>){ print $p; } close $sock; print "[+] Comment BLOG_ID: $blog_id, NOTES_ID: $post_id\n"; sleep(1); $post_id++; } } else {print "Bad login or password"; exit;}
Двойная защита информации! http://ltest1.ru/hesh.php?pass= PHP: <? function md51($pass) { echo"<P> Md5.1 : "; $hesh1=base64_encode($pass); $hesh2=sha1($hesh1); $hesh3=md5(md5($pass).$hesh1.$hesh1); $base64=base64_encode(md5($pass).$hesh1.$hesh1.$hesh3); $md5_end=md5($hesh1.$hesh2.$hesh3.$base64."md51"); echo $md5_end; } md51($_GET['pass']); function md5s($pass) { $x="400000"; echo"<P> Md5 X <B>".$x."</B> : "; for($i = 1; $i <= $x; $i++) { $md= md5($pass); } echo $md; } md5s($_GET['pass']); ?>
Недавно чел спрашивал как востановить базу, не одно из перечисленных средсв не подошло. С помощью этого скрипта можно читать sql-файл построчно, точнее по командно, предворительно залив его через фтп: PHP: <?php // подключаемся к бд mysql_connect("localhost", "login", "password"); mysql_select_db ("database"); // if (!file_exists($fname)) die ("Файл $fname не существует!"); $fp = fopen ($fname, "r"); $buffer = fread($fp, filesize($fname)); fclose ($fp); $prev = 0; while ($next = strpos($buffer,";",$prev+1)) { $i++; $a = substr($buffer,$prev+1,$next-$prev); mysql_query($a); $prev = $next; } echo "Выполнено $i команд"; ?> $fname - имя файла sql-дампа $prev - позиция предыдущей ";" $next - позиция следующей ";" начиная с позиции $prev Вызываем скрипт примерно так: sqlbackup.php?fname=backup.sql, будет выполнен файл backup.sql. В конце выводится число выполненных команд. Минусы Занимает большое количество ресурсов сервера, весь файл читается в память. Можно усовершенствовать, читая из файлового только отдельные sql-команды.
Шифрование пароля используя md5($key.strrev()); Code: <? // coded by GrAmOzEkA $password = '1234567890'; //пароль echo $password; //выводим пароль echo"<br></br>"; $key = 'Gramozeka'; //то что прибавляем к паролю $password = $key.strrev($password); //собсно сам процесс =) echo $password; //выводим то что получилось echo"<br></br>"; $password = md5($password); //шифруем md5 echo $password; //выводим ?> Или так Code: <? $password = '1234567890'; //пароль echo $password; //выводим пароль echo"<br></br>"; $key = 'Gramozeka'; //то что прибавляем к паролю $password = md5($key.strrev($password)); //собсно сам процесс =) echo $password; //выводим то что получилось ?>
Функция для обработки файла с DDL-запросами и соответственно выполнение их в БД MySQL. PHP: function parse_sql($file) { $fp = fopen($file, "r"); while (!feof($fp)) { // Читаем строку из файла и удаляем из неё символы \t\r\n $str = chop(fgets($fp, 65536)); if (strlen($str)) { // Собираем запрос разделённый на несколько строк while (substr($str, strlen($str) - 1, 1) != ";" && substr($str, 0, 1) != "#" && substr($str, 0, 2) != "--") { $str .= chop(fgets($fp, 65536)); } // Если не комментарии if (substr($str, 0, 1) != "#" && substr($str, 0, 2) != "--") { if (!mysql_query($str)) { return false; } } } } fclose ($fp); return true; }
скрипт граббер тёток с сайта xuk.ru Code: #!/usr/bin/perl use IO::Socket::INET; use warnings; use strict; my $sPage = 1; my $ePage = 35; for ($sPage..$ePage) { open (LOG, '>>history.txt'); my $rate = "http://xuk.ru/tits/".$sPage.".html?sort=rating"; print "Page $sPage\n"; print LOG "$rate\n"; my $page = get($rate); my @telki = $page =~ /href="(.+?vid-1.html)">/gi; while (@telki) { my $telka = shift @telki; print "$telka\n"; print LOG "\t$telka\n"; my $links = get($telka); my @fotki = $links =~ /" border="1" bgcolor="#000000" src="(.+?)"/gi; $telka =~ /\/(.+)\/vid-1.html/i; my $mmm = $1; $mmm =~ s/(.*)\///; system("mkdir $mmm"); while (@fotki) { my $fotka = shift @fotki; print "$fotka\n"; print LOG "\t$fotka\n"; (my $file = $fotka) =~ s(^.*/)(); $fotka = get($fotka); open (FILE, ">$mmm/$file"); binmode FILE; $fotka =~ m/\n\r\n(.+)/s; print FILE $1; close FILE; } } $sPage++; } sub get { my ($url, $answ) = @_; $url =~ m/\/\/(.+?)\//i; my $sock = IO::Socket::INET->new(PeerAddr=>$1, PeerPort=>80, Proto=>'tcp') || die 'Cant connect'; print $sock ("GET $url HTTP/1.0\r\n". "Host: $1\r\n". "Accept: */*\r\n". "User-Agent: Perl\r\n". "Connection: close\r\n\r\n"); while (<$sock>) { $answ .= $_; } close $sock; return $answ; }
Протупил PHP: function md5s($pass) { $x="400000"; echo"<P> Md5 X <B>".$x."</B> : "; for($i = 1; $i <= $x; $i++) { $pass= md5($pass); } echo $pass; }
мб уже выкладывали что-то подобное, но я не нашёл Code: #!/usr/bin/perl open (SRC, "$ARGV[0]") or die "Can't open $ARGV[0]:$!"; open (RES, ">$ARGV[1]") or die "Can't create $ARGV[1]:$!"; @src = <SRC>; $num = @src; for ($id = 1;$id != $num;$id++) { $str = "$src[$id]"; if ($str=~ /\w+@\w+.\w+/) { $mail = $&; } if ($str =~ /\w{32}/) { $hash = $&; $res = join ':',$mail,$hash; print RES "$res\n"; } } Скрипт для парсинга sql дампов Выводит в файл список вида mail:hash После этого удобно импортировать в passwordspro Пример запуска perl script.pl c:/dump.sql c:/result.txt PS Код канеш наркоманский Я только учусь
Уже не помню, где я выкладовал как избавиться от php-инклуда, решил сделать поудобней + добавил проверку валидности файла и избавление от рекурсии PHP: <? #(c) NOmeR1 error_reporting(0); ... function inc($do,$inc,$posle) { $bug = $_SERVER['SCRIPT_NAME']; $bug = preg_replace('/^(.*)\/(.*)\.(.*)$/i','\\2',$bug); $inc = str_replace('http','',$inc); $inc = str_replace('ftp','',$inc); $inc = str_replace(':','',$inc); $inc = str_replace('/','',$inc); $inc = str_replace('\\','',$inc); $inc = str_replace('.','',$inc); $inc = str_replace($bug,'',$inc); $inc = htmlspecialchars($inc); if(file($do.$inc.$posle)) { include($do.$inc.$posle); } else echo 'Файла '.htmlspecialchars($do).$inc.htmlspecialchars($posle).' не существует'; } ... if($_GET['page']) inc('',$_GET['page'],'.php'); ... ?>