/
home
/
cowu7657
/
New Directory
Upload File
HOME
#1733931596 ll #1733931601 cd ampoule-discount/ #1733931602 ll #1733931613 nano .htaccess #1734015966 exit #1734087057 ll #1734087065 cd jymagence/ #1734087066 ll #1734087072 nano .htaccess #1734087093 service apache2 status #1734087107 apache2 -v #1734086231 ll #1734086238 cd ampoule-discount/ #1734086239 ll #1734086251 pwd #1734086270 nano .htaccess #1734086450 cd .. #1734086454 cd jymagence/ #1734086455 ll #1734086459 nano index.php #1734086635 nano .htaccess #1734086762 ll #1734086794 cd .. #1734086796 ll #1734086798 cd ampoule-discount/ #1734086799 ll #1734086810 cp info.php ../jymagence/ #1734086814 cd ../jymagence/ #1734086815 ll #1734086877 ls -l #1734086884 nano .htaccess #1734086901 nano php.ini #1734086914 ll #1734087125 cd /etc/apache2/ #1734087126 ll #1734087129 cd .. #1734087131 ll #1734087445 cd /home/cowu7657/ #1734087446 ll #1734087746 cd ampoule-discount/ #1734087749 nano .htaccess #1734087774 nano ../jymagence/.htaccess #1734087782 nano .htaccess #1734088154 ll #1734088165 cp ../jymagence/php.ini ./ #1734088167 ll #1734088204 nano .htaccess #1734088252 nano php.ini #1734091652 ll #1734091699 nano .htaccess #1734120077 cd .. #1734120078 ll #1734120083 cd destination-privee/ #1734120084 ll #1734120271 nano .htaccess #1734120337 cd .. #1734120344 ll #1734120346 cd .. #1734120348 ll #1734120355 cd cowu7657/ #1734120356 ll #1734176112 cd webdesobjets/ #1734176113 ll #1734176130 nano .htaccess #1734257677 ll #1734257774 cd .. #1734257775 ll #1734257784 cd apparthotel/ #1734257785 ll #1734257843 nano .htaccess #1734259708 ll #1734259711 cd .. #1734259716 cd adultsonly/ #1734259717 ll #1734259734 nano test.php #1734264308 ll #1734264312 rm test.php #1734264330 nano .htaccess #1734387260 cd .. #1734387263 cd villa-piscine/ #1734387264 ll #1734387273 nano .htaccess #1734387287 ll #1734387292 nano .htaccess #1734387296 exit #1734525458 ll #1734525466 cd amp #1734525469 cd ampoule-discount/ #1734525471 ll #1734525494 nano .htaccess #1734541692 exit #1777278698 tail -100 ~/public_html/error_log 2>/dev/null || echo "Pas de error_log dans public_html" #1777278748 find ~/public_html -name "error_log" -type f 2>/dev/null; find ~/logs -name "*climflow*" -type f 2>/dev/null #1777278766 zcat ~/logs/addon-climflow.fr.cowu7657.odns.fr-Apr-2026.gz 2>/dev/null | grep -i "500\|error\|PHP" | tail -50 #1777278791 cat ~/.cl.selector/php.conf 2>/dev/null; php -v 2>/dev/null | head -2 #1777278805 cd ~/public_html && php -r "define('ABSPATH', dirname(__FILE__).'/'); require_once 'wp-load.php';" 2>&1 | head -50 #1777278850 php -r "ini_set('display_errors', 1); error_reporting(E_ALL); require 'wp-config.php';" 2>&1 | head -30 #1777278870 grep -i "memory\|WP_MEMORY\|PHP_MEMORY" wp-config.php #1777278894 grep "DB_NAME\|DB_USER\|DB_PASSWORD\|DB_HOST" wp-config.php | head -10 #1777278915 mysql -u cowu7657_wp445 -p'p3S2E1-E(u' cowu7657_wp445 -e "SELECT option_name, LENGTH(option_value) as size FROM wp_options WHERE autoload='yes' ORDER BY size DESC LIMIT 20;" 2>/dev/null #1777278941 mysql --defaults-extra-file=<(echo -e "[client]\nuser=cowu7657_wp445\npassword=p3S2E1-E(u\ndatabase=cowu7657_wp445") -e "SELECT option_name, LENGTH(option_value) as size FROM wp_options WHERE autoload='yes' ORDER BY size DESC LIMIT 20;" 2>&1 #1777278959 echo "[client] user=cowu7657_wp445 password=p3S2E1-E(u database=cowu7657_wp445" > /tmp/my_creds.cnf && chmod 600 /tmp/my_creds.cnf && mariadb --defaults-extra-file=/tmp/my_creds.cnf -e "SELECT option_name, LENGTH(option_value) as size FROM wp_options WHERE autoload='yes' ORDER BY size DESC LIMIT 20;" 2>&1 #1777278979 grep "table_prefix" wp-config.php #1777278997 mariadb --defaults-extra-file=/tmp/my_creds.cnf -e "SELECT option_name, LENGTH(option_value) as size FROM wpj6_options WHERE autoload='yes' ORDER BY size DESC LIMIT 20;" 2>&1 #1777279031 mariadb --defaults-extra-file=/tmp/my_creds.cnf -e "SELECT COUNT(*), SUM(LENGTH(option_value)) as total_size FROM wpj6_options WHERE autoload='yes';" 2>&1; mariadb --defaults-extra-file=/tmp/my_creds.cnf -e "SHOW TABLES;" 2>&1 | head -30 #1777279058 mariadb --defaults-extra-file=/tmp/my_creds.cnf -e "SELECT COUNT(*) as nb, SUM(LENGTH(option_value)) as total_size FROM wpj6_options WHERE autoload='yes';" 2>&1 #1777279078 mariadb --defaults-extra-file=/tmp/my_creds.cnf -e "SELECT COUNT(*) as total_options FROM wpj6_options;" 2>&1; mariadb --defaults-extra-file=/tmp/my_creds.cnf -e "SELECT option_name, option_value FROM wpj6_options LIMIT 20;" 2>&1 #1777279112 mariadb --defaults-extra-file=/tmp/my_creds.cnf -e "SELECT COUNT(*) as total FROM wpj6_options; SELECT option_name, LENGTH(option_value) as sz FROM wpj6_options ORDER BY sz DESC LIMIT 10;" 2>&1 | head -30 #1777279147 mariadb --defaults-extra-file=/tmp/my_creds.cnf -e "SELECT autoload, COUNT(*), SUM(LENGTH(option_value)) as total_bytes FROM wpj6_options GROUP BY autoload;" 2>&1 #1777279178 mariadb --defaults-extra-file=/tmp/my_creds.cnf -e "SELECT COUNT(*) FROM wpj6_options WHERE option_name LIKE 'jpaq_%' AND autoload='on';" 2>&1; mariadb --defaults-extra-file=/tmp/my_creds.cnf -e "SELECT option_name FROM wpj6_options WHERE autoload='on' AND option_name NOT LIKE 'jpaq_%' LIMIT 5;" 2>&1 #1777279205 mariadb --defaults-extra-file=/tmp/my_creds.cnf -e "SELECT SUBSTRING_INDEX(option_name, '-', 1) as prefix, COUNT(*) as cnt FROM wpj6_options WHERE autoload='on' GROUP BY prefix ORDER BY cnt DESC LIMIT 20;" 2>&1 #1777279339 mariadb --defaults-extra-file=/tmp/my_creds.cnf -e "SELECT COUNT(*) FROM wpj6_options WHERE option_name LIKE 'jpsq_%';" 2>&1 #1777279366 mariadb --defaults-extra-file=/tmp/my_creds.cnf -e "SELECT option_name, LENGTH(option_value) as sz FROM wpj6_options WHERE autoload='on' ORDER BY sz DESC LIMIT 15;" 2>&1 #1777279401 mariadb --defaults-extra-file=/tmp/my_creds.cnf -e "SELECT COUNT(*) FROM wpj6_options WHERE autoload='on' AND option_name LIKE '_transient_%';" 2>&1 #1777279429 mariadb --defaults-extra-file=/tmp/my_creds.cnf -e "SELECT COUNT(*) FROM wpj6_options WHERE option_name LIKE '_transient_%' AND autoload='on';" 2>&1 #1777279458 echo "Sauvegarde en cours..." && mariadump --defaults-extra-file=/tmp/my_creds.cnf cowu7657_wp445 wpj6_options > ~/tmp/wpj6_options_backup_$(date +%Y%m%d_%H%M%S).sql 2>&1 && echo "Sauvegarde terminee!" || echo "Erreur sauvegarde" #1777279495 mysqldump -u cowu7657_wp445 -p'p3S2E1-E(u' cowu7657_wp445 wpj6_options > ~/tmp/wpj6_options_backup.sql 2>&1 && echo "OK" || echo "ERREUR" #1777279522 mariadb --defaults-extra-file=/tmp/my_creds.cnf -e "DELETE FROM wpj6_options WHERE option_name LIKE '_transient_%';" 2>&1 && echo "Transients supprimes!" #1777279583 mariadb --defaults-extra-file=/tmp/my_creds.cnf -e "SELECT COUNT(*), autoload FROM wpj6_options GROUP BY autoload;" 2>&1; mariadb --defaults-extra-file=/tmp/my_creds.cnf -e "OPTIMIZE TABLE wpj6_options;" 2>&1 #1777279609 rm /tmp/my_creds.cnf && echo "Nettoyage OK" #1778481820 cat ~/uverde.fr/wp-content/plugins/gcm-cookie-consent/includes/class-gcm-cc-frontend.php #1778481848 grep -n 'ajax_save_consent\|render_banner\|wp_send_json\|setcookie\|COOKIE\|nonce\|wp_verify_nonce\|check_ajax_referer\|consent_recorded\|wp_set_consent\|wp_has_consent' ~/uverde.fr/wp-content/plugins/gcm-cookie-consent/includes/class-gcm-cc-frontend.php #1778481880 sed -n '155,340p' ~/uverde.fr/wp-content/plugins/gcm-cookie-consent/includes/class-gcm-cc-frontend.php #1778481967 ls ~/uverde.fr/wp-content/plugins/gcm-cookie-consent/assets/js/ #1778482007 cat ~/uverde.fr/wp-content/plugins/gcm-cookie-consent/assets/js/banner.js #1778482066 grep -n 'updateGoogleConsent\|COOKIE_NAME\|ajaxUrl\|nonce\|wp_ajax\|action.*gcm\|showBanner\|hideBanner\|setTimeout\|DOMContentLoaded\|admin-ajax' ~/uverde.fr/wp-content/plugins/gcm-cookie-consent/assets/js/banner.js #1778482093 sed -n '1,50p' ~/uverde.fr/wp-content/plugins/gcm-cookie-consent/assets/js/banner.js #1778482137 grep -n 'gcmCCConfig\|wp_localize_script\|localize\|ajaxurl\|ajax_url\|admin_url' ~/uverde.fr/wp-content/plugins/gcm-cookie-consent/includes/class-gcm-cc-frontend.php #1778482169 sed -n '130,155p' ~/uverde.fr/wp-content/plugins/gcm-cookie-consent/includes/class-gcm-cc-frontend.php #1778482203 sed -n '313,335p' ~/uverde.fr/wp-content/plugins/gcm-cookie-consent/includes/class-gcm-cc-frontend.php #1778482238 grep -rn 'admin-ajax\|nopriv\|cache.*ajax\|ajax.*cache\|exclude\|bypass' ~/uverde.fr/wp-content/plugins/litespeed-cache/src/*.php | grep -i 'ajax\|consent\|gcm' | head -20 #1778482256 sed -n '115,215p' ~/uverde.fr/wp-content/plugins/gcm-cookie-consent/assets/js/banner.js #1778482303 sed -n '50,90p' ~/uverde.fr/wp-content/plugins/gcm-cookie-consent/assets/js/banner.js #1778486963 cat ~/uverde.fr/wp-content/plugins/gcm-cookie-consent/includes/class-gcm-cc-frontend.php | grep -A 30 'ajax_save_consent' #1778486974 grep -n 'setcookie\|wp_send_json\|ajax_save' ~/uverde.fr/wp-content/plugins/gcm-cookie-consent/includes/class-gcm-cc-frontend.php #1778486993 sed -n '313,400p' ~/uverde.fr/wp-content/plugins/gcm-cookie-consent/includes/class-gcm-cc-frontend.php #1778487086 grep -n 'getCookie\|DOMContentLoaded\|window.load\|updateGoogleConsent\|applyConsent\|cookie' ~/uverde.fr/wp-content/plugins/gcm-cookie-consent/assets/js/banner.js | head -50 #1778487098 sed -n '115,145p' ~/uverde.fr/wp-content/plugins/gcm-cookie-consent/assets/js/banner.js #1778487109 sed -n '185,220p' ~/uverde.fr/wp-content/plugins/gcm-cookie-consent/assets/js/banner.js #1778487123 sed -n '1,15p' ~/uverde.fr/wp-content/plugins/gcm-cookie-consent/assets/js/banner.js #1778487134 wc -l ~/uverde.fr/wp-content/plugins/gcm-cookie-consent/assets/js/banner.js && sed -n '60,100p' ~/uverde.fr/wp-content/plugins/gcm-cookie-consent/assets/js/banner.js #1778487148 sed -n '100,125p' ~/uverde.fr/wp-content/plugins/gcm-cookie-consent/assets/js/banner.js #1778487159 sed -n '150,185p' ~/uverde.fr/wp-content/plugins/gcm-cookie-consent/assets/js/banner.js #1778487171 grep -n 'DOMContentLoaded\|saved\|updateGoogleConsent\|init\|onload\|readyState' ~/uverde.fr/wp-content/plugins/gcm-cookie-consent/assets/js/banner.js #1778487184 sed -n '50,75p' ~/uverde.fr/wp-content/plugins/gcm-cookie-consent/assets/js/banner.js #1778487198 grep -n 'update\|consent_update\|cookie\|granted\|denied\|_COOKIE' ~/uverde.fr/wp-content/plugins/gcm-cookie-consent/includes/class-gcm-cc-tracking.php | head -40 #1778487216 grep -n 'update\|_COOKIE\|consent_update\|inline\|head\|wp_add_inline' ~/uverde.fr/wp-content/plugins/gcm-cookie-consent/includes/class-gcm-cc-frontend.php | head -30 #1778487230 grep -n 'inject_gcm_default\|inject_gtag\|function inject' ~/uverde.fr/wp-content/plugins/gcm-cookie-consent/includes/class-gcm-cc-frontend.php #1778487242 sed -n '33,78p' ~/uverde.fr/wp-content/plugins/gcm-cookie-consent/includes/class-gcm-cc-frontend.php #1778487254 sed -n '33,60p' ~/uverde.fr/wp-content/plugins/gcm-cookie-consent/includes/class-gcm-cc-frontend.php #1778487269 grep -n 'get_visitor_consent\|function get_visitor' ~/uverde.fr/wp-content/plugins/gcm-cookie-consent/includes/class-gcm-cc-frontend.php #1778487283 sed -n '407,435p' ~/uverde.fr/wp-content/plugins/gcm-cookie-consent/includes/class-gcm-cc-frontend.php #1778487337 curl -s 'https://www.uverde.fr/' | grep -A 20 'GCM Cookie Consent' #1778487351 curl -s 'https://www.uverde.fr/' | grep -A 15 'consent.*default' | head -40 #1778487392 curl -s 'https://www.uverde.fr/' | grep -n 'gtag.*consent\|GCM Cookie\|googlesitekit\|WooCommerce' | head -20 #1778487422 curl -s 'https://www.uverde.fr/' --cookie 'gcm_cc_consent=%7B%22ad_storage%22%3A%22granted%22%2C%22ad_user_data%22%3A%22granted%22%2C%22ad_personalization%22%3A%22granted%22%2C%22analytics_storage%22%3A%22granted%22%2C%22functionality_storage%22%3A%22granted%22%2C%22personalization_storage%22%3A%22granted%22%2C%22security_storage%22%3A%22granted%22%7D' | grep -A 10 'GCM Cookie Consent.*default' | head -20 #1778487448 curl -s 'https://www.uverde.fr/' --cookie 'gcm_cc_consent=%7B%22ad_storage%22%3A%22granted%22%2C%22analytics_storage%22%3A%22granted%22%7D' | grep -n 'ad_storage\|analytics_storage\|granted\|denied' | head -20 #1778487487 curl -s 'https://www.uverde.fr/' --cookie 'gcm_cc_consent=%7B%22ad_storage%22%3A%22granted%22%7D' | grep -c 'googlesitekit-consent-mode' #1778487605 curl -s 'https://www.uverde.fr/' | grep -c 'googlesitekit-consent-mode' && echo '---' && curl -s 'https://www.uverde.fr/' --cookie 'gcm_cc_consent=%7B%22ad_storage%22%3A%22granted%22%2C%22analytics_storage%22%3A%22granted%22%7D' | grep -n 'ad_storage\|analytics_storage' | head -10 #1778487632 curl -s 'https://www.uverde.fr/' --cookie 'gcm_cc_consent=%7B%22ad_storage%22%3A%22granted%22%2C%22analytics_storage%22%3A%22granted%22%2C%22ad_user_data%22%3A%22granted%22%2C%22ad_personalization%22%3A%22granted%22%7D' -H 'Cache-Control: no-cache' | grep -n 'gtag.*consent.*default' | head -10 #1778487651 curl -s 'https://www.uverde.fr/' --cookie 'gcm_cc_consent=%7B%22ad_storage%22%3A%22granted%22%2C%22analytics_storage%22%3A%22granted%22%2C%22ad_user_data%22%3A%22granted%22%2C%22ad_personalization%22%3A%22granted%22%7D' -H 'Cache-Control: no-cache' | sed -n '10,30p' #1779949081 zcat ~/logs/destinationprivee.cowu7657.odns.fr-May-2026.gz | grep '27/May/2026:23' | grep -v '" 4' | head -50 #1779949106 zcat ~/logs/destinationprivee.cowu7657.odns.fr-May-2026.gz | grep "27/May/2026:23:5" | grep "POST" | head -30 #1779949127 zcat ~/logs/destinationprivee.cowu7657.odns.fr-May-2026.gz | grep "27/May/2026:23" | grep "2.7.236.103" | head -40 #1779949143 zcat ~/logs/destinationprivee.cowu7657.odns.fr-May-2026.gz | grep "2.7.236.103" | awk '{print $4,$7,$9}' | sort #1779949161 zcat ~/logs/destinationprivee.cowu7657.odns.fr-May-2026.gz | grep "2.7.236.103" | grep "27/May" | awk '{print $4,$6,$7,$9}' | head -60 #1779949178 zcat ~/logs/destinationprivee.cowu7657.odns.fr-May-2026.gz | grep "2.7.236.103" | grep "27/May" | grep "23:5" | awk '{print $4,$6,$7,$9}' #1779949199 zcat ~/logs/destinationprivee.cowu7657.odns.fr-May-2026.gz | grep "2.7.236.103" | grep "wp-login" | awk '{print $4,$6,$7,$9}' | head -20 #1779949223 zcat ~/logs/destinationprivee.cowu7657.odns.fr-May-2026.gz | grep "27/May/2026:23:5" | grep "2.7.236.103" | grep -v "200\|302\|304" | awk '{print $4,$6,$7,$9}' #1779949239 zcat ~/logs/destinationprivee.cowu7657.odns.fr-May-2026.gz | grep "27/May/2026:23" | grep "2.7.236.103" | grep "upload\|file\|maint\|ajax" | awk '{print $4,$6,$7,$9}' #1779949257 zcat ~/logs/destinationprivee.cowu7657.odns.fr-May-2026.gz | grep "27/May/2026:23:5[4-7]" | grep "2.7.236.103" | awk '{print $4,$6,$7,$9}' #1779949280 cat ~/logs/ftp.cowu7657.odns.fr-ftp_log-Apr-2025.gz 2>/dev/null; zcat ~/logs/ftp.cowu7657.odns.fr-ftp_log-Apr-2025.gz 2>/dev/null | grep "27/May\|28/May" | tail -20 #1779949288 ls ~/logs/ftp* #1779953577 cd ~/destination-privee && wp plugin delete ga-google-analytics pricing-table-by-supsystic ultimate-maps-by-supsystic wp-external-links wp-scraper --allow-root 2>/dev/null || php wp-cli.phar plugin delete ga-google-analytics pricing-table-by-supsystic ultimate-maps-by-supsystic wp-external-links wp-scraper #1779953765 rm -rf ~/destination-privee/wp-content/plugins/ga-google-analytics ~/destination-privee/wp-content/plugins/pricing-table-by-supsystic ~/destination-privee/wp-content/plugins/ultimate-maps-by-supsystic ~/destination-privee/wp-content/plugins/wp-external-links ~/destination-privee/wp-content/plugins/wp-scraper ~/destination-privee/wp-content/plugins/remove-noreferrer && echo 'DONE' #1779953854 ls ~/destination-privee/wp-content/themes/ #1779953935 ls ~/destination-privee/wp-content/themes/astra/ #1779954031 cat > ~/destination-privee/wp-content/mu-plugins/external-links-nofollow.php << 'EOF' <?php /** * Plugin Name: External Links Nofollow Noreferrer * Description: Ajoute automatiquement rel="nofollow noreferrer noopener" et target="_blank" sur tous les liens externes. * Version: 1.0 * Author: Maxime Legrand */ add_filter('the_content', 'add_nofollow_to_external_links'); add_filter('the_excerpt', 'add_nofollow_to_external_links'); add_filter('widget_text', 'add_nofollow_to_external_links'); function add_nofollow_to_external_links($content) { $site_url = parse_url(get_bloginfo('url'), PHP_URL_HOST); $dom = new DOMDocument(); libxml_use_internal_errors(true); $dom->loadHTML(mb_convert_encoding($content, 'HTML-ENTITIES', 'UTF-8'), LIBXML_HTML_NOIMPLIED | LIBXML_HTML_NODEFDTD); libxml_clear_errors(); foreach ($dom->getElementsByTagName('a') as $link) { $href = $link->getAttribute('href'); if (empty($href) || strpos($href, '#') === 0 || strpos($href, 'mailto:') === 0 || strpos($href, 'tel:') === 0) continue; $link_host = parse_url($href, PHP_URL_HOST); if ($link_host && $link_host !== $site_url && strpos($link_host, '.' . $site_url) === false) { $link->setAttribute('rel', 'nofollow noreferrer noopener'); $link->setAttribute('target', '_blank'); } } return $dom->saveHTML(); } EOF #1779954032 echo 'MU-PLUGIN CREATED' #1779954128 mkdir -p ~/destination-privee/wp-content/mu-plugins && cat > ~/destination-privee/wp-content/mu-plugins/external-links-nofollow.php << 'PHPEOF' <?php /** * Plugin Name: External Links Nofollow Noreferrer * Description: Ajoute rel="nofollow noreferrer noopener" et target="_blank" sur tous les liens externes. * Version: 1.0 * Author: Maxime Legrand */ add_filter('the_content', 'dp_nofollow_external_links'); add_filter('the_excerpt', 'dp_nofollow_external_links'); add_filter('widget_text', 'dp_nofollow_external_links'); function dp_nofollow_external_links($content) { $site_host = parse_url(get_bloginfo('url'), PHP_URL_HOST); $dom = new DOMDocument(); libxml_use_internal_errors(true); $dom->loadHTML(mb_convert_encoding($content, 'HTML-ENTITIES', 'UTF-8'), LIBXML_HTML_NOIMPLIED | LIBXML_HTML_NODEFDTD); libxml_clear_errors(); foreach ($dom->getElementsByTagName('a') as $link) { $href = $link->getAttribute('href'); if (empty($href) || strpos($href, '#') === 0 || strpos($href, 'mailto:') === 0 || strpos($href, 'tel:') === 0) continue; $link_host = parse_url($href, PHP_URL_HOST); if ($link_host && $link_host !== $site_host) { $link->setAttribute('rel', 'nofollow noreferrer noopener'); $link->setAttribute('target', '_blank'); } } return $dom->saveHTML(); } PHPEOF #1779954129 echo 'OK' #1779954249 ls -la ~/destination-privee/wp-content/mu-plugins/ && cat ~/destination-privee/wp-content/mu-plugins/external-links-nofollow.php | head -5 #1779958011 rm -rf ~/destination-privee/wp-content/plugins/remove-noreferrer && echo 'OK' #1780328128 cd ~/adultsonly && wp plugin install litespeed-cache --activate #1780328219 wp plugin deactivate gutenberg atomic-blocks coblocks block-lab ultimate-blocks woocommerce woocommerce-legacy-rest-api wpbakery #1780332933 cd ~/adultsonly && wp --info 2>/dev/null | head -3 && echo 'WP-CLI OK' #1780332943 wp option get litespeed.conf --format=json 2>/dev/null | python3 -c "import sys,json; d=json.load(sys.stdin); print('cache-browser:', d.get('cache-browser','?'), 'cache-object:', d.get('cache-object','?'))" 2>/dev/null || echo 'option not found' #1780332986 wp option list --search='litespeed*' --fields=option_name 2>/dev/null #1780333023 grep -E 'DB_(NAME|USER|PASSWORD|HOST)' ~/adultsonly/wp-config.php | head -4 #1780333050 grep 'DB_PASSWORD' ~/adultsonly/wp-config.php #1780333071 python3 -c "import re; c=open('wp-config.php').read(); m=re.search(\"DB_PASSWORD.*?'(.*?)'\", c); print('PWD=['+m.group(1)+']') if m else print('not found')" #1780333088 php -r " \$c = require_once 'wp-config.php'; echo DB_PASSWORD; " 2>/dev/null || echo 'php error' #1780333133 cat > /home/cowu7657/adultsonly/lscfg.php << 'PHPEOF' <?php define('ABSPATH', dirname(__FILE__) . '/'); define('WPINC', 'wp-includes'); require_once ABSPATH . 'wp-config.php'; $link = mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME); if (!$link) { die('DB Error: ' . mysqli_connect_error()); } // Get current litespeed conf $r = mysqli_query($link, "SELECT option_value FROM wp_options WHERE option_name='litespeed.conf'"); $row = mysqli_fetch_row($r); $conf = $row ? unserialize($row[0]) : []; if (!is_array($conf)) $conf = []; // Apply optimizations $conf['cache-browser'] = true; $conf['cache-browser_ttl'] = 604800; $conf['optm-css_min'] = true; $conf['optm-js_min'] = true; $conf['optm-js_defer'] = true; $conf['optm-html_min'] = true; $conf['optm-qs_rm'] = true; $conf['img_optm-lossless'] = true; $conf['cache-priv'] = false; $conf['cache-exc_roles'] = []; $val = addslashes(serialize($conf)); $q = "INSERT INTO wp_options (option_name, option_value, autoload) VALUES ('litespeed.conf', '$val', 'yes') ON DUPLICATE KEY UPDATE option_value='$val'"; if (mysqli_query($link, $q)) { echo 'SUCCESS: LiteSpeed config updated!<br>'; echo 'cache-browser: ' . ($conf['cache-browser'] ? 'ON' : 'OFF') . '<br>'; echo 'optm-css_min: ' . ($conf['optm-css_min'] ? 'ON' : 'OFF') . '<br>'; echo 'optm-js_min: ' . ($conf['optm-js_min'] ? 'ON' : 'OFF') . '<br>'; echo 'optm-js_defer: ' . ($conf['optm-js_defer'] ? 'ON' : 'OFF') . '<br>'; } else { echo 'ERROR: ' . mysqli_error($link); } echo '<br><a href="/wp-admin/">Go to WP Admin</a>'; ?> PHPEOF #1780333134 echo 'Script created' #1780333166 ls -la ~/adultsonly/lscfg.php && wc -l ~/adultsonly/lscfg.php #1780333183 php ~/adultsonly/lscfg.php 2>&1 #1780333231 rm ~/adultsonly/lscfg.php && echo 'Script supprim' && wp cache flush --skip-plugins 2>/dev/null && echo 'Cache flushed' #1780333266 rm -rf ~/adultsonly/wp-content/cache/litespeed/* 2>/dev/null && rm -rf ~/lscache/* 2>/dev/null && echo 'Cache vid' #1780333328 curl -s -o /dev/null -w 'TTFB_ANON: %{time_starttransfer}s\nTotal: %{time_total}s\n' https://adultsonly.fr/ -H 'User-Agent: Mozilla/5.0' #1780333374 echo '=IP SERVEUR=' && hostname -I && echo '=HOSTS adultsonly=' && grep adultsonly /etc/hosts 2>/dev/null || echo 'not in hosts' #1780333396 echo '109.234.165.130 adultsonly.fr' >> /etc/hosts 2>&1 && echo 'hosts OK' || echo 'permission denied - need alternative' #1780333420 mkdir -p ~/adultsonly/wp-content/mu-plugins/ && cat > ~/adultsonly/wp-content/mu-plugins/fix-loopback.php << 'EOF' <?php /** * Fix WordPress loopback timeout on o2switch * Forces REST API and cron requests to use direct IP */ add_filter('http_request_args', function($args, $url) { if (strpos($url, 'adultsonly.fr') !== false || strpos($url, home_url()) !== false) { $args['timeout'] = 3; $args['sslverify'] = false; } return $args; }, 10, 2); // Bypass loopback check add_filter('pre_http_request', function($preempt, $args, $url) { if (strpos($url, site_url('/wp-json')) !== false || strpos($url, site_url('/wp-cron')) !== false) { $ip_url = str_replace(['https://adultsonly.fr', 'http://adultsonly.fr'], 'http://109.234.165.130', $url); if ($ip_url !== $url) { $args['headers']['Host'] = 'adultsonly.fr'; $args['sslverify'] = false; $args['timeout'] = 5; return wp_remote_request($ip_url, $args); } } return $preempt; }, 10, 3); EOF #1780333420 echo 'MU-Plugin created' #1780333439 curl -s -o /dev/null -w 'TTFB: %{time_starttransfer}s | Total: %{time_total}s\n' https://adultsonly.fr/ -H 'User-Agent: Mozilla/5.0' #1780333469 echo '=TEST 1 - Page cachee=' && curl -s -o /dev/null -w 'TTFB: %{time_starttransfer}s | Total: %{time_total}s\n' https://adultsonly.fr/ -H 'User-Agent: Mozilla/5.0' && echo '=TEST 2 - Page Portugal cachee=' && curl -s -o /dev/null -w 'TTFB: %{time_starttransfer}s | Total: %{time_total}s\n' 'https://adultsonly.fr/hotel-adult-only-portugal/' -H 'User-Agent: Mozilla/5.0' && echo '=TEST 3 - No cache header=' && curl -s -o /dev/null -w 'TTFB: %{time_starttransfer}s | Total: %{time_total}s\n' https://adultsonly.fr/ -H 'Cache-Control: no-cache' -H 'User-Agent: Mozilla/5.0' #1780333525 curl -s -o /dev/null -w 'Portugal cache warmup: %{time_total}s\n' 'https://adultsonly.fr/hotel-adult-only-portugal/' -H 'User-Agent: Mozilla/5.0' & #1780333525 curl -s -o /dev/null -w 'Espagne cache warmup: %{time_total}s\n' 'https://adultsonly.fr/hotel-adult-only-espagne/' -H 'User-Agent: Mozilla/5.0' & #1780333525 wait && echo 'warmup done' #1780333611 cat > ~/adultsonly/wp-content/mu-plugins/fix-loopback.php << 'EOF' <?php /** * Fix WordPress loopback/cron timeout on o2switch * Fast-fail any HTTP request back to our own domain */ // Reduce timeout for all outbound HTTP to our own site add_filter('http_request_args', function($args, $url) { if (strpos($url, 'adultsonly.fr') !== false) { $args['timeout'] = 2; // Fast-fail instead of 30s timeout $args['blocking'] = false; // Non-blocking for cron $args['sslverify'] = false; } return $args; }, 1, 2); // Also disable loopback checks that block admin pages add_filter('pre_http_request', function($preempt, $args, $url) { // Only intercept cron spawns (non-essential loopback calls) if (strpos($url, 'wp-cron.php') !== false && strpos($url, 'adultsonly.fr') !== false) { // Return success immediately - cron will run via ALTERNATE_WP_CRON return ['body' => '', 'response' => ['code' => 200], 'headers' => [], 'cookies' => []]; } return $preempt; }, 1, 3); EOF #1780333611 echo 'MU-Plugin v2 updated' #1780333631 rm -rf ~/adultsonly/wp-content/cache/litespeed/* && rm -rf ~/lscache/* 2>/dev/null; echo 'Cache vide - test non-cache:' && curl -s -o /dev/null -w 'Accueil: %{time_starttransfer}s\n' https://adultsonly.fr/ -H 'User-Agent: TestBot/1.0' #1780333680 wp plugin list --status=active --fields=name 2>/dev/null #1780333726 wp plugin deactivate affiliate-egg jc-importer wp-maintenance-mode 2>/dev/null && echo 'Plugins desactives' #1780333795 echo '=TEST SANS AFFILIATE-EGG=' && curl -s -o /dev/null -w 'TTFB: %{time_starttransfer}s | Total: %{time_total}s\n' https://adultsonly.fr/ -H 'User-Agent: Mozilla/5.0' #1780333848 grep -E 'CRON|DISABLE' ~/adultsonly/wp-config.php #1780333870 sed -i "s/define('ALTERNATE_WP_CRON', true)/define('DISABLE_WP_CRON', true)/" ~/adultsonly/wp-config.php && grep 'CRON' ~/adultsonly/wp-config.php #1780333897 rm -rf ~/adultsonly/wp-content/cache/litespeed/* 2>/dev/null; echo 'TEST DISABLE_WP_CRON:' && curl -s -o /dev/null -w 'TTFB: %{time_starttransfer}s | Total: %{time_total}s\n' https://adultsonly.fr/ -H 'User-Agent: Mozilla/5.0' #1780333930 (crontab -l 2>/dev/null; echo '*/5 * * * * /opt/alt/php83/usr/bin/php /home/cowu7657/adultsonly/wp-cron.php > /dev/null 2>&1') | crontab - && crontab -l | grep wp-cron && echo 'CRON SYSTEM CREE' #1780333954 echo '=== TESTS PERFORMANCE FINAUX ===' && echo 'Test 1 (accueil non-cache):' && curl -s -o /dev/null -w 'TTFB: %{time_starttransfer}s\n' https://adultsonly.fr/ -H 'User-Agent: Mozilla/5.0' && echo 'Test 2 (accueil cache):' && curl -s -o /dev/null -w 'TTFB: %{time_starttransfer}s\n' https://adultsonly.fr/ -H 'User-Agent: Mozilla/5.0' && echo 'Test 3 (Portugal):' && curl -s -o /dev/null -w 'TTFB: %{time_starttransfer}s\n' https://adultsonly.fr/hotel-adult-only-portugal/ -H 'User-Agent: Mozilla/5.0' && echo '===========================' #1780334002 curl -s -o /dev/null -w 'Portugal test 2 (cache):' https://adultsonly.fr/hotel-adult-only-portugal/ -H 'User-Agent: Mozilla/5.0' && curl -s -o /dev/null -w '%{time_starttransfer}s\n' https://adultsonly.fr/hotel-adult-only-portugal/ -H 'User-Agent: Mozilla/5.0' #1780334037 # Ajouter warmup cache dans crontab - toutes les heures #1780334037 (crontab -l 2>/dev/null; echo '0 * * * * curl -s https://adultsonly.fr/ > /dev/null 2>&1 && curl -s https://adultsonly.fr/hotel-adult-only-portugal/ > /dev/null 2>&1 && curl -s https://adultsonly.fr/hotel-adult-only-espagne/ > /dev/null 2>&1') | crontab - && crontab -l && echo 'WARMUP CRON CREE' #1780338616 echo '=== VERIFICATION FINALE ===' && echo '1. WP-Config:' && grep -E 'CRON|CACHE|MEMORY|ALTERNATE' ~/adultsonly/wp-config.php && echo '2. Plugins actifs:' && wp plugin list --status=active --fields=name 2>/dev/null && echo '3. MU-Plugins:' && ls ~/adultsonly/wp-content/mu-plugins/ && echo '4. Crontab:' && crontab -l && echo '5. TTFB test:' && curl -s -o /dev/null -w 'TTFB: %{time_starttransfer}s\n' https://adultsonly.fr/ -H 'User-Agent: Mozilla/5.0' #1780338779 echo '=== DIAGNOSTIC destination-privee.fr ===' && echo '1. TTFB:' && curl -s -o /dev/null -w 'TTFB: %{time_starttransfer}s | Total: %{time_total}s\n' https://destination-privee.fr/ -H 'User-Agent: Mozilla/5.0' #1780338817 echo '=== DIAG COMPLET destination-privee.fr ===' && WP=/home/cowu7657/destination-privee && echo '--- wp-config CRON/CACHE ---' && grep -E 'CRON|CACHE|MEMORY|ALTERNATE|DISABLE' $WP/wp-config.php 2>/dev/null || echo 'pas de config cron/cache' && echo '--- PHP version ---' && php -v 2>/dev/null | head -1 && echo '--- Plugins actifs ---' && wp --path=$WP plugin list --status=active --fields=name 2>/dev/null && echo '--- TTFB sans cache ---' && rm -rf $WP/wp-content/cache/litespeed/* 2>/dev/null; curl -s -o /dev/null -w 'TTFB_nocache: %{time_starttransfer}s\n' https://destination-privee.fr/ -H 'User-Agent: Mozilla/5.0' && echo '--- TTFB avec cache ---' && curl -s -o /dev/null -w 'TTFB_cache: %{time_starttransfer}s\n' https://destination-privee.fr/ -H 'User-Agent: Mozilla/5.0' #1780338865 WP=/home/cowu7657/destination-privee && echo '--- Scripts JS frontend ---' && curl -s https://destination-privee.fr/ | grep -oP 'src="[^"]+\.js[^"]*"' | wc -l && echo 'scripts JS' && echo '--- CSS frontend ---' && curl -s https://destination-privee.fr/ | grep -oP 'href="[^"]+\.css[^"]*"' | wc -l && echo 'CSS' && echo '--- MU-Plugins ---' && ls $WP/wp-content/mu-plugins/ 2>/dev/null || echo 'aucun' && echo '--- Commentaires spam en DB ---' && wp --path=$WP comment list --status=spam --format=count 2>/dev/null && echo 'spam' && wp --path=$WP comment list --status=trash --format=count 2>/dev/null && echo 'trash' && echo '--- DB autoload size ---' && wp --path=$WP db query "SELECT ROUND(SUM(LENGTH(option_value))/1024) as kb FROM wp_options WHERE autoload='yes'" 2>/dev/null #1780338902 WP=/home/cowu7657/destination-privee && echo '--- Scripts JS REELS (depuis HTML brut) ---' && curl -s https://destination-privee.fr/ | grep -oP '(?<=src=")[^"]+\.js[^"]*' | head -20 && echo '--- Taille page HTML ---' && curl -s https://destination-privee.fr/ | wc -c && echo 'octets' && echo '--- Scripts suspects loopback ---' && curl -s https://destination-privee.fr/ | grep -oiE '(mn-tz|suspicious|analytics|tracking)' | head -5 && echo '--- LiteSpeed Cache config ---' && wp --path=$WP option get litespeed.conf --format=json 2>/dev/null | python3 -c "import sys,json; d=json.loads(sys.stdin.read()); [print(k+':',v) for k,v in d.items() if any(x in k for x in ['browser','optm-css','optm-js','cache-browser'])]" 2>/dev/null #1780338938 cat > /home/cowu7657/destination-privee/lscfg.php << 'PHPEOF' <?php define('ABSPATH', dirname(__FILE__) . '/'); require_once ABSPATH . 'wp-config.php'; $link = mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME); if (!$link) { die('DB Error: ' . mysqli_connect_error()); } $r = mysqli_query($link, "SELECT option_value FROM wp_options WHERE option_name='litespeed.conf'"); $row = mysqli_fetch_row($r); $conf = $row ? unserialize($row[0]) : []; if (!is_array($conf)) $conf = []; $conf['cache-browser'] = true; $conf['cache-browser_ttl'] = 604800; $conf['optm-css_min'] = true; $conf['optm-js_min'] = true; $conf['optm-js_defer'] = true; $conf['optm-html_min'] = true; $val = addslashes(serialize($conf)); $q = "INSERT INTO wp_options (option_name,option_value,autoload) VALUES ('litespeed.conf','$val','yes') ON DUPLICATE KEY UPDATE option_value='$val'"; if (mysqli_query($link, $q)) { echo 'SUCCESS: LiteSpeed config updated!<br>'; echo 'cache-browser: ON<br>optm-css_min: ON<br>optm-js_min: ON<br>optm-js_defer: ON<br>'; } else { echo 'ERROR: '.mysqli_error($link); } ?> PHPEOF #1780338939 echo 'Script created' && php /home/cowu7657/destination-privee/lscfg.php 2>&1 #1780338975 WP=/home/cowu7657/destination-privee #1780338975 # 1. Supprimer le script #1780338975 rm /home/cowu7657/destination-privee/lscfg.php && echo 'Script supprime' #1780338975 # 2. Copier le MU-plugin fix-loopback #1780338975 cp ~/adultsonly/wp-content/mu-plugins/fix-loopback.php $WP/wp-content/mu-plugins/ && echo 'MU-plugin copie' #1780338975 # 3. Ajouter cron systeme pour wp-cron #1780338975 (crontab -l 2>/dev/null; echo '*/5 * * * * /opt/alt/php83/usr/bin/php /home/cowu7657/destination-privee/wp-cron.php > /dev/null 2>&1') | crontab - && echo 'Cron systeme ajoute' #1780338977 # 4. Purger commentaires spam #1780338977 wp --path=$WP comment delete $(wp --path=$WP comment list --status=spam --format=ids 2>/dev/null) --force 2>/dev/null && echo 'Spam purge' #1780338979 # 5. Vider le cache #1780338979 rm -rf $WP/wp-content/cache/litespeed/* 2>/dev/null && echo 'Cache vide' #1780339016 echo '=== TESTS FINAUX destination-privee.fr ===' && echo 'Test 1 (sans cache):' && curl -s -o /dev/null -w 'TTFB: %{time_starttransfer}s | Total: %{time_total}s\n' https://destination-privee.fr/ -H 'User-Agent: Mozilla/5.0' && echo 'Test 2 (avec cache):' && curl -s -o /dev/null -w 'TTFB: %{time_starttransfer}s | Total: %{time_total}s\n' https://destination-privee.fr/ -H 'User-Agent: Mozilla/5.0' #1780382587 cat ~/destination-privee/wp-content/plugins/gcm-cookie-consent/includes/class-gcm-cc-frontend.php #1780382670 grep -n 'ajax_save_consent\|render_banner\|gcm_cc_consent\|no-cache\|Cache-Control\|litespeed\|DONOTCACHE\|show_banner\|nocache\|banner_shown\|expires\|setcookie\|cookie_options' ~/destination-privee/wp-content/plugins/gcm-cookie-consent/includes/class-gcm-cc-frontend.php #1780382948 sed -n '313,419p' ~/destination-privee/wp-content/plugins/gcm-cookie-consent/includes/class-gcm-cc-frontend.php #1780383106 cat ~/destination-privee/wp-content/plugins/gcm-cookie-consent/includes/class-gcm-cc-frontend.php > ~/destination-privee/tmp_debug.txt && echo ok #1780383203 cat ~/destination-privee/wp-content/plugins/gcm-cookie-consent/includes/class-gcm-cc-frontend.php ~/destination-privee/wp-content/plugins/gcm-cookie-consent/assets/js/*.js > ~/destination-privee/public_html/debug_gcm.txt 2>&1 && echo done #1780383357 ls ~/destination-privee/ #1780383416 ls ~/destination-privee/wp-content/plugins/gcm-cookie-consent/assets/js/ #1780383427 cat ~/destination-privee/wp-content/plugins/gcm-cookie-consent/includes/class-gcm-cc-frontend.php ~/destination-privee/wp-content/plugins/gcm-cookie-consent/assets/js/*.js > ~/destination-privee/debug_gcm.txt 2>&1 && echo done #1780383442 wc -l ~/destination-privee/debug_gcm.txt #1780383584 sed -n '1,50p' ~/destination-privee/debug_gcm.txt #1780383606 sed -n '155,295p' ~/destination-privee/wp-content/plugins/gcm-cookie-consent/includes/class-gcm-cc-frontend.php | head -50 #1780383634 sed -n '155,175p' ~/destination-privee/wp-content/plugins/gcm-cookie-consent/includes/class-gcm-cc-frontend.php #1780383638 sed -n '155,180p' ~/destination-privee/debug_gcm.txt #1780383669 sed -n '313,419p' ~/destination-privee/debug_gcm.txt #1780383673 sed -n '313,406p' ~/destination-privee/wp-content/plugins/gcm-cookie-consent/includes/class-gcm-cc-frontend.php | head -60 #1780383697 sed -n '419,470p' ~/destination-privee/debug_gcm.txt #1780383775 sed -n '470,629p' ~/destination-privee/debug_gcm.txt #1780383792 grep -r 'DONOTCACHE\|no-cache\|litespeed\|exclude.*cookie\|gcm_cc' ~/destination-privee/wp-content/plugins/gcm-cookie-consent/ 2>/dev/null | grep -v '.php~' #1780383797 sed -n '420,475p' ~/destination-privee/debug_gcm.txt #1780383823 sed -n '415,420p' ~/destination-privee/debug_gcm.txt #1780383854 rm ~/destination-privee/debug_gcm.txt ~/destination-privee/tmp_debug.txt && echo cleaned #1780384172 rm ~/destination-privee/debug_gcm.txt ~/destination-privee/tmp_debug.txt 2>/dev/null; echo cleaned #1780401662 cp ~/destination-privee/wp-content/plugins/gcm-cookie-consent/assets/js/banner.js ~/destination-privee/wp-content/plugins/gcm-cookie-consent/assets/js/banner.js.bak && echo backup_ok #1780401794 ls -la ~/destination-privee/wp-content/plugins/gcm-cookie-consent/assets/js/ #1780401822 python3 -c " import re f='~/destination-privee/wp-content/plugins/gcm-cookie-consent/assets/js/banner.js' import os; f=os.path.expanduser(f) content=open(f).read() patch='''\n// Anti-flash cache : masque immediatement le bandeau si consentement deja donne\nif (getCookie(COOKIE_NAME) && banner && !banner.classList.contains('gcm-cc-hidden')) {\n banner.classList.add('gcm-cc-hidden');\n}\n''' content=content.replace(target, target+patch, 1) open(f,'w').write(content) print('ok') " #1780401965 cat > /tmp/patch_banner.py << 'PYEOF' f = '/home/cowu7657/destination-privee/wp-content/plugins/gcm-cookie-consent/assets/js/banner.js' content = open(f).read() target = 'if (!banner) return;' patch = target + """ // Anti-flash cache : masque immediatement si consentement deja donne if (getCookie(COOKIE_NAME) && banner && !banner.classList.contains('gcm-cc-hidden')) { banner.classList.add('gcm-cc-hidden'); } """ content = content.replace(target, patch, 1) open(f, 'w').write(content) print('patch_ok') PYEOF #1780402059 python3 /tmp/patch_banner.py #1780402197 python3 /tmp/patch_banner.py && grep -c 'Anti-flash' ~/destination-privee/wp-content/plugins/gcm-cookie-consent/assets/js/banner.js #1780402345 cp ~/destination-privee/wp-content/plugins/gcm-cookie-consent/assets/js/banner.js.bak ~/destination-privee/wp-content/plugins/gcm-cookie-consent/assets/js/banner.js && python3 /tmp/patch_banner.py #1780402654 cd ~/destination-privee && wp litespeed-purge all --allow-root 2>/dev/null || wp cache flush --allow-root #1780408323 grep -r 'gtag\|GA_MEASUREMENT\|google-site-kit\|sitekit\|analytics\|Google_Tag' ~/destination-privee/wp-content/plugins/gcm-cookie-consent/ 2>/dev/null | grep -v '.bak' | grep -v Binary | head -30 #1780408416 grep -n 'gtag\|GA-\|AW-\|G-\|googletagmanager\|google-analytics\|measurement_id\|tag_id\|inject_gtag' ~/destination-privee/wp-content/plugins/gcm-cookie-consent/includes/class-gcm-cc-frontend.php #1781617038 grep -rliE "googlebot|crawler|HTTP_USER_AGENT" /home/cowu7657/destination-privee --include="*.php" 2>/dev/null | head -50 #1781617056 grep -rliE "eval\(|base64_decode|gzinflate|str_rot13|gzuncompress|\\\$_REQUEST|file_get_contents\(['\"]http|curl_exec" /home/cowu7657/destination-privee --include="*.php" 2>/dev/null | grep -viE "litespeed-cache|/elementor|/astra|/wordpress-seo|/spectra|/ultimate" | head -60 #1781617115 find /home/cowu7657/destination-privee -name "*.php" -newermt "2026-05-24" ! -path "*/litespeed-cache/*" ! -path "*/cache/*" -printf "%TY-%Tm-%Td %TH:%TM %s %p\n" 2>/dev/null | sort | grep -vE "/(elementor|elementor-pro|astra-addon|spectra|stackable|ultimate-blocks|ultimate-addons|wordpress-seo|google-site-kit|button-generation|data-tables|duplicate-page|custom-post-type|olympus-google-fonts|wp-consent-api|wp-maintenance|post-type-switcher|page-list-widget|dk-pricr|ads-txt)/" | tail -60 #1781617166 cd /home/cowu7657/destination-privee && wp post list --post_type=any --format=count 2>&1 | head; echo "---TYPES---"; wp post-type list --fields=name,count 2>&1 | head -40 #1781617233 grep -rlnE "add_rewrite_rule|parse_request|template_redirect|'init'" /home/cowu7657/destination-privee/wp-content --include="*.php" 2>/dev/null | xargs grep -lE "items|user_agent|HTTP_USER_AGENT|404" 2>/dev/null | grep -viE "litespeed|elementor|astra|yoast|wordpress-seo|spectra|stackable|ultimate|google-site-kit" | head -40 #1781617253 wc -l /home/cowu7657/destination-privee/wp-content/plugins/ads-txt/inc/helpers.php; echo "=== HEAD ==="; head -80 /home/cowu7657/destination-privee/wp-content/plugins/ads-txt/inc/helpers.php #1781617325 wp core verify-checksums 2>&1 | tail -20 #1781617372 for f in wp-admin/maint/optinmonster.php wp-includes/assets/script-loader-packages-part.php wp-admin/.pid; do echo "=== $f ==="; ls -la "$f" 2>/dev/null; wc -lc "$f" 2>/dev/null; grep -oiE "eval|base64_decode|gzinflate|str_rot13|gzuncompress|assert|create_function|preg_replace.*/e|HTTP_USER_AGENT|googlebot|file_get_contents|curl_|\\\$_(GET|POST|REQUEST|COOKIE)|str_replace|chr\(" "$f" 2>/dev/null | sort | uniq -c; done #1781617437 echo "=== refs to backdoors in core/plugins ==="; grep -rn "script-loader-packages-part\|wp-admin/maint/optinmonster\|maint/optinmonster" /home/cowu7657/destination-privee --include="*.php" 2>/dev/null | grep -v "Binary"; echo "=== tail wp-settings.php ==="; tail -15 /home/cowu7657/destination-privee/wp-settings.php #1781617516 echo "=== index.php ==="; grep -nE "include|require|eval|base64|assert|\\\$GLOBALS|chr\(|gzunc|optinmonster|script-loader|maint" /home/cowu7657/destination-privee/index.php; echo "=== wp-settings.php suspicious ==="; grep -nE "eval|base64|assert|gzunc|gzinf|str_rot13|create_function|optinmonster|script-loader-packages|maint/|\\\$GLOBALS\[" /home/cowu7657/destination-privee/wp-settings.php #1781617565 echo "=== .user.ini ==="; find /home/cowu7657/destination-privee -name ".user.ini" -exec cat {} \; 2>/dev/null; echo "=== auto_prepend anywhere ==="; grep -rn "auto_prepend\|auto_append" /home/cowu7657/destination-privee 2>/dev/null | grep -v Binary | head; echo "=== files including the assets backdoor (any form) ==="; grep -rln "assets/script-loader-packages-part\|packages-part" /home/cowu7657/destination-privee --include="*.php" 2>/dev/null; echo "=== who references optinmonster maint ==="; grep -rln "maint.\{0,3\}optinmonster\|optinmonster" /home/cowu7657/destination-privee --include="*.php" 2>/dev/null | head #1781617619 echo "=== Scan TOUT le compte : fichiers PHP avec eval+dcodage obfusqu ==="; grep -rlZ --include="*.php" -E "eval\(|assert\(" /home/cowu7657 2>/dev/null | xargs -0 grep -lE "base64_decode|gzinflate|gzuncompress|str_rot13" 2>/dev/null | xargs -I{} stat -c "%y %s %n" {} 2>/dev/null | sort | grep -viE "/(elementor|astra|spectra|stackable|ultimate|wordpress-seo|litespeed|google-site-kit|akismet|woocommerce|jetpack)/" | head -40 #1781674241 cd /home/cowu7657/destination-privee && ls -la wp-includes/assets/script-loader-packages-part.php wp-admin/maint/optinmonster.php wp-admin/.pid wp-content/mu-plugins/fix-loopback.php #1781674293 cd /home/cowu7657/destination-privee && mv wp-includes/assets/script-loader-packages-part.php wp-includes/assets/script-loader-packages-part.php.malware_quarantine; mv wp-admin/maint/optinmonster.php wp-admin/maint/optinmonster.php.malware_quarantine; mv wp-admin/.pid wp-admin/.pid.malware_quarantine; mv wp-content/mu-plugins/fix-loopback.php wp-content/mu-plugins/fix-loopback.php.malware_quarantine; echo "QUARANTINE_DONE_OK" #1781674306 ls -la wp-includes/assets/script-loader-packages-part.php* wp-admin/maint/optinmonster.php* wp-admin/.pid* wp-content/mu-plugins/fix-loopback.php* 2>&1 #1781674364 wp core download --force --skip-content 2>&1 | tail -5 #1781674383 wp core verify-checksums 2>&1 | tail -15 #1781674440 echo "=== maint/.htaccess ==="; cat wp-admin/maint/.htaccess 2>&1; echo "=== size ==="; wc -c wp-admin/maint/.htaccess 2>&1 #1781674499 mv wp-admin/maint/.htaccess wp-admin/maint/.htaccess.malware_quarantine && echo "HTACCESS_QUARANTINED"; echo "=== Searching account for backdoor filenames ==="; find /home/cowu7657 -type f \( -name "aaa.php" -o -name "bbb.php" -o -name "ccc.php" -o -name "ddd.php" -o -name "1515.php" -o -name "1bymm.php" -o -name "wp-22.php" -o -name "hm.php" -o -name "autoload_classmap.php" \) 2>/dev/null #1781674579 echo '=== SUSPICIOUS BACKDOOR FILES (excluding legit autoload) ==='; find /home/cowu7657 -type f \( -name 'aaa.php' -o -name 'bbb.php' -o -name 'ccc.php' -o -name 'ddd.php' -o -name '1515.php' -o -name '1bymm.php' -o -name 'wp-22.php' -o -name 'hm.php' \) 2>/dev/null; echo '=== END ===' #1781674633 ls -la wp-admin/maint/ 2>&1 | head; echo '=== purge litespeed cache ==='; wp litespeed-purge all 2>&1 | tail -5 #1781674692 echo '=== repair.php HEAD ==='; head -50 wp-admin/maint/repair.php 2>&1; echo '=== KEYWORDS ==='; grep -oiE 'eval|base64_decode|gzuncompress|assert|str_rot13|system|exec|passthru|file_put_contents|\$_(POST|GET|REQUEST|COOKIE)' wp-admin/maint/repair.php 2>&1 | sort | uniq -c #1781674942 echo '=== same-named loader on OTHER sites ==='; find /home/cowu7657 -type f -name 'script-loader-packages-part.php' 2>/dev/null; echo '=== rogue optinmonster outside wp-admin ==='; find /home/cowu7657 -type f -name 'optinmonster.php' 2>/dev/null; echo '=== .pid markers ==='; find /home/cowu7657 -type f -name '.pid' 2>/dev/null; echo '=== END ===' #1781675002 echo '=== malicious htaccess whitelist pattern across account ==='; grep -rl '1bymm.php\|wp-22.php\|autoload_classmap.php|style.php' /home/cowu7657 --include='.htaccess' 2>/dev/null; echo '=== htaccess with named php whitelist ==='; grep -rlE 'FilesMatch.*1515\.php|FilesMatch.*1bymm' /home/cowu7657 2>/dev/null; echo '=== END ===' #1782228056 cd /home/cowu7657/destination-privee && echo '=== 1. fichiers malveillants actifs (doit etre vide) ==='; ls -la wp-includes/assets/script-loader-packages-part.php wp-admin/maint/optinmonster.php wp-admin/.pid wp-content/mu-plugins/fix-loopback.php wp-admin/maint/.htaccess 2>&1; echo '=== 2. quarantaine en place ==='; ls -la wp-includes/assets/*.malware_quarantine wp-admin/maint/*.malware_quarantine wp-admin/.pid.malware_quarantine wp-content/mu-plugins/*.malware_quarantine 2>&1 #1782228071 echo '=== 3. PHP crees/modifies <24h (hors quarantaine et hors cache) ==='; find . -type f -name '*.php' -mtime -1 ! -path '*/cache/*' ! -name '*.malware_quarantine' 2>/dev/null; echo '=== 4. verify core ==='; wp core verify-checksums 2>&1 | grep -iE 'verifies|does not match|Warning.*checksum' | head; echo '=== FIN ===' #1782228877 cd /home/cowu7657/destination-privee && tar -czf ~/malware_destination-privee_$(date +%Y%m%d).tar.gz wp-includes/assets/script-loader-packages-part.php.malware_quarantine wp-admin/maint/optinmonster.php.malware_quarantine wp-admin/.pid.malware_quarantine wp-content/mu-plugins/fix-loopback.php.malware_quarantine wp-admin/maint/.htaccess.malware_quarantine 2>&1 && echo 'ARCHIVE_OK' && ls -la ~/malware_destination-privee_*.tar.gz #1782228891 rm -f wp-includes/assets/script-loader-packages-part.php.malware_quarantine wp-admin/maint/optinmonster.php.malware_quarantine wp-admin/.pid.malware_quarantine wp-content/mu-plugins/fix-loopback.php.malware_quarantine wp-admin/maint/.htaccess.malware_quarantine && echo 'SUPPRESSION_OK'; echo '=== reste-t-il des quarantaines ? (doit etre vide) ==='; find . -name '*.malware_quarantine' 2>/dev/null; echo '=== FIN ===' #1782228910 cd /home/cowu7657/adultsonly && echo '=== est-ce WordPress ? ==='; ls -d wp-admin wp-includes wp-content 2>&1; echo '=== fichiers malveillants connus ==='; ls -la wp-includes/assets/script-loader-packages-part.php wp-admin/maint/optinmonster.php wp-admin/.pid wp-admin/maint/.htaccess 2>&1; echo '=== mu-plugins ==='; ls -la wp-content/mu-plugins/ 2>&1 #1782228926 echo '=== verify core ==='; wp core verify-checksums 2>&1 | grep -iE 'should not exist|does not match|verifies' | grep -viE 'error_log|\.htaccess$' | head -40; echo '=== FIN VERIFY ===' #1782228944 for f in wp-includes/Requests/Response-autosaves.php wp-includes/SimplePie/src/Core.php; do echo "===== $f ====="; stat -c '%s octets, modifie %y' "$f" 2>&1; echo '--- signatures ---'; grep -oiE 'eval|base64_decode|gzuncompress|gzinflate|str_rot13|assert|create_function|system|exec|passthru|preg_replace.*\/e|\$_(POST|GET|REQUEST|COOKIE|SERVER)' "$f" 2>/dev/null | sort | uniq -c; echo '--- 3 premieres lignes ---'; head -3 "$f" 2>&1 | cut -c1-150; done #1782228964 echo '=== Core.php complet ==='; cat wp-includes/SimplePie/src/Core.php 2>&1 | head -40; echo '=== FIN Core.php ===' #1782228983 clear; echo 'lignes:'; wc -l wp-includes/SimplePie/src/Core.php; echo 'classe/fonction declarees:'; grep -nE 'class |function |namespace ' wp-includes/SimplePie/src/Core.php | head -20 #1782229006 echo MARQUEUR_VISIBLE_123 #1782229038 cd /home/cowu7657/adultsonly; awk 'NR<=15{printf "%d: %.120s\n", NR, $0}' wp-includes/SimplePie/src/Core.php #1782229072 cd /home/cowu7657/adultsonly; echo -n 'non_imprimables: '; grep -c '[^[:print:][:space:]]' wp-includes/SimplePie/src/Core.php; echo -n 'tags_suspects: '; grep -acE 'eval|base64|gzinflate|gzuncompress|assert|str_rot13' wp-includes/SimplePie/src/Core.php; echo -n 'md5: '; md5sum wp-includes/SimplePie/src/Core.php #1782229094 echo '=== PHP obfusques (assert/eval/gz/base64 sur une meme ligne) ==='; grep -rlE '(eval|assert)\s*\(.*(base64_decode|gzinflate|gzuncompress|str_rot13)' wp-admin wp-includes wp-content 2>/dev/null | grep -v node_modules; echo '=== .htaccess pirate (whitelist php) ==='; grep -rlE 'FilesMatch.*\.php.*Allow|1bymm|1515\.php|wp-22\.php' wp-admin wp-includes wp-content 2>/dev/null; echo '=== FIN ===' #1782229172 echo '=== fix-loopback.php identique au 1er site ? ==='; md5sum wp-content/mu-plugins/fix-loopback.php; echo '=== autres mu-plugins ==='; ls -la wp-content/mu-plugins/; echo '=== PHP suspects dans uploads (ne devrait JAMAIS y avoir de php) ==='; find wp-content/uploads -name '*.php' 2>/dev/null | head; echo '=== FIN ===' #1782229402 cd /home/cowu7657/adultsonly && tar -czf ~/malware_adultsonly_$(date +%Y%m%d).tar.gz wp-includes/Requests/Response-autosaves.php wp-content/mu-plugins/fix-loopback.php 2>&1 && echo 'ARCHIVE_OK' && mv wp-includes/Requests/Response-autosaves.php wp-includes/Requests/Response-autosaves.php.malware_quarantine && mv wp-content/mu-plugins/fix-loopback.php wp-content/mu-plugins/fix-loopback.php.malware_quarantine && echo 'QUARANTINE_OK' #1782229413 wp core download --force --skip-content 2>&1 | tail -3; echo '=== verify ==='; wp core verify-checksums 2>&1 | grep -iE 'does not match|verifies' | head; echo '=== FIN ===' #1782229471 cd /home/cowu7657/adultsonly; echo -n 'verify_ok: '; wp core verify-checksums 2>&1 | grep -ic 'verifies'; echo -n 'malware_actif: '; ls wp-includes/Requests/Response-autosaves.php wp-content/mu-plugins/fix-loopback.php 2>&1 | grep -c 'No such'; echo 'quarantaine:'; ls wp-includes/Requests/*.malware_quarantine wp-content/mu-plugins/*.malware_quarantine 2>&1 #1782229489 echo '=== does not match (= core ALTERE, grave) ==='; wp core verify-checksums 2>&1 | grep -i 'does not match'; echo '=== should not exist (hors quarantaine/error_log/Core.php) ==='; wp core verify-checksums 2>&1 | grep -i 'should not exist' | grep -viE 'malware_quarantine|error_log|SimplePie/src/Core.php'; echo '=== FIN ===' #1782229525 echo '=== .php parmi les should-not-exist, avec signatures malveillantes ==='; for f in $(wp core verify-checksums 2>&1 | grep -i 'should not exist' | grep -oE '[^ ]+\.php$'); do if grep -lqE 'eval|base64_decode|gzinflate|assert|system\(|str_rot13' "$f" 2>/dev/null; then echo "SUSPECT: $f"; fi; done; echo '=== (vide = OK) ==='; echo '=== purge cache ==='; wp litespeed-purge all 2>&1 | tail -2; wp cache flush 2>&1 | tail -1; echo '=== FIN ===' #1782229544 echo '=== ligne 1750-1758 de script-loader.php ==='; sed -n '1750,1758p' wp-includes/script-loader.php; echo '=== md5 (compare au core) ==='; md5sum wp-includes/script-loader.php; echo '=== ce fichier fait-il partie du core verifie ? ==='; wp core verify-checksums 2>&1 | grep 'script-loader.php'; echo '=== FIN ===' #1782229565 echo -n 'version DB: '; wp core version 2>&1; echo -n 'la fonction existe-t-elle ? '; grep -rl 'function wp_get_view_transitions_admin_css' wp-includes/ 2>/dev/null | head -1; echo '(si vide = fonction manquante = incoherence de version)'; echo '=== FIN ===' #1782229595 echo '=== erreur PHP detaillee (eval-file pour voir le fatal) ==='; php -d display_errors=1 -r 'define("ABSPATH", "/home/cowu7657/adultsonly/"); require "/home/cowu7657/adultsonly/wp-load.php"; echo "LOADED_OK";' 2>&1 | tail -8; echo '=== FIN ===' #1782229630 cd /home/cowu7657/adultsonly; echo '=== debug.log (6 dernieres lignes) ==='; tail -6 wp-content/debug.log 2>&1 | cut -c1-190; echo '=== FIN ===' #1782229646 echo '=== logs erreurs recents ==='; ls -t error_log wp-content/error_log ~/logs/*.log 2>/dev/null | head; echo '--- contenu ---'; tail -4 error_log 2>/dev/null | cut -c1-190; tail -4 wp-content/error_log 2>/dev/null | cut -c1-190; echo '=== FIN ===' #1782229681 echo '=== message fatal complet ==='; grep -a 'Fatal error' error_log | tail -1 | cut -c1-250; echo '---'; tail -20 error_log | grep -a -iE 'fatal|undefined|call to|on line 1754' | head -3 | cut -c1-250; echo '=== FIN ===' #1782229726 cd /home/cowu7657/adultsonly; grep -a 'Fatal error' error_log | tail -1 | grep -oiE 'Call to undefined function [a-z_]+|Cannot redeclare [a-z_]+|Uncaught Error: [^ ]+ [a-z_]+' #1782229782 grep -a 'Fatal error' error_log | tail -1 | grep -oiE 'Call to undefined function [A-Za-z0-9_\\]+\(\)' #1782229866 echo -n 'view-transitions charge dans wp-settings ? '; grep -c 'view-transitions' wp-settings.php; echo -n 'version dans version.php: '; grep "wp_version =" wp-includes/version.php; echo -n 'script-loader.php est-il en v7.0 (cherche la fonction appelee) ? '; grep -c 'wp_get_view_transitions_admin_css' wp-includes/script-loader.php #1782229923 wp core download --force --version=7.0 2>&1 | tail -3; echo -n 'view-transitions charge maintenant ? '; grep -c 'view-transitions' wp-settings.php #1782230029 echo -n 'load.php existe et taille: '; stat -c '%s octets' wp-includes/load.php 2>&1; echo -n 'verify core (verifies=1 si ok): '; wp core verify-checksums 2>&1 | grep -c 'Success: WordPress installation verifies'; echo -n 'does not match restants: '; wp core verify-checksums 2>&1 | grep -c 'does not match'; echo '=== FIN ===' #1786433434 find /home/cowu7657/villa-piscine/wp-includes /home/cowu7657/villa-piscine/wp-content /home/cowu7657/villa-piscine/wp-admin -type f -size 0 | wc -l #1786433494 find /home/cowu7657/villa-piscine/wp-includes /home/cowu7657/villa-piscine/wp-admin -type f -size 0 #1786433520 diff <(cd /home/cowu7657/webdesobjets/wp-includes && find . -type f | sort) <(cd /home/cowu7657/villa-piscine/wp-includes && find . -type f | sort) | grep '^<' | wc -l #1786433574 cd /home/cowu7657/webdesobjets/wp-includes && find . -type f | sort > /tmp/a.txt; cd /home/cowu7657/villa-piscine/wp-includes && find . -type f | sort > /tmp/b.txt; diff /tmp/a.txt /tmp/b.txt | grep '^<' > /tmp/missing.txt; wc -l /tmp/missing.txt #1786433615 grep wp_version /home/cowu7657/webdesobjets/wp-includes/version.php; grep wp_version /home/cowu7657/villa-piscine/wp-includes/version.php #1786433669 cd /tmp && wget -q https://wordpress.org/wordpress-6.9.4.tar.gz && tar xzf wordpress-6.9.4.tar.gz && ls wordpress #1786433732 cd /tmp/wordpress/wp-includes && find . -type f | sort > /tmp/official_includes.txt; cd /home/cowu7657/villa-piscine/wp-includes && find . -type f | sort > /tmp/villa_includes.txt; diff /tmp/official_includes.txt /tmp/villa_includes.txt | grep '^<' | sed 's/^< //' > /tmp/missing_includes.txt; wc -l /tmp/missing_includes.txt #1786433782 cat /tmp/missing_includes.txt #1786433843 while read f; do mkdir -p "/home/cowu7657/villa-piscine/wp-includes/$(dirname "$f")"; cp -v "/tmp/wordpress/wp-includes/$f" "/home/cowu7657/villa-piscine/wp-includes/$f"; done < /tmp/missing_includes.txt #1786433904 find /home/cowu7657/villa-piscine/wp-includes /home/cowu7657/villa-piscine/wp-admin -type f -size 0 > /tmp/empty.txt; cat /tmp/empty.txt #1786433967 while read f; do rel=${f#/home/cowu7657/villa-piscine/}; src="/tmp/wordpress/$rel"; if [ -f "$src" ]; then cp -v "$src" "$f"; else echo "NO SOURCE: $rel"; fi; done < /tmp/empty.txt #1786434554 find /tmp/wordpress -iname 'abilities-api' -o -iname 'list-reusable-blocks' -o -path '*blocks/file*' #1786434610 ls -la /tmp/wordpress/wp-includes/blocks/file/ /tmp/wordpress/wp-includes/abilities-api/ /tmp/wordpress/wp-includes/css/dist/list-reusable-blocks/ 2>&1 | head -60 #1786434711 ls -la /tmp/wordpress/wp-includes/abilities-api/ #1786434792 cd ~/villa-piscine && tail -n 40 error_log #1786434842 grep -m1 'Version' wp-content/plugins/google-sitemap-generator/sitemap.php; find wp-content/plugins/google-sitemap-generator -type f -size 0 #1786434893 cd /tmp && wget -q https://downloads.wordpress.org/plugin/google-sitemap-generator.4.1.22.zip -O gsg.zip && unzip -q gsg.zip -d gsg && ls gsg/google-sitemap-generator/ | head -30 #1786434936 cd ~/villa-piscine && diff -rq /tmp/gsg/google-sitemap-generator wp-content/plugins/google-sitemap-generator #1786434982 cp -v /tmp/gsg/google-sitemap-generator/sitemap-core.php wp-content/plugins/google-sitemap-generator/sitemap-core.php #1786435024 find wp-content -type f -size 0 | grep -v -E '\.(htaccess|log)$' #1786435101 tail -n 30 error_log #1786435160 find wp-content/themes/homey -type f -size 0 | wc -l; ls wp-content/themes/homey/framework/ics-parser/ 2>&1