Издательский дом ООО "Гейм Лэнд"ЖУРНАЛ ХАКЕР #101, МАЙ 2007 г.

Без крови и оружия

M3lc1y

Хакер, номер #101, стр. 101-058-2

[20-Dec-2005 23:56:19] PHP Warning: file(news.xml): failed to open stream: No such file or directory in /home/medicalc/public_html/money/xml.php on line 14

[20-Dec-2005 23:56:19] PHP Warning: join(): Bad arguments.

in /home/medicalc/public_html/money/xml.php on line 14

[20-Dec-2005 23:56:19] PHP Fatal error: Call to a member function on a non-object in /home/medicalc/public_html/money/xml.php on line 26

[20-Dec-2005 23:59:03] PHP Fatal error: Call to a member function on a non-object in /home/medicalc/public_html/money/xml.php on line 26

[21-Dec-2005 00:03:49] PHP Warning: fopen(rss.xml): failed to open stream: Permission denied in /home/medicalc/public_html/money/rss.php on line 57

[09-Jan-2006 17:42:28] PHP Warning: mysql_connect(): Can't connect to local MySQL server through socket '/var/tmp/mysql.sock' (2) in /home/medicalc/public_html/money/index.php on line 5

Естественно, из ошибок вытянуть чего-нибудь занятное не получилось, но это только на первый взгляд. Теперь совершенно очевидно, что скрипты работают с MySQL и полный путь к сайту у нас таков: /home/medicalc/public_html/emoney.

Ты думаешь, на этом мое исследование закончилось и я решил забить на обменник и пойти болтать в IRC? Нет. Самое главное, что нашел сканер, - это /server-status. Теперь уже интересно…

Существенная зацепка

Что же это за загадочная дира /server-status? Это даже не просто директория и не скрипт, а исключительно Apache'вская примочка. Она отображает всю информацию о веб-сервере: версию Apache, модули и т.д., текущее время, аптайм сервера, нагрузку CPU. Кроме того, из нее можно выудить просто море информации о том, какие сайты хостятся на всем сервере. В общем, выглядит это так, как на картинке.

Я собрал список сайтов и принялся их изучать. К слову сказать, их оказалось всего 5-6. Но и тут было, где разгуляться. Для тех, кто в танке, поясню, чему я так радуюсь: я ищу на одном из этих двух сайтов баг и получаю шелл на сервере обменника. Далее если администратор сервера - идиот и неправильно выставил chmod'ы, то я постараюсь забраться на обменник, в ином случае - просто подниму свои привилегии локально :).

Итак, я выбрал сайт medicalc.ua. Почему? Да потому, что мне сразу понравилось, что этот сайт оказался в Error_Log'e моего обменника с ошибками PHP-скрипта:

[09-Jan-2006 17:42:28] PHP Warning: mysql_connect(): Can't connect to local MySQL server through socket '/var/tmp/mysql.sock' (2) in /home/medicalc/public_html/money/index.php on line 5

Это можно увидеть из директории, в которой находится сайт. Согласись, логично подумать, что этот сайт и мой обменник очень тесно связаны друг с другом, ведь не просто так в логах хранятся его ошибки. Да, кстати, тоже самое (я о том, как узнать, какие сайты хостятся на сервере) тебе может предложить и метод Reverse IP LookUp, о котором NSD писал в мартовском номере за 2005 год в статье «Удар по WEB’у». Но, к сожалению, сервис domainsdb.org накрылся, поэтому я предлагаю тебе альтернативный сервис www.domaintools.com.

Назад на стр. 101-058-1  Содержание  Вперед на стр. 101-058-3