Очень часто бывает, что админка есть, а залить не удаётся, т.к. *.php, а часто разрешается только *.jpg. Какие способы есть? Уже битый час убиваюсь, не могу( Пробовал с перехватом, через Tamper Data, не получается.
Это смотря где(клиент/сервер) происходит проверка. Если на клиенте, то можно сформировать посыл данных или банально в фаербаге/стрекозе поставить точку останова на месте проверки на расширение и изменить результат проверки. Если на сервере, то там уже несколько способов проверки и обхода: может проверяться регэкспом на первое вхождение /\.jpg/ - поставить image.jpg.php может проверяться функцией пхп на тип файла - открыть гифку блокнотом и вписать код пхп и поставить расширение .php это я описал то, что можно пройти, есть и другие способы.
Способов может быть миллион, а может и не быть вообще. К примеру совсем недавно, попался мне сайтик, в админке была только загрузка картинок, которая проверялась все возможными методами, и обойти фильтрация на расширение не удалось, темплейты править нельзя было, но можно было указать путь к файлам (таким как header.tpl, footer.tpl) и как выяснилось эти файлы просто подключались функцией include(), мне осталось всего лишь залить картинку с шелом, и в настройках указать путь к картинке, и шелл был успешно выполнен. Так же попадались случаи, когда при загрузки картинки, скрипт проверял всего лишь mime тип на белый список, и достаточно его было просто сменить оставив расширение. Так же были случаи когда была криво написана проверка, т.е. сначала файл копировался на сервер, а потом только проверялось его расширение/содержимое, и если файл не картинка вываливалась ошибка, но файл не удалялся. И вообще, вариантов может быть очень много, каждый случай может быть уникальным, а так же возможности может вообще не быть. Так что будьте внимательны при изучении панели администратора.
Как-то я поимел довольно жирный сайт из за кривой настройки апача. Файл залитый в виде shell.php.jpg выполнился как php без каких-либо дополнительных действий. А так нужно смотреть как там заливка выглядит. Допустим, если заливать можно только через редактирование текста, то, вероятнее всего, там будет какой-нить TinyMCE, через который не зальешь. Но практически в любом сайте есть самописные формы аплоада для баннеров, вложений и прочего. Вот через них и нужно пробовать.
Есть сайт Wordpress 3.0.1 права автора, заливка через стандартный редактор и публикация записей разрешены, вытащил хеш админа, но над подбором работаю уж 3 сутки. можно ли как то залить шелл?
спасибо проверил но результат нулевой, буду думать что делать дальше, дыр на WP 3.0.1 в паблике мало .
Дык ещё же есть заливка через мускул, если есть права на файловые операции, кавычки офф и ты знаешь полный путь до веб папки.
Слишком много если, хеш получен через SQL injection vulnerability in do_trackbacks() все подозрительные запросы не проходят. Melfis есть еще идеи? В общем повторюсь и соберу все данные в кучу может кто нибудь что нибудь подскажет. Дано: Установлен Wordpress 3.0.1, хостинг sweb, есть права автора, то есть есть доступ к заливке и публикации материалов, плагины темы и прочее редактировать нельзя. XSS не предлагать, так как двиг стоит отдельно от основного сайта и не используется, там дыру обнаружить не удалось. Хеш админа admin:$P$BPdY1OqdhlKnwjCJA7x1cOEzOwV.IS/ Необходимо: залить шел. Буду рад любой помощи.
ещё, заливается вида shell.php.gif, например, но перейти нельзя, пишет: Изображение «http://www.сайт/banners/shell.php.gif» не может быть показано, так как содержит ошибки.
ну конечно. ты ведь заливаешь изображение, оно и обрабатывается как изображение. зато если есть инклуд, его можно проинклудить. или попробуй в конец картинки добавить код и посмотри обработается ли он.
примеры инклуда? извини, в текстовиках не храню таковых. я имел ввиду, что залитую картинку с кодом, при наличии инклуда на сайте ты можешь выполнить. http://forum.antichat.su/showthread.php?t=232773
Вот, например, про таком запросе, мне не разу не удавалось зайти, где же данные хранятся, если не в бд?
Либо в бд, либо локально в той же папке в файле .htpasswd в закодированном виде. А называется это HTTP Based Authentication