"Недокументированные"
возможности сайта или дырявый CGI скрипт.
Intro
В этом тесте я опишу, как залезать внутрь
сервера, смотреть его файлы
и, хотя доступ будет readonly, получить кое-какие
привелегированные
возможности. =)
../../../../etc/passwd
Все началось с того, что на чат
www.mafia.ru/chatroom зашел какой-то
чел и пригласил всех на новый чат
www.nashchat.org. Ну, мне все равно
делать было нечего, решил я пойти туда,
посмареть, что к чему.
Отступление: до этого момента я уже
сделал все нижеописанное с сайтом
мафии, но об этом подробнее я написал в
конце.
Чат как чат. Никаких наворотов нет. 2
минуты извращений с тэгами и я
уже могу писать мессаги от других лиц. :)
Скучно.. Хотелось чего-то
новенького. Решил полазить по серверу.
Простенькие странички. Ничего
такого скриптованного, все просто до
невозможности.
Пошел гулять по ссылкам. Ничего обычного..
И тут я увидел ЭТО :)
http://www.nashchat.org/cgi-bin/win2win.cgi?qa.html
...тут сразу ясно, что через скрипт win2win.cgi
показывается в браузере
страница qa.html. :) "Ну, - думаю -, нашел!"
Быстренько скорректировал
адрес у себя в браузере до такого:
http://www.nashchat.org/cgi-bin/win2win.cgi?../../../../../etc/passwd
Каково же была моя радость, когда я в
браузере в качестве результата
получил содержимое файла паролей. =) Ясен
пень, что самих паролей в
них не было. Сервак запущен из-под nobody и
насчет реального файла
паролей (/etc/shadow) у него пожизненный permission
denied (ну
недоступны они ему, что поделаешь). :- Но
не беда! Даже из passwd
можно выудить кучу полезной информации.
Недолго я сидел, разглядывая скрипты
самого чата, пока мне delta не
напомнил об одном интересном файле -
.bash_history. Кто не знает - в
этом файле лежат как хистори все команды,
набранные юзером в консоли
телнета. Открыл я недавно стыренный
файлик пассвд, дабы посмотреть,
какие юзеры есть на сервере. И пошел
проверять у всех .баш_хистори.
Дошел до самого интересного юзера - httpd.
Как ни странно, его хистори
тоже оказалось доступным мне. =) Вот вам
урок, админы! Помните, что не
только вы видите, что вы набираете!
Просмотрев хистори нашего юзера я
наткнулся на такие строчки:
- - - -
ls -la
joe proj.apple.co.il-access_log
joe proj.apple.co.il-error_log
ls -la
cd etc/
joe httpd.conf
ping proj.apple.co.il
lynx http://proj.apple.co.il
lynx http://rest.apple.co.il
- - - -
Нетрудно догадаться, ЧЬЕГО сайта это был
админ, чей лог я просматрива :).
Прочитав еще немного хистори я увидел
следующее:
- - - -
ls -la
./password.cgi semen test
- - - -
Хех.. :) вот и скриптик куда-то. В это куда-то
пускает, по-видимому,
с логином/паролем "семен/тест".
Быстренько забежав на сайт rest.apple.co.il
(откуда я взял его, см. выше) я добавил еще
к адресу /password.cgi и...
Меня не пустило. Скрипт сам был, а пароль
был неприавильный. Видимо
хистори было довольно старое и админ уже
10 раз поменял логин и пароль:).
Ну пофиг..
Начитавшись хистори я выделил для себя
следующие вещи:
- чтобы зайти на странчику админа
виртуального ресторана
(rest.apple.co.il), нужно пройти аутенфикацию
через /password.cgi
- чтобы не проходить аутенфикацию ;)
можно напрямую зайти сюда:
rest.apple.co.il/admin.html
- полный путь к папке этого сайта на
сервере:
/usr/local/apache/share/cgi-bin/rest/
Мякго говоря, админы лоханутые тут. Хотя
бы страницу администратора
назвали как-нибудь по-другому. Ее можно
было найти даже через простой
перебор названий страниц. Да и печатать
надо без ошибок. Я бы сейчас
много чего не увидел бы.
Ват такая фигня. Я еще много информации
для себя нашел полезной в
файлах на этом сервере. Например, один
чудик записал свой логин/пароль
в свой же домашний католог в файл pasword. Я
увидел в хистори что-то
на подобие:
- - - -
passwd {юзер сменил пасворд свой}
cat > pasword {записать с консоли в файл}
- - - -
В последней строчке юзер ввел свой
пасворд в текстовый файл. Чтобы не
забыть, наверное. :)
Немного о Мафии :
Акромя хистори можно в некоторых
скриптах добиться того, что можно
просмотреть сожержимое каталогов. Как,
например, я этого добился на
сайте www.mafia.ru. Буквально случайно
наткнулся на борду, где
торговали запчастями от автомобилей.
Ссылка типа этой:
http://www.mafia.ru/cgi-bin/ank/forum/view.cgi?A=5&B=0001&C=base/000002012312
быстро превратилась в
http://www.mafia.ru/cgi-bin/ank/forum/view.cgi?A=5&B=0001&C=../../mafia/chatroom
Таким образом я увидел содержимое
скрипта чата :)
Внутри него в переменных были написаны
все файлы с приватом, темп-файлы
и т.п. фигня. Мне оставалось только
успевать менять путь к файлу. :)
Я долго думал, что за фигня у меня
выдается, когда я набирал:
http://www.mafia.ru/cgi-bin/ank/forum/view.cgi?A=5&B=0001&C=../../mafia/passwd
Как потом оказалось, passwd - это папка. А в
такой куче выдается просто
содержимое этой папки.
Кто будет особо хитрым, тот сможет найти
еще и пароли на чат. Так он
сможет заходить под любым ником + читать
"маляву" любого юзера. =)
|