<?xml version="1.0" encoding="utf-8" ?>
<profile product="deepscan" time="20200220">

  <!--引擎自身配置，开始-->
  <setting>
  		<param name="max_wait_cnt_scanfile" value="160"/>       <!--最大等待扫描文件数-->
		<param name="max_wait_cnt_scanpack" value="20"/>        <!--最大等待扫描压缩包数-->
		<param name="max_wait_cnt_calufile" value="160"/>       <!--最大等待计算文件数-->	
		<param name="maxscanthread" value="4"/>                 <!--最大扫描线程数-->
		<param name="maxhandlethread" value="1"/>               <!--最大处置线程数-->
		<param name="maxenumthread" value="1"/>                 <!--最大枚举线程数-->
		<param name="maxpackextractthread" value="2"/>          <!--最大解压缩线程数-->
		<param name="scanmodule" value="0"/>                    <!--扫描模式，不限制0，均衡1，还是低配置2-->
		<param name="filebufsize" value="10485760"/>            <!--扫描文件时统一读取的文件大小最大数-->
		<param name="maxhandletask" value="10000"/>             <!--最大处置任务积压任务量，目前是1万-->
		<param name="product" value="tianqing"/>                  <!--产品信息，隔离区标识使用-->
		<param name="combo" value="scan"/>                  <!--业务名称，隔离区标识使用-->
		<param name="maxaccumulatecount" value="20"/>          <!--最大任务累积扫描任务个数，最小是10个-->
		<param name="accumulatescaninterval" value="5000"/>    <!--累积扫描时间间隔，单位毫秒，最小是5000毫秒-->
		<param name="packextractmodulename" value="libextract.so"/>    <!--解压模块名称,-->
		<param name="packextractmaxfilesize" value="52428800"/>         <!--解压模块,内存解压出来的最大文件大小-->
		<param name="packextractmodulepath" value="scanbase/owl/"/>    <!--解压模块名称解压模块的路径，初始化时使用，不能想当然直接提取，路径后的\必须填否则失败-->
		<param name="OutTimeSign_As_Valid" value="1"/>                 <!--过期签名视为有效-->	
		<param name="fileAnalyis_BeginUploadOffsetMinutes" value="5"/>    <!--云鉴定上传参数：启动后X分钟后开始上传-->
		<param name="fileAnalyis_MaxUploadFileCnt_int64" value="50"/>    <!--云鉴定上传参数：一个周期内的最大上传文件数-->
		<param name="fileAnalyis_MaxUploadTotalKByteCnt_int64" value="102400"/>      <!--云鉴定上传参数：一个周期内的最大上传字节数据（kb）-->
		<param name="fileAnalyis_MaxOneFileKByteCnt_int64" value="20480"/>   		 <!--云鉴定上传参数：单个文件最大字节数（kb）-->
		<param name="fileAnalyis_UploadPeriodByCronExpr_string" value="0 0 3 1/1 * ?"/>   <!--云鉴定上传参数：上传周期定义cron表达式，默认：每天晚上3点-->
		<param name="fileAnalyis_UploadPeriodBetweenMinutes_int" value="480"/>   		 <!--云鉴定上传参数：每间隔x分钟，上传y个文件-->
		<param name="fileAnalyis_UploadPeriodUploadPeriodFileCount_int" value="50"/>   <!--云鉴定上传参数：y-->
		<param name="fileAnalyis_UploadConsole2PublicHost" value="up.fileaccess.qianxin.com" /> <!-- 控制台代理时云鉴定host -->
		<param name="fileAnalyis_UploadCDNDirector" value="oss-zz-zzt.yun.qianxin.com:443" />	
		<param name="cloudrule_disperse" value="1"/>  <!--云规则离散化启用-->
		<param name="cloudrule_maxcnt" value="50"/>   <!--云规则离散化一次云规则的数量-->
		<param name="cloudrule_estimatecnt" value="400"/> <!--预估云规则总数-->
		<param name="cloudrule_total_duration" value="300"/> <!--云规则预计发送总时长 单位s秒-->
		<param name="cloudrule_timeout" value="40"/> <!--云规则离散化未发送的超时时长 单位s秒-->
		<param name="cloudrule_mini_interval" value="2"/> <!--云规则最小发送间隔 单位s秒-->
	</setting>
  <!--引擎自身配置，结束-->
  <!--扫描器配置，开始  deepscan的术语定义见：https://wiki.qianxin-inc.cn/pages/viewpage.action?pageId=237555237 -->
  <!--每个scanner节点表示一个独立的扫描器，id、name、desc为枚举器的基础属性，id必须唯一；path表示此扫描器接口在哪个文件中被实现 -->
  <!--private节点为扫描器的私有配置，由一系列param节点组成-->
	<scanners> 
		<scanner id="1" clsid="{C06ACCCA-5ACD-4C1E-8FEA-9791FF93BD6E}" name="qce" desc="云引擎" path="./libdsscanengbase.so" preload="1"> 
			<private>
				<param name="engpath" value="." />
				<param name="timeout" value="1000" /> <!--云查超时时间，单位毫秒-->
				<param name="virus_name_blacksign" value="PUA.Signature.Risk"/>         <!--命中黑签名时的报出病毒名-->
				<param name="virus_name_generic"   value="Trojan.Generic.B"/>           <!--没有病毒名时报出的通用病毒名-->
				<param name="threat_virus_class"   value="infected"/>                   <!--云查70时返回的感染型标记，此内容为列表类型,分割比如abc,def-->
				<param name="product" value="tianqing"/>         <!--产品信息-->
				<param name="combo" value="scan"/>         <!--业务名称-->
				<param name="autoapplyofflinemode" value="1"/>         <!--是否自动应用离线模式-->				
				<!--云规则配置开始-->
				<cloudrule force="0"> <!--强制使用云规则云查， 1：用,其他不使用， 当强制使用云规则为1时，将尝试读取该节点下的所有ext节点，并将节点中kv附加到云规则的ext中-->
                    <ext key="groupid" type="string" value="dsid:1"/> <!--当强制使用云规则进行云查时，ext中被附加的字段，key：ext中key的名字， type：数据类型(int32， int64，string，bool)，value数据内容-->
                </cloudrule>
                <!--云规则配置开始-->
                <param name="groupid" value="dsid:1"/>                              <!--云规则查询的组id，注意该项配置一定要和cloudrule节点下groupid一致，要不就会查到不同的地方-->
				<param name="localrulefile" value="./localrule.dat"/>                   <!--本地规则文件的路径-->
				<param name="rule_virus_name_generic" value="Risk/CRS.Autorun.Generic"/>       <!--没有病毒名时云规则报出的通用病毒名-->
				<param name="autorunid" value="18,19,20,21,24,25,26,27,28,29,38,61,62,75,77,110,111,203,209,224,20030,20062,20063"/> <!--需要云规则查询的启动项id，id来源于libcimautorun-->
				<transformkey>
					<!--启动项key转换开始-->
					<key src="autorun_id" dec="scan_pos" using="enum"/> <!--启动项位置-->
					<key src="command_line" dec="cmd_line"  using="enum"/>
					<key src="value_path" dec="reg_table"  using="enum"/>
					<key src="value_name"   dec="reg_key"  using="enum"/>
					<key src="org_data" dec="reg_val"  using="enum"/>
					<!--启动项key转换结束-->
					
					<!--文件key转换开始-->
					<key src="file_version" dec="file_version" using="file"/>
					<key src="file_desc" dec="file_desc" using="file"/>
					<!--key src="" dec="fin"/--><!--InternalName-->
					<key src="file_company" dec="file_corp_name" using="file"/>
					<key src="file_original_name" dec="file_origin_name" using="file"/>
					<!--key src="" dec="fpn"/--> <!--ProductName-->
					<!--文件key转换结束-->
				</transformkey>
				<!--云规则配置结束-->
			</private>
			<public>
				<param name="enable"   value="1"/>      <!--是否启用引扫描器-->
				<param name="role"     value="1"/>      <!--扫描器的角色，1为默认，2试用期的扫描器旁观者-->
				<param name="seclevel" value="5"/>      <!--扫描器安全级别 1低误报， 5中等安全级别， 9高检出-->
				<param name="canhandle" value="0"/>     <!--是否有参与处置的能力，1有，其他没有，该项内容配置后，初始化扫描实例时，会要求将处置的实例一同分配-->
				<param name="filter"   value="2"/>      <!--设置过滤器-->
				<param name="weight"   value="95"/>
				<param name="scan_white" value="1"/>
				<param name="report_white" value="0"/>
				<!--在扫描器结果合并时，扫描器的权重值(1-100区间)，云查95比本地引擎略低-->
			</public>
		</scanner>
		<scanner id="2" clsid="{106801CF-20BA-4776-B9DB-7B018341CB03}" name="qowl" desc="启发式病毒检测引擎" path="./libdsscanengbase.so" preload="1"> 
			<private>
				<param name="engpath" value="./scanbase/owl" />
				<param name="defpath" value="./scanbase/owl/def" />    
				<param name="mpscan" value="1" />		<!--大范围浮动扫描, -1代表走引擎默认设置，不做修改；0,不启用；1，启用-->
				<param name="pe_pua" value="1" />   	<!--PUA程序扫描, -1代表走引擎默认设置，不做修改；0,不启用；1，启用-->	
				<param name="pe_heuristic" value="1" />	<!--是否扫描可疑程序, -1代表走引擎默认设置，不做修改；0,不启用；1，启用-->
				<param name="dll_sildloading" value="0" /> <!--是否扫描白利用, -1代表走引擎默认设置，不做修改；0,不启用；1，启用-->
				<param name="doc_attachment" value="1" /> <!--OFFICE文档附件深度清理, -1代表走引擎默认设置，不做修改；0,不启用；1，启用-->
				<param name="pe_residual" value="1" /> <!--PE感染型残留, -1代表走引擎默认设置，不做修改；0,不启用；1，启用-->
				<param name="macro_residual" value="1" /> <!--宏病毒残留, -1代表走引擎默认设置，不做修改；0,不启用；1，启用-->
				<seclevel>
					<param level="9" value="" /> 
					<param level="5" value="" />
					<param level="1" value="" /> 
				</seclevel>				
			</private>
			<public>
				<param name="enable" value="1"/>     <!--是否启用引扫描器-->
				<param name="role"   value="1"/>      <!--扫描器的角色，1为默认，2试用期的扫描器旁观者-->
				<param name="seclevel" value="5"/> 
				<param name="canhandle" value="1"/>   
				<param name="filter"  value="3"/>     <!--设置过滤器-->
				<param name="weight"   value="100"/>      <!--在扫描器结果合并时，扫描器的权重值(1-100区间)-->
			</public>
		</scanner>
		
		<scanner id="8" clsid="{7BD16B74-8027-4657-92C1-16E3491DBD8B}" name="bd" describe="Bitdefender" path="./libdsscanengbase.so" preload="0"> 
			<private>
				<param name="engpath" value="scanbase/bd" />
				<param name="whitedb" value="scanbase/bd/dsavwn2.dat" />  
				<param name="defpath" value="scanbase/bd/plugins" />   
				<param name="scanmaxfilesize" value="419430400"/>     
			 	<param name="BD_LICENSEFILE" value="scanbase/bd/bd_data.dat"/>				
			</private>
			<public>
				<param name="enable" value="1"/>  
				<param name="role"   value="1"/>      
				<param name="seclevel" value="5"/> 
				<param name="canhandle" value="1"/>   
				<param name="filter"  value="1"/>  
				<param name="weight"  value="100"/>      <!--在扫描器结果合并时，扫描器的权重值(1-100区间)-->
			</public>
		</scanner>
		
		<scanner id="16" clsid="{CDD851F9-748F-41af-9269-1B7D44245014}" name="qre" describe="深扫规则引擎" path="./libdsextscaneng.so" preload="1"> 
			<private>  
				<param name="rulefile" value="./ExtScanRuleConf.xml"/>  
				<param name="athenamodule" value="./libcore_evaluation.so"/>  
			</private>
			<public>
				<param name="enable" value="1"/>  
				<param name="role"   value="1"/>      
				<param name="seclevel" value="5"/> 
				<param name="canhandle" value="0"/>   
				<param name="filter"  value="2"/>
				<param name="scan_white" value="1"/>
				<param name="report_white" value="1"/>
				<param name="weight"   value="95"/>      <!--在扫描器结果合并时，扫描器的权重值(1-100区间)-->
			</public>
		</scanner>
		<scanner id="4" clsid="{8E0B7B01-9102-4cdc-817A-9344D0CD1239}" name="qde" describe="人工智能检测引擎" path="./libdsscanengbase.so" preload="1"> 
			<private>
                <param name="engpath" value="./scanbase/qde" />  <!--qdesdk路径-->
                <param name="configfile" value="./scanbase/qde/conf" /> <!--特征提取参数的配置文件路径-->
                <param name="product" value="tianqing"/>         <!--产品信息-->
                <param name="combo" value="scan"/>               <!--业务名称-->
				<param name="product_ver" value="v1.0" />	     <!--产品版本信息-->
                <param name="filetype" value="1,2,30"/>          <!--qde支持检测的文件类型，内容来源于owl的文件格式识别定义-->
                <param name="timeout" value="1000"/>             <!--qde支持云查的超时时间,单位毫秒-->
                <param name="timeoutcount" value="5"/>             <!--允许连续超时的次数-->
                <param name="closetime" value="1800"/>           <!--连续超时后关闭云查的时间，单位秒-->
                <seclevel>                                       <!--安全级别和qde模型置信度映射表-->
                    <param level="9" value="0.98" />             <!--安全级别高时（映射天擎的高检出）-->
                    <param level="5" value="0.99" />             <!--安全级别中时（映射天擎的平衡型）-->
                    <param level="1" value="0.999" />            <!--安全级别低时（映射天擎的低误报）-->
                </seclevel>              
            </private>
            <public>
                <param name="enable" value="1"/>     <!--是否启用引扫描器-->
                <param name="role"   value="1"/>      <!--扫描器的角色，1为默认，2试用期的扫描器旁观者-->
                <param name="seclevel" value="5"/>
                <param name="canhandle" value="0"/>  
                <param name="filter"  value="4"/>     <!--设置过滤器-->
				<param name="weight"   value="95"/>      <!--在扫描器结果合并时，扫描器的权重值(1-100区间)-->
            </public>
		</scanner>
		
	</scanners>

  <!--扫描派发配置，将扫描类型和扫描器做关联，开始 -->
  <!--scan_type表示扫描类型，扫描类型的定义见IDsScanRange中的定义-->
  <!--subscribe_scanners表示此种扫描类型的数据要交给哪几个扫描器做扫描，用id表示，对应scanner节点下的id属性-->
  <!--subscribe_handler表示此种扫描类型的数据要交给哪几个处置器进行处置，用id表示，对应handlers节点下的id属性-->
  <!--type表示规则类型，本次只有ordered_scan，即按subscribe_scanners列出的扫描器依次扫描-->
  <dispatchrules>
	<scan>
		<dispatchrule type="ordered_scan" scantype="autoruns" desc="rule_autoruns" subscribe_scanners="1,2,8,4,16" /> 
		<dispatchrule type="ordered_scan" scantype="diskfile" desc="rule_diskfile" subscribe_scanners="1,2,8,4,16" /> 
		<dispatchrule type="ordered_scan" scantype="process"  desc="rule_process"  subscribe_scanners="1,2,8,4,16" /> 
		<dispatchrule type="ordered_scan" scantype="pack"     desc="PackExtract"   subscribe_scanners="1,2,8,4,16" /> 
		<dispatchrule type="ordered_scan" scantype="uDisk"  desc="uDisk"  subscribe_scanners="1,2,8,4,16" /> 
	</scan>
	<handle>
		<dispatchrule type="ordered_handle" scantype="autoruns" desc="rule_autoruns" subscribe_handler="1" /> 
		<dispatchrule type="ordered_handle" scantype="diskfile" desc="rule_diskfile" subscribe_handler="2" /> 
		<dispatchrule type="ordered_handle" scantype="process"  desc="rule_process"  subscribe_handler="3" /> 
		<dispatchrule type="ordered_handle" scantype="pack"    desc="PackExtract"  subscribe_handler="2" /> 
		<dispatchrule type="ordered_handle" scantype="uDisk"  desc="uDisk"  subscribe_handler="2" /> 
	</handle>
  </dispatchrules>
  <!--扫描派发配置，结束 -->

  <!--按照owl提供的文件类型识别模块定义的枚举值设置
  value:owl提供的文件类型列表
  extinclude：还有可能保护的扩展名列表
  extexclude:排除掉的扩展名列表
  -->
	<filetype> 
		<archive value="4,5,6,7,8,9,13,33,64,65,66,68,69,70,73" extinclude="" extexclude=".xlsx,.pptx,.docx"/> <!--压缩包-->
		<program value="1,2,14,30" extinclude="" extexclude=""/><!--程序-->
		<document value="3,12,20,21,34,36,55,56,59,60,63,77,78,79,80,82,88,89,90" extinclude=".xlsx,.pptx,.csv" extexclude=""/><!--文档-->
	</filetype>

  <!--扫描过滤器节点，开始-->
  <filters> 
	<filter fid="1" describe="默认的过滤规则"> <!--引擎过滤器配置，目前只适配level-->
		<level region="-1,30-60"/> <!--level表达式“，”分割，“-”标识区间-->
	</filter>	
	
	<filter fid="2" describe="云查规则"> <!--引擎过滤器配置，目前只适配level-->
		<level region="-1,0-70"/> <!--level表达式“，”分割，“-”标识区间-->
	</filter>	
	
	<filter fid="3" describe="感染型的过滤"> <!--引擎过滤器配置，目前只适配level-->
		<level region="-1,30-70"/> <!--level表达式“，”分割，“-”标识区间-->
	</filter>	
	
	<filter fid="4" describe="qde的规则"> <!--引擎过滤器配置，目前只适配level-->
		<level region="-1,30-60"/> <!--level表达式“，”分割，“-”标识区间-->
	</filter>	
	
  </filters>
  <!--扫描过滤器节点，结束-->
  
</profile>