*DddlmZddlmZddlmZddlmZm Z ddl m Z ddl m Z mZddlmZddlmZdd lmZdd lmZdd lmZmZdd lmZeeZd ZdZe de j Z!GddeZdS)) getLogger)Core)SendServerConfig)ModsecVendorsErrorPanelException)register_lock_file)Scoperecurring_check) check_lock) DisabledRule)ossec) hosting_panel)ModsecImunifyVendorNotInstalledModsecNotInstalledVendors)get_shared_disabled_rules_listznon-imunify-vendorzno-vendors-installedzsend-server-configc2eZdZejZdZfdZxZS)rc K||_||_|jttd|jt |j|_dS)NT)check_period_firstcheck_lock_period lock_file) _loop_sink create_taskr r _period LOCK_FILE_send_server_config_task)selfloopsinks U/opt/imunify360/venv/lib/python3.11/site-packages/im360/plugins/send_server_config.py create_sourcezSendServerConfig.create_source"sv  Z++ ( O#'"&,#     &  ( ( * *   c Ktd{V}tj}|d{V}d}d}d}d}|r |d{V} t ||d{Vv}n?#t$r2}t dt|Yd}~nd}~wwxYw | d{V}n#ttf$r2}t dt|Yd}~nd}~wwxYw#t$r8}t t|t}Yd}~nd}~wt $r8}t t|t"}Yd}~nAd}~wt$r1}t t|Yd}~nd}~wwxYw |d{V}n?#t$$r2}t dt|Yd}~nd}~wwxYw||||||||d} | |d<dt-ji|d<t1j|d<t5D]\} |dt0jj| d t0jj| d t0jjd i]t>j !|d d <|S)NzSCannot determine if vendor is enabled because we can't get enabled vendors list: %sz.Cannot determine Imunify360 vendor version: %sz#Cannot determine active vendors: %s)vendorenabledversionmodsec_installed engine_modeactive_vendors conf_filesvendor_updatesmodsecr'r disabled_rulespluginrule_idzshared-disabled-ruleagent_global_configzCORE.is_go_agent)"super_create_server_config_msgr HostingPanelinstalled_modsec#get_modsec_vendor_from_release_fileboolenabled_modsec_vendor_listrloggerwarningstrget_i360_vendor_versionrrNON_IMUNIFY_VENDORrNO_VENDORS_INSTALLED Exceptionget_modsec_engine_modeget_modsec_active_conf_filesget_modsec_vendor_updatesr get_rules_versionr as_listrappendr/namer0r GO_FLAG_FILEexists) rmsghpr( vendor_namevendor_versionvendor_enabledr*e modsec_msgshared_disabled_rule __class__s r!r3z*SendServerConfig._create_server_config_msg/s!GG5577777777  ' ) )!#!4!4!6!6666666  !  $&$J$J$L$LLLLLLL  &*#R-J-J-L-L'L'L'L'L'L'LL&&NN&NN#A +-+E+E+G+G%G%G%G%G%G%GNN*N;NNHA53 1 1 1s1vv&&&0 , 3 3 3s1vv&&&2 % ' ' 's1vv&&&&&&&& '4 J#%#@#@#B#BBBBBBBNN J J J NN@#a&& I I I I I I I I J"%% 04466,99;; ::<<   #H !5#:#<#<=G , 4 6 6 $B$D$D     ! ( ( ',.B8.L (-/CI/N %*,B       $ $ & & !"   sx#E >)B(( C$2(CC$(DE(EE H.F H.G H'HH H$$ I .(II ) __name__ __module__ __qualname__r IM360SCOPEr"r3 __classcell__)rQs@r!rrsW KE    NNNNNNNNNr#rN)"loggingr defence360agent.contracts.configr*defence360agent.plugins.send_server_configrSendServerConfigAV"defence360agent.subsys.panels.baserr'defence360agent.subsys.persistent_staterdefence360agent.utilsr r defence360agent.utils.check_lockr im360.model.incidentr im360.subsysr im360.subsys.panelsrim360.subsys.panels.baserr"im360.subsys.shared_disabled_rulesrrRr9r=r>rUrr#r!rfs111111GFFFFF88888888777777------------NMMMMM 8  *-  3U[ A A ^^^^^)^^^^^r#