Вдохновила меня на этот пост интересная история, произошедшая на днях. В публичном чате появилась ссылка на Саммит индийских девелоперов – http://www.developersummit.com/. В общем-то событие рядовое, и ничем особо не примечательное, если бы не язвительное упоминание про PHP ошибку на сайте:
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/develop/public_html/classes/ApplicationManager.obj on line 102 …..
В общем даже в этом нет ничего страшного, ну ошибка и ошибка с кем не бывает, хотя на Production системах ошибки необходимо в принципе отключать, ну да ладно. Главное другое, код ошибки может много сказать знающему человеку. Что же мы имеем в данном случае – “/home/develop/public_html/classes/ApplicationManager.obj”.
Путь похож на cPanel систему, с PHP-файлами имеющими нестандартное расширение, и как следствие полный доступ через Web.
Дальше дело техники, открываем:
http://www.developersummit.com/classes/ApplicationManager.obj.
<?php
/**
****************************************************************************
*
* Copyright : {{CENSORED}} © 2008-2009 by
* {{CENSORED}} Technologies® Private Limited.
* Description :
* File-ID :
* Author : {{CENSORED}}
* Date of Creation : 28-March-2008
* Date of Modification :
* Modified by :
* Modification :
*
****************************************************************************
*/
require_once(’./lib/SQL_Setup.obj’);
Там имеется ссылочка require_once(’./lib/SQL_Setup.obj’);
Открываем ссылку http://www.developersummit.com/lib/SQL_Setup.obj – вуаля: пароли, явки (строка подключения к базе и тд).
Офис лежал пол часа …
ЗЫ. К чести разработчиков, эту дыру закрыли на следующий день после нашего письма, но на других сайтах этого хостинга, сходные дыры так и не закрыты.