Warning: session_start(): Session cannot be started after headers have already been sent in /home/tvrreohg/public_html/manga.php on line 13
§
Ìß]j·B ã óJ — d dl Z d dlZd dlZd dlZd dlZd dlmZ d dlmZm Z m
Z
mZmZ d dl
mZ d dlmZ d dlmZmZ dZ G d„ d e¦ « Z G d
„ de¦ « Zded
edeeef fd„Zdedefd„Zdeeef defd„Zdedefd„Zdeeef defd„Zdeeef defd„Zd1dede
ee de e fd„Zd„ Z defd„Z!d„ Z"d„ Z#ded efd!„Z$d"ed#ede
e fd$„Z%d"ede
e fd%„Z&d2d'„Z'd(„ Z(d3d*ed+efd,„Z)d1d+efd-„Z*d1d+efd.„Z+d/„ Z,d0„ Z-dS )4é N)ÚPath)ÚUnionÚIterableÚOptionalÚTupleÚList)ÚEnum)ÚClPwd)Úget_rhn_systemid_valueÚ is_ubuntuz0/opt/cpvendor/config/cl-manager-ui-settings.jsonc ó — e Zd ZdZdZdZdS )Ú
PluginTypez2
Plugin types that are currently detected
zobject-cachezadvanced-cacheN)Ú__name__Ú
__module__Ú__qualname__Ú__doc__ÚOBJECT_CACHEÚADVANCED_CACHE© ó ús/builddir/build/BUILD/imunify360-venv-2.6.3/opt/imunify360/venv/lib/python3.11/site-packages/clcommon/clwpos_lib.pyr r s$ € € € € € ðð ð "€LØ%€N€N€Nr r c ó — e Zd ZdZdZdZdZdS )Ú WpPluginszj
Static WP plugin names, that are not detected
dynamically from drop-in files, dir names, etc
ÚUnknownz WP RocketÚAccelerateWPN)r r r r ÚUNKNOWNÚ WP_ROCKETÚ
ACCELERATE_WPr r r r r ! s) € € € € € ðð ð €GØ€IØ"€M€M€Mr r ÚlineÚis_multiline_commentÚreturnc ó
— |r[d| vrdS | d¦ « }t | d|… d¦ « \ }}t | |dz d… d¦ « \ }}||z |fS d| v r!| d¦ « }| d|… dfS d| v r!| d¦ « }| d|… dfS d | v rU| d ¦ « }t | d|… d¦ « \ }}t | |dz d… d¦ « \ }}||z |fS | dfS )
zÎ
Yep, this bicycle is needed to handle different comment types in .php file
https://www.php.net/manual/en/language.basic-syntax.comments.php
and ensure that needed line is not under comment
z*/)Ú TNTé Fz//ú#z/*)ÚfindÚ
clean_comment)r r ÚposÚpart1Ú_Úpart2s r r' r' + s; € ð ð 7Ø�tÐÐØ�8à—)’)˜D‘/”/ˆCÝ$ T¨$¨3¨$¤Z°Ñ6Ô6‰HˆE�1Ý*7¸¸SÀ1¹W¸X¸X¼ÈÑ*NÔ*NÑ'ˆEÐ'ؘ5‘=Ð"6Ð6Ð6àˆt€|€|Ø�iŠi˜‰oŒoˆØ�D�S�DŒz˜5Ð Ð à
ˆd€{€{Ø�iŠi˜‰nŒnˆØ�D�S�DŒz˜5Ð Ð àˆt€|€|Ø�iŠi˜‰oŒoˆÝ d s d¤¨UÑ3Ô3‰ˆˆqÝ&3°D¸¸q¹¸¸´NÀDÑ&IÔ&IÑ#ˆÐ#Ø�u‰}Ð2Ð2Ð2à�ˆ;Ðr Úfilec ó~ — t j | ¦ « }t j |¦ « S ©N)ÚosÚpathÚrealpathÚisfile)r, Ú
realpath_files r Ú
_is_real_filer4 K s+ € Ý”G×$Ò$ TÑ*Ô*€MÝ
Œ7�>Š>˜-Ñ(Ô(Ð(r Úabs_pathc óX — t j | d¦ « }t j |¦ « rt |¦ « rdS n# t
$ r Y nw xY wt j | t j ¦ « }t j |d¦ « }t j |d¦ « }t j |¦ « ot |¦ « }t j |¦ « o| ot |¦ « S )a&
WordPress looks for wp-config.php file in the
(1) WordPress root and (2) one directory above the root.
Check that there is no wp-settings.php file in the second case.
This check helps when there is a nested installation, e.g
/ is WordPress and /wp_path/ is WordPress.
ú
wp-config.phpTzwp-settings.php)r/ r0 ÚjoinÚexistsr4 ÚOSErrorÚpardir)r5 Ú
wp_config_phpÚabs_path_level_upÚwp_config_php_level_upÚwp_settings_phpÚwp_settings_php_existss r Ú_check_wp_config_phprA P s € ð
ÝœŸš X¨Ñ?Ô?ˆ
Ý
Œ7�>Š>˜-Ñ(Ô(ð ]¸=Ñ-IÔ-Ið Ø�4øøÝð
ð
ð
؈ð
øøøõ œŸš Xr¬yÑ9Ô9ÐÝœWŸ\š\Ð*;¸_ÑMÔMÐÝ”g—l’lÐ#4Ð6GÑHÔH€OÝœWŸ^š^¨OÑ<Ô<Ð_ÅÈÑA_ÔA_Ðå
Œ7�>Š>Ð0Ñ1Ô1ð 1Ø%Ð%ð1åÐ/Ñ0Ô0ð1s ‚AA Á
A ÁA Údirc ó~ — t j | ¦ « }t j |¦ « S r. )r/ r0 r1 Úisdir)rB Úrealpath_dirs r Ú_is_real_dirrF j s+ € Ý”7×#Ò# CÑ(Ô(€LÝ
Œ7�=Š=˜Ñ&Ô&Ð&r c óŒ — t j | d¦ « }dt j | ¦ « v ot |¦ « S )z.
Check wp-includes exists and is dir.
zwp-includes)r/ r0 r8 ÚlistdirrF )r5 Úwp_includess r Ú_check_wp_includesrJ o s; € õ ”'—,’,˜x¨Ñ7Ô7€KØ�BœJ xÑ0Ô0Ð0ÐNµ\À+Ñ5NÔ5NÐNr c ó — t j | ¦ « sdS n# t $ r Y dS w xY wt | ¦ « j d¦ « rdS t | ¦ « ot | ¦ « S # t $ r Y nw xY wdS )z‰
Checks whether passed directory is a wordpress directory
by checking presence of wp-includes folder and wp-config.php file.
Fz.wp-toolkit) r/ r0 r9 r: r ÚnameÚ
startswithrA rJ )r5 s r Ú
is_wp_pathrN w s¹ € ð
ÝŒw�~Š~˜hÑ'Ô'ð Ø�5ð øõ ð ð ð Øˆuˆuðøøøõ ˆH�~„~Ô×%Ò% mÑ4Ô4ð Øˆuð
Ý# HÑ-Ô-ÐNÕ2DÀXÑ2NÔ2NÐNøÝð
ð
ð
؈ð
øøøð ˆ5s ‚$ ¤
2±2ÁA= Á=
B
 B
Údoc_rootÚexcludesc # ó< K — t j | ¦ « sdS t | ¦ « rdV — t | ¦ « ¦ « D ]C}| ¦ « sŒ|rt |¦ « |v rŒ+t |¦ « r |j V — ŒDdS )zë
Returns folder with wordpress
Empty string is wp is in docroot dir
:param doc_root:
root path to start search from
:param excludes:
list of paths that must be excluded from search, e.g. subdomains
Nr# ) r/ r0 r9 rN r ÚiterdirÚis_dirÚstrrL )rO rP r0 s r Ú
find_wp_pathsrU Ž s± è è € õ Œ7�>Š>˜(Ñ#Ô#ð Øˆå�(ÑÔð Øˆˆˆå�X‘”×&Ò&Ñ(Ô(ð ð ˆØ�{Š{‰}Œ}ð Øàð �˜D™ œ XÐ-Ð-Øå�dÑÔð Ø”)ˆOˆOˆOøðð r c ó4 — t j d| › d| › d�¦ « }t |dd¬¦ « 5 }d} | ¦ « }|sn7t ||¦ « \ }}| |¦ « r d d d ¦ « dS ŒN d d d ¦ « n# 1 swxY w Y dS )
z8
Looks for defined php variable with true value
z^\s*define\s*\(\s*((\'z\')|(\"z\"))\s*,\s*true\s*\)\s*;úutf-8Úignore©ÚencodingÚerrorsFTN)ÚreÚcompileÚopenÚreadliner' Úmatch)Úvarr0 ÚrÚfr r Úcleaned_lines r Ú_is_php_define_var_foundre © s € õ Œ
ÐV¨SÐVÐV¸ÐVÐVÐVÑWÔW€Aå
ˆd˜W¨XÐ 6Ñ 6Ô 6ð ¸!Ø$Ðð Ø—:’:‘<”<ˆDØð
ØÝ1>¸tÐEYÑ1ZÔ1ZÑ.ˆLÐ.Ø�wŠw�|Ñ$Ô$ð
Øðð ð ñ ô ð ð ð ð ð ðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð ð ˆ5s ®AB
Á?B
Â
BÂBÚwordpress_pathc óŽ — | d¦ « }t j |¦ « sdS t d|¦ « S )z¡
Detects whether plugin is really enabled,
cause not all plugins are enabled 'on load'
# https://kevdees.com/what-are-wordpress-drop-in-plugins/
r7 FÚWP_CACHE)Újoinpathr/ r0 r9 re )rf Ú wp_configs r Úis_advanced_cache_enabledrk » sB € ð ×'Ò'¨Ñ8Ô8€Iå
Œ7�>Š>˜)Ñ$Ô$ð Øˆuå# J° Ñ:Ô:Ð:r c óf — t | ¦ « €!t d| ¦ « rt j j S dS )z·
They are advising to check whether WP_ROCKET_ADVANCED_CACHE is defined
to ensure plugin is working
https://docs.wp-rocket.me/article/134-advanced-cache-error-message
NÚWP_ROCKET_ADVANCED_CACHE)Úaccelerate_wp_pluginre r r Úvalue)Údrop_in_paths r Úwp_rocket_pluginrq É s6 € õ ˜LÑ)Ô)Ð1Ý$Ð%?ÀÑNÔNð 2åÔ"Ô(Ð(؈4r c ó — t | dd¬¦ « 5 }d| ¦ « v rt j j cddd¦ « S ddd¦ « n# 1 swxY w Y dS )zB
Checking if the plugin folder name exists in the drop-in
rW rX rY z/clsopN)r^ Úreadr r ro )rp rc s r rn rn Õ s¹ € õ
ˆl W°XÐ >Ñ >Ô >ð 1À!Ø�q—v’v‘x”xÐÐÝÔ*Ô0ð1ð 1ð 1ð 1ñ 1ô 1ð 1ð 1Øð1ð 1ð 1ñ 1ô 1ð 1ð 1ð 1ð 1ð 1ð 1øøøð 1ð 1ð 1ð 1ð ˆ4s “'AÁAÁAÚplugin_typec ó´ — | d¦ « }| |› d�¦ « }t j |¦ « sdS |t j j k rt | ¦ « sdS | d¦ « }t ||¦ « p=t |¦ « p.t |¦ « pt |¦ « pt j
j }|S )a
Looking for object-cache.php or advanced-cache.php in wordpress folder
If found - tries to find 'plugin-owner' of <-cache>.php by
content comparison
If cannot be found -> tries to read <-cache>.php headers looking for Plugin name:
z
wp-contentz.phpNÚplugins)ri r/ r0 r9 r r ro rk Ú$get_wp_cache_plugin_by_scanning_dirsÚget_wp_cache_plugin_by_headerrn rq r r )rf rt Úwp_content_dirÚactivated_cacheÚplugins_dirÚplugin_names r Úget_wp_cache_pluginr} Þ sâ € ð $×,Ò,¨\Ñ:Ô:€NØ$×-Ò-°Ð.BÐ.BÐ.BÑCÔC€OÝ
Œ7�>Š>˜/Ñ*Ô*ð ØˆtØ•jÔ/Ô5Ò5Ð5Õ>WÐXfÑ>gÔ>gÐ5؈tØ ×)Ò)¨)Ñ4Ô4€KÝ6°ÈÑTÔTð -Ý2°?ÑCÔCð-å)¨/Ñ:Ô:ð-õ & oÑ6Ô6ð-õ Ô&Ô,ð ð Ðr Úactivated_pluginr{ c óp — | ¦ « sdS | ¦ « sdS | ¦ « }| ¦ « D ]`}t j |¦ « D ]I\ }}}| j |v r:t |¦ « | j z }| ¦ « |k r|j c c S ŒJŒadS )zT
Scanning plugins/* dir and looking for similar