HEX
Server: nginx/1.28.3
System: Linux ip-172-31-12-242 6.17.0-1007-aws #7~24.04.1-Ubuntu SMP Thu Jan 22 21:04:49 UTC 2026 x86_64
User: root (0)
PHP: 7.4.33
Disabled: passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv
Upload Files
File: /www/server/panel/BTPanel/static/js/index233.js
import{dD as D,R as K,d8 as Q,c7 as U,a0 as Y,cZ as I}from"./utils-lib.js?v=1777008528";import{c as ss,r as v,H as ts,g as N,o as es,I as os,J as rs,p as t,j as r,k as n,q as e,L as h,C as y,F as i,e as m,x as g,s as d,y as f,v as B,B as A,aX as as,z as ns}from"./base-lib.js?v=1777008528";import{aS as cs}from"./firewall.js?v=1777008528";import"./__commonjsHelpers__.js?v=1777008528";const ls={id:"safeDetectList"},is={class:"progress-header"},ds={class:"progress-header-cot"},us={key:0,class:"relative"},ps={class:"absolute top-[1.6rem] left-[2.6rem] flex flex-col"},_s={class:"progress-header-cot"},gs={class:"scanning-progress-title"},fs={class:"color-org"},ms={class:"color-red"},vs={class:"scanning-progress-cont"},hs={class:"progress-header-cot"},ws={class:"progress-cont-list"},ys=["onClick"],Ss={class:"progress_type"},ks={class:"progress_status"},bs={key:0,class:"text-danger"},xs={key:1,class:"text-warning"},Es={key:1},Cs={key:2,class:"text-secondary"},Ts={key:0},Ds={class:"progress_fold"},Ns={class:"progress_item_body"},Bs={class:"info_cont"},As={class:"info_cont_desc"},Ms=ss({__name:"index",setup(Vs){const M=v(!1),S=[{color:"var(--el-color-text-tertiary)",text:"未安装"},{color:"var(--el-color-text-secondary)",text:"良好"},{color:"var(--el-color-warning",text:"警告"},{color:"red",text:"危险"}],V={system_account:"系统账户",sshd_service:"SSHD远程服务",file_mode:"重要文件权限及属性",software:"重点软件检测",other:"其他项目检测",backdoor:"后门检测",proc:"恶意进程",history:"历史命令",log:"日志排查",rootkit:"rootkit检测"},j={scanStatus:!1,isEnd:!1,error:0,warn:0,time:0,progress:0,progressColor:"var(--el-color-primary)",progressConfig:{system_account:[],sshd_service:[],file_mode:[],software:[],other:[],backdoor:[],proc:[],history:[],log:[],rootkit:[]},statusTotal:{},allArr:[],result:{},progressStatus:{},active:{system_account:!1,sshd_service:!1,file_mode:!1,software:!1,other:!1,backdoor:!1,proc:!1,history:!1,log:!1,rootkit:!1}},u=v({}),s=ts({...j}),L=l=>l+" 分";let p=null;const P=()=>{p=Y({route:"/ws_project",onMessage:F})},$=N(()=>s.scanStatus&&!s.isEnd?"正在扫描":u.value.status?"上次检测时间 "+(D(u.value.msg.time)==="刚刚"?"一分钟内":D(u.value.msg.time)):"当前未进行安全检测"),k=v(""),b=v(""),z=N(()=>s.scanStatus&&!s.isEnd?"正在扫描-".concat(k.value):s.isEnd?"检测时间:"+K(s.time/1e3,"yyyy-MM-dd"):u.value.status?"若长时间未检测,服务器可能存在安全风险,建议立即检测":"当前安全风险未知,请立即检测"),F=(l,o)=>{if(o.data){const a=JSON.parse(o.data.replace(/'/g,'"'));a.hasOwnProperty("callback")?(p==null||p.close(),s.scanStatus=!1,s.isEnd=!0,s.time=new Date().getTime()):(k.value=a.name,b.value=a.topic,s.progress=parseInt(a.progress),s.progressConfig[a.topic].push(a),s.statusTotal[a.topic]=H(s.progressConfig[a.topic]),s.allArr.push(a),a.status===3?s.error++:a.status===2&&s.warn++,a.status!==1&&(s.progressColor="var(--el-color-warning)"))}},H=l=>{const o={};return l.forEach(a=>{o[a.status]?o[a.status]++:o[a.status]=1}),o},J=l=>{s.active[l]=!s.active[l]},O=()=>{if(s.scanStatus&&!s.isEnd||s.isEnd,s.scanStatus&&!s.isEnd){p==null||p.close(),x();return}else s.isEnd&&x();s.scanStatus=!0,P(),p==null||p.send({mod_name:"safe_detect",def_name:"get_safe_scan",ws_callback:""})},x=()=>{s.scanStatus=!1,s.isEnd=!1,s.error=0,s.warn=0,s.time=0,s.progress=0,s.progressColor="var(--el-color-primary)",s.progressConfig={system_account:[],sshd_service:[],file_mode:[],software:[],other:[],backdoor:[],proc:[],history:[],log:[],rootkit:[]},s.statusTotal={},s.allArr=[],s.result={},s.progressStatus={},s.active={system_account:!1,sshd_service:!1,file_mode:!1,software:!1,other:!1,backdoor:!1,proc:!1,history:!1,log:!1,rootkit:!1}},R=async()=>{try{const l=await cs();u.value=l.data}catch(l){}};return es(()=>{R()}),(l,o)=>{var E,C,T;const a=Q,w=as,W=ns,q=U,X=os("bt-loading");return rs((r(),n("div",ls,[e("div",is,[e("div",ds,[e("div",{class:h("progresscirclebar "+(t(u).status?"security ":"")+"text-["+(((E=t(u).msg)==null?void 0:E.security_count)===100?" var(--el-color-primary) ":" var(--el-color-warning)")+"]")},[t(u).status?(r(),n(i,{key:1},[t(s).scanStatus&&!t(s).isEnd?(r(),n("div",us,[m(w,{class:"animate-spin",type:"circle",percentage:70,"show-text":!1,"stroke-width":4,"define-back-color":"var(--el-color-white)",color:t(s).warn||t(s).error?"var(--el-color-warning)":"var(--el-color-primary)",width:100},null,8,["color"]),e("div",ps,[m(a,{class:"w-[full] px-[.4rem]",src:"/firewall/icon-safe-detect".concat(t(s).warn||t(s).error?"-org":"",".svg")},null,8,["src"]),o[0]||(o[0]=e("span",{class:"text-small font-bold py-[.4rem] leading-none"}," 安全检测 ",-1))])])):(r(),y(w,{key:1,type:"circle",percentage:(C=t(u).msg)==null?void 0:C.security_count,format:L,color:((T=t(u).msg)==null?void 0:T.security_count)===100?"var(--el-color-primary)":"var(--el-color-warning)",width:100},null,8,["percentage","color"]))],64)):(r(),y(a,{key:0,class:"w-[10rem]",src:"/firewall/icon-safe-detect.svg"}))],2)]),e("div",_s,[e("div",gs,[t(s).isEnd?(r(),n(i,{key:1},[o[5]||(o[5]=g(" 检测已完成 ",-1)),t(s).error>0||t(s).warn>0?(r(),n(i,{key:0},[o[4]||(o[4]=g(" ,一共发现 ",-1)),t(s).warn>0?(r(),n(i,{key:0},[e("span",fs,d(t(s).warn),1),o[1]||(o[1]=g(" 项风险项 ",-1))],64)):f("",!0),t(s).error>0?(r(),n(i,{key:1},[o[2]||(o[2]=g(" (包含 ",-1)),e("span",ms,d(t(s).error),1),o[3]||(o[3]=g(" 项危险项,请立即处理) ",-1))],64)):f("",!0)],64)):f("",!0)],64)):(r(),n(i,{key:0},[g(d(t($)),1)],64))]),t(s).scanStatus?(r(),y(w,{key:0,percentage:t(s).progress,color:t(s).warn||t(s).error?"var(--el-color-warning)":"var(--el-color-primary)","stroke-width":10},null,8,["percentage","color"])):f("",!0),e("div",vs,d(t(z)),1)]),e("div",hs,[m(W,{type:t(s).scanStatus&&!t(s).isEnd?"warning":"primary",onClick:O,plain:!!(t(s).scanStatus&&!t(s).isEnd)},{default:B(()=>[g(d(t(s).scanStatus&&!t(s).isEnd?"取消扫描":t(s).isEnd?"重新检测":"立即检测"),1)]),_:1},8,["type","plain"]),m(q,{class:"!absolute -bottom-[2.5rem] right-[1.4rem]",href:"https://www.bt.cn/bbs/thread-126643-1-1.html"},{default:B(()=>[...o[6]||(o[6]=[g(" 需求反馈>> ",-1)])]),_:1})])]),e("div",ws,[(r(),n(i,null,A(V,(Z,c)=>e("div",{key:c,class:h([c+"_item "+(t(s).active[c]?"active":""),"progress_item"])},[e("div",{class:"progress_item_header",onClick:_=>J(c)},[e("div",Ss,[m(a,{class:"title-icon",src:"/firewall/icon-"+c+".svg"},null,8,["src"]),e("span",null,d(Z),1)]),e("div",ks,[t(s).statusTotal[c]?(r(),n(i,{key:0},[t(s).statusTotal[c][3]||t(s).statusTotal[c][2]?(r(),n(i,{key:0},[t(s).statusTotal[c][3]?(r(),n("span",bs," 发现"+d(t(s).statusTotal[c][3])+"项危险 ",1)):f("",!0),t(s).statusTotal[c][2]?(r(),n("span",xs,d((t(s).statusTotal[c][3]?"":"发现")+t(s).statusTotal[c][2])+"项警告 ",1)):f("",!0)],64)):t(s).scanStatus&&t(b)==c?(r(),n("span",Es," 正在扫描... ")):(r(),n("span",Cs,"无风险项"))],64)):(r(),n(i,{key:1},[t(s).scanStatus&&!t(s).statusTotal[c]?(r(),n("span",Ts," 等待扫描 ")):f("",!0)],64))]),e("div",Ds,[m(a,{src:"/firewall/arrow-down.svg"})])],8,ys),e("div",Ns,[t(s).progressConfig[c]&&t(s).progressConfig[c].length?(r(!0),n(i,{key:0},A(t(s).progressConfig[c],(_,G)=>(r(),n("div",{key:G,class:h([_.info?"active":"","progress_item_info"])},[e("div",Bs,[e("div",null,d(_.name.replace("分析网站","")),1),e("div",{class:h("text-["+S[_.status<0?0:_.status].color+"]")},d(S[_.status<0?0:_.status].text),3)]),e("div",As,d(_.info||""),1)],2))),128)):f("",!0)])],2)),64))])])),[[X,t(M)]])}}}),zs=I(Ms,[["__scopeId","data-v-4feacef1"]]);export{zs as default};