Help
RSS
API
Feed
Maltego
Contact
Domain > holdem.cmd-live.com
×
More information on this domain is in
AlienVault OTX
Is this malicious?
Yes
No
DNS Resolutions
Date
IP Address
2023-10-04
18.138.119.175
(
ClassC
)
2026-01-11
52.74.201.105
(
ClassC
)
Port 80
HTTP/1.1 301 Moved PermanentlyServer: awselb/2.0Date: Sun, 11 Jan 2026 01:56:52 GMTContent-Type: text/htmlContent-Length: 134Connection: keep-aliveLocation: https://holdem.cmd-live.com:443/ html>head>title>301 Moved Permanently/title>/head>body>center>h1>301 Moved Permanently/h1>/center>/body>/html>
Port 443
HTTP/1.1 200 OKDate: Sun, 11 Jan 2026 01:56:53 GMTContent-Type: text/htmlContent-Length: 30439Connection: keep-aliveLast-Modified: Wed, 03 Dec 2025 08:53:44 GMTAccept-Ranges: bytesETag: 0dc50543264dc1:0Server: Microsoft-IIS/10.0 !DOCTYPE html>html>head> meta charsetutf-8> title>LIVE HOLDEM/title> !--http://www.html5rocks.com/en/mobile/mobifying/--> meta nameviewport contentwidthdevice-width,user-scalableno,initial-scale1, minimum-scale1,maximum-scale1 /> !-- meta nameviewport contentwidth320, initial-scale2.3, user-scalableno> --> !-- meta nameviewport contentwidthdevice-width, minimal-ui> --> !-- meta nameviewport contentwidth1024, minimal-ui> --> !--https://developer.apple.com/library/safari/documentation/AppleApplications/Reference/SafariHTMLRef/Articles/MetaTags.html--> !-- meta nameapple-mobile-web-app-capable contentyes> --> !-- meta nameapple-mobile-web-app-status-bar-style contentblack-translucent> --> !-- meta nameformat-detection contenttelephoneno> --> !-- force webkit on 360 --> meta namerenderer contentwebkit /> meta nameforce-rendering contentwebkit /> !-- force edge on IE --> meta http-equivX-UA-Compatible contentIEedge,chrome1 /> meta namemsapplication-tap-highlight contentno> !-- force full screen on some browser --> meta namefull-screen contentyes /> meta namex5-fullscreen contenttrue /> meta name360-fullscreen contenttrue /> !-- force screen orientation on some browser --> meta namescreen-orientation content%orientation%> /> meta namex5-orientation content%orientation%>> !--fix fireball/issues/3568 --> !--meta namebrowsermode contentapplication>--> meta namex5-page-mode contentapp> !--link relapple-touch-icon href.png />--> !--link relapple-touch-icon-precomposed href.png />--> link relstylesheet typetext/css hrefstyle-mobile.a85fd.css/> link relicon hreffavicon.8de18.ico/> !--lucky vidosJS --> link relshortcut icon href#> !-- link href./module/video-js.css relstylesheet> --> link href./module/videojs-webrtc-plugin.css relstylesheet> !--lucky vidosJS --> !-- meta nameviewport contentuser-scalableno,initial-scale1.0,maximum-scale1.0 /> --> !-- meta nameviewport content width device-width, initial-scale 1.0, minimum-scale 1, maximum-scale 1, user-scalable no /> --> !-- //App name --> !-- meta nameapple-mobile-web-app-title contentApp name />meta nameapple-mobile-web-app-capable contentyes>meta nameapple-mobile-web-app-status-bar-style contentblack /> --> !-- //APP ICONS link relapple-touch-icon href/img/icon.png>link relapple-touch-icon sizes76x76 href/img/icon.png>link relapple-touch-icon sizes120x120 href/img/icon.png>link relapple-touch-icon sizes152x152 href/img/icon.png> --> style> html { overflow: visible !important; padding: 0; margin: 0; height: 100lvh; } body { margin-bottom: 2px; -webkit-overflow-scrolling: touch !important; -webkit-tap-highlight-color: transparent; /* scroll-behavior: smooth !important; */ /* overscroll-behavior: none; */ /* */ position: relative !important; width: 100vw; height: 100vh; } ::backdrop { background-color: transparent; } /* iOS only */ #Cocos2dGameContainer { z-index: 1001; } #Cocos2dGameContainer, #Cocos2dGameContainer canvas { width: 100vw !important; height: 100vh !important; } .dim { width: 100%; background-color: rgba(0, 0, 0, .7); position: absolute; left: 50%; top: 0; transform: translateX(-50%); z-index: 10000; display: none; text-align: center; min-height: 1000px; } .rotation { display: none; } @media all and (min-width: 270px) and (max-width: 500px) { .videojs-webrtc-player { width: 100%; height: 100%; } .dim { min-height: 1000px; } .dim img { width: 50%; margin-top: 60%; } .video-js { width: 100%; height: auto; } .modal { display: none; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.7); z-index: 200000; } .modal-content { display: block; margin: 0 auto; width: 90%; top: 50%; position: relative; transform: translateY(-50%); } #modal_close { position: absolute; bottom: 5%; width: 180px; left: 50%; transform: translateX(-50%); } } @media all and (min-width: 501px) and (max-width: 1920px) { .video-js { width: 100%; height: 100%; } .dim { min-height: 500px; position: relative; } .dim img { width: 25%; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); } .mbg { display: none; } .modal { display: none; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.7); z-index: 200000; } .modal-content { display: block; margin: 0 auto; height: 90%; top: 50%; position: relative; transform: translateY(-50%); } #modal_close { position: absolute; bottom: 5%; width: 150px; left: 50%; transform: translateX(-50%); z-index: 5; } .videojs-webrtc-player { width: 100%; height: 100%; } } @media all and (min-device-aspect-ratio:1/1.8) and (max-device-aspect-ratio:0.999/1) { .rotation { position: absolute; width: 100%; z-index: 100000; left: 0; top: 0; display: block; background-color: #000; text-align: center; } .videojs-webrtc-player { width: 100%; height: 100%; } .rotation img { width: 10%; } .rotation span { display: block; color: #FFF; font-size: 20px; } } /style> script srchttps://cdn.jsdelivr.net/npm/obs-websocket-js@5.0.6/dist/obs-ws.global.min.js>/script> script srchttps://cdn.jsdelivr.net/npm/axios/dist/axios.min.js>/script> script srchttps://web-broadcast.live-video.net/1.6.0/amazon-ivs-web-broadcast.js>/script> script srchttps://cdnjs.cloudflare.com/ajax/libs/aws-sdk/2.1677.0/aws-sdk.min.js integritysha512-pBuJIE3Mz72G06fBMXXulPzOQofRP+buEK9SP0EqjSFp2IGcFD6VgQck25b2HDmAPq10p4PPdVrYgcCOmVof3Q crossoriginanonymous referrerpolicyno-referrer>/script>/head>body> div classrotation> img src./module/img/rotation.gif> span>Please Rotation/span> /div> div idvideo_mom styleposition: relative; margin-bottom: 0px; height: 100vh;> canvas idGameCanvas oncontextmenuevent.preventDefault() tabindex0>/canvas> div idsplash> div classprogress-bar stripes> span stylewidth: 0%>/span> /div> /div> /div> div classdim iddim>img src./module/img/drag.gif iddrag>/div> div idimageModal classmodal> img classmodal-content idmodalImage> div idmodal_close styledisplay: none; onclickcloseModal()> img src./module/img/close_btn.png alt대체 텍스트 onclick stylewidth: 100%;> /div> /div>script srcsrc/settings.af252.js charsetutf-8>/script>script srcmain.964ec.js charsetutf-8>/script> script> const currentURL window.location.href; const url new URL(currentURL); const params new URLSearchParams(url.search); const viewParam params.get(view); /script> script> console.log(0); console.log(0); const { Stage, StageEvents, ConnectionState, SubscribeType } IVSBroadcastClient; let videoElement document.getElementById(videojs-webrtc-player); let stage null; let arn_token ; let loby true; let localParticipant { participant: , streams: }; let participants ; const typeParam params.get(type); let room_id params.get(view); let user_id; let cap; let sourceName DealerCamera let cmd_type live; let address ws://localhost:4455 const t_time 60000; //1 min let pw qazwsx!@12; if (typeParam d) { user_id admin cap PUBLISH } else { user_id user; cap SUBSCRIBE } //obs const init async () > { let s_key await axios.post(https://ivs.cmd-broadcast.com/cmd/utils/get_s_key, { room_id: room_id }); AWS.config.credentials new AWS.Credentials(AKIAT5SNXZKTQLZC7O7K, s_key.data.key); let obs new OBSWebSocket(); let connected false; let started false; const s3 new AWS.S3(); const getStageArn async () > { try { const res await axios.post(https://ivs.cmd-broadcast.com/cmd/stage/get_arn, { room_id: room_id }); return res.data.arn.split(/).pop(); } catch (error) { console.error(Error fetching stage ARN:, error); throw error; } }; //* const obsConnect async () > { try { await obs.connect(address, pw, { rpcVersion: 1 }); connected true; await axios.post(https://ivs.cmd-broadcast.com/cmd/obs/complete, { room_id: room_id, cmd_type: cmd_type, }); await setStreamServiceSettings(); let gret_stat await obs.call(GetStreamStatus); if (gret_stat.outputActive true) { stopStreaming(); } return true; } catch (err) { console.error(eeee); return false; } }; //disconnected obs.on(ConnectionClosed, async () > { connected false; console.log(OBS connection closed); await axios.post(https://ivs.cmd-broadcast.com/cmd/obs/disconnected, { room_id: room_id, cmd_type: cmd_type, }); }); //StreamStart let intervalId null; obs.on(StreamStateChanged, (data) > { console.log(start); if (data.outputState OBS_WEBSOCKET_OUTPUT_STARTED && data.outputActive true) { if (!started) { started true; if (cmd_type live) { getStreamServiceSettings(); intervalId setInterval(() > { getStreamServiceSettings(); }, t_time); } } } else if (data.outputState OBS_WEBSOCKET_OUTPUT_STOPPED && data.outputActive false) { if (started) { started false; if (intervalId ! null) { clearInterval(intervalId); intervalId null; } } } console.log(started); }); //StreamStart const setStreamServiceSettings async () > { if (!connected) return; try { await obs.call(SetStreamServiceSettings, { streamServiceSettings: { bearer_token: await getArn(), bwtest: false, server: https://global.whip.live-video.net, service: WHIP, use_auth: false , }, streamServiceType: whip_custom }); } catch (err) { console.error(Failed to get stream service settings:, err); } }; const getStreamServiceSettings async () > { if (!connected) return; try { obs.call(GetSourceScreenshot, { sourceName: sourceName, imageFormat: jpg }) .then((data) > { console.log(data); const base64Data data.imageData.replace(/^data:image\/jpg;base64,/, ); const byteCharacters atob(base64Data); const byteNumbers new Array(byteCharacters.length); for (let i 0; i byteCharacters.length; i++) { byteNumbersi byteCharacters.charCodeAt(i); } const byteArray new Uint8Array(byteNumbers); const blob new Blob(byteArray, { type: image/jpeg }); const params { Bucket: ivs-cmd-broadcast-thumbnail, Key: `thumbnail/${room_id}.jpg`, // 고유한 파일 이름 생성 Body: blob, ContentType: image/jpeg, }; s3.upload(params, function (err, data) { if (err) { console.error(Error uploading to S3:, err); } else { console.log(Successfully uploaded to S3:, data.Location); } }); }) .catch((error) > { console.error(Error capturing screenshot:, error); }); } catch (err) { console.error(Failed to get stream service settings:, err); } }; //error obs.on(ConnectionError, (error) > { console.error(Connection error:, error); }); const getArn async () > { let stage_arn await getStageArn(); try { const response await axios.post(https://ivs.cmd-broadcast.com/cmd/stage/create_token, { arn: `arn:aws:ivs:ap-northeast-2:269672237735:stage/${stage_arn}`, // stage ARN user_id: user_id, duration: 1500, capabilities: cap, room_id: room_id }); console.log(response.data.token); return response.data.token; } catch (err) { console.error(Failed to get ARN:, err); alert(Failed to get ARN: + err.message); } }; if (typeParam d) { // obsConnect(); } else { initializeStage(); } window.obsConnect obsConnect; const startStreaming async () > { if (!connected) return; try { await obs.call(StartStream); } catch (err) { console.error(Failed to start streaming:, err); alert(Failed to start streaming: + err.message); } }; const stopStreaming async () > { if (!connected) return; try { await obs.call(StopStream); } catch (err) { console.error(Failed to start streaming:, err); alert(Failed to start streaming: + err.message); } }; const startRecoding async () > { let stage_arn await getStageArn(); console.log(dxss) if (!connected) return; await axios.post(https://ivs.cmd-broadcast.com/cmd/recording/start, { arn: stage_arn }).then((res) > { console.log(res.data); }) }; const stopRecoding async () > { let stage_arn await getStageArn(); await axios.post(https://ivs.cmd-broadcast.com/cmd/recording/stop, { arn: stage_arn }).then((res) > { console.log(res.data); }) }; //video function handleStreamsAdded(participant, streams) { // console.log(Added participant media: , participant, streams); if (participant.isLocal) { localParticipant { participant, streams }; console.log(Local participant set: , localParticipant); } const participantExists participants.some( (participantObj) > participantObj.participant.id participant.id ); if (!participantExists) { participants.push({ participant, streams }); } updateMediaStream(); } function handleConnectionStateChange({ state }) { if (state ConnectionState.CONNECTED) { console.log(Connected to stage., state); } } // function handleParticipantJoined(participant) { console.log(Participant joined:, participant); } // function handleParticipantLeft(participant) { console.log(Participant left:, participant); } function addTracksToMediaStream(mediaStream, tracks) { tracks.forEach((track) > { mediaStream.addTrack(track); }); } async function initializeStage() { let participantToken await getArn(); if (!participantToken) { console.error(Failed to get participant token.); return; } const strategy { audioTrack: undefined, videoTrack: undefined, updateTracks(newAudioTrack, newVideoTrack) { this.audioTrack newAudioTrack; this.videoTrack newVideoTrack; }, stageStreamsToPublish() { return this.audioTrack, this.videoTrack.filter(Boolean); }, shouldPublishParticipant(participant) { return true; }, shouldSubscribeToParticipant(participant) { return SubscribeType.AUDIO_VIDEO; }, }; if (stage) { await stage.leave(); stage null; } // 새로운 stage 생성 stage new Stage(participantToken, strategy); // 이벤트 리스너 추가 stage.on(StageEvents.STAGE_PARTICIPANT_STREAMS_ADDED, handleStreamsAdded); stage.on(StageEvents.CONNECTION_STATE_CHANGE, handleConnectionStateChange); stage.on(StageEvents.PARTICIPANT_JOINED, handleParticipantJoined); stage.on(StageEvents.PARTICIPANT_LEFT, handleParticipantLeft); // 스테이지에 가입 await stage.join(); } async function updateMediaStream(data) { if (!participants.length) return; const videoElement document.getElementById(videojs-webrtc-player); if (videoElement) { const mediaStream new MediaStream(); const streamsToDisplay participants0.streams; addTracksToMediaStream(mediaStream, streamsToDisplay.map(stream > stream.mediaStreamTrack)); videoElement.srcObject mediaStream; //이벤트 리스너 videoElement.addEventListener(play, (event) > { console.log(Video is playing); }); videoElement.addEventListener(playing, (event) > { console.log(A video is playing.); }); videoElement.addEventListener(pause, (event) > { console.log(The video is not playing.); }); } } function start(data) { const videoContainer document.getElementById(video_mom); let videoElement document.getElementById(videojs-webrtc-player); if (!videoElement) { videoElement document.createElement(video); videoElement.id videojs-webrtc-player; videoElement.className video-js vjs-default-skin; videoElement.autoplay true; videoElement.loop true; videoElement.disablePictureInPicture true; videoElement.prenode none videoElement.muted true; // 자동 재생을 위해 음소거 설정 videoContainer.appendChild(videoElement); } videoElement.setAttribute(playsinline, ); videoElement.setAttribute(webkit-playsinline, ); updateMediaStream(data); videoElement.play(); } function setShowVideo(bool) { if (bool true) { start(); } else { const videoElement document.getElementById(videojs-webrtc-player); if (videoElement) { videoElement.pause(); videoElement.currentTime 0; videoElement.parentNode.removeChild(videoElement); } } } function winClose() { window.history.back(); } window.winClose winClose; window.startStreaming startStreaming; window.stopStreaming stopStreaming; window.startRecoding startRecoding; window.stopRecoding stopRecoding; window.setShowVideo setShowVideo; } init(); /script> script typetext/javascript> (function () { // open web debugger console if (typeof VConsole ! undefined) { window.vConsole new VConsole(); } var debug window._CCSettings.debug; var splash document.getElementById(splash); splash.style.display block; function loadScript(moduleName, cb) { function scriptLoaded() { document.body.removeChild(domScript); domScript.removeEventListener(load, scriptLoaded, false); cb && cb(); }; var domScript document.createElement(script); domScript.async true; domScript.src moduleName; domScript.addEventListener(load, scriptLoaded, false); document.body.appendChild(domScript); } loadScript(debug ? cocos2d-js.js : cocos2d-js-min.6df82.js, function () { if (CC_PHYSICS_BUILTIN || CC_PHYSICS_CANNON) { loadScript(debug ? physics.js : physics-min.js, window.boot); } else { window.boot(); } }); })(); /* Responsive and mobile distinction */ function Mobile() { return /Android|webOS|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent); } function iPhone() { return /iPhone/i.test(navigator.userAgent); } function iPad() { return /iPad/i.test(navigator.userAgent); } function setBodyBackground() { const currentURL window.location.href; const url new URL(currentURL); const params new URLSearchParams(url.search); const stypeParam params.get(stype); console.log(setBodyBackground + stypeParam); if (stypeParam 7) { if (window.matchMedia((orientation: portrait)).matches) { document.body.style.background url(./module/img/m7_bg.jpg) no-repeat; document.body.style.backgroundSize 100% 100%; } else { document.body.style.background #000; } } else { if (window.matchMedia((orientation: portrait)).matches) { document.body.style.background url(./module/img/m9_bg.jpg)no-repeat; document.body.style.backgroundSize 100% 100% } else { document.body.style.background #000; } } } window.modals true; if (iPhone()) { /*mobile*/ function openModal(imageUrl) { var modal document.getElementById(imageModal); var modalImage document.getElementById(modalImage); modal.style.display block; modalImage.src imageUrl; } function closeModal() { var modal document.getElementById(imageModal); modal.style.display none; window.modals false; } function setScreen() { var yScreen localStorage.getItem(yPos); window.scrollTo(0, yScreen); } function setScroll() { var yScroll window.pageYOffset; localStorage.setItem(yPos, yScroll); } /*test*/ function browserCheck() { let user window.navigator.userAgent.toLowerCase(); console.log(user); let browser user.indexOf(edge) > -1 ? edge : user.indexOf(edg/) > -1 ? edge(chromium based) : user.indexOf(crios) > -1 ? crios : user.indexOf(chrome) > -1 ? chrome : user.indexOf(safari) > -1 ? safari : other browser; // 기타 return browser; } const safari_height 0.14; const chrome_height window.outerHeight * 0.1; document.getElementById(dim).style.display block; setBodyBackground(); if (browserCheck() safari) { scrollTo(0, 0); openModal(./module/img/screen_guide.png); document.getElementById(dim).style.display none; window.addEventListener(resize, function () { scrollTo(0, 0); setTimeout(() > { setBodyBackground() /*orientation*/ if (window.matchMedia((orientation: portrait)).matches) { console.log(window.outerHeight - window.innerHeight); //full size if (window.outerHeight - window.innerHeight window.outerHeight * safari_height) { document.getElementById(modal_close).style.display block; if (window.modals true) { openModal(./module/img/screen_guide.png); return; } } else if (window.outerHeight - window.innerHeight > window.outerHeight * safari_height) { document.getElementById(modal_close).style.display none openModal(./module/img/screen_guide.png); window.modals true; return; } } else if (window.matchMedia((orientation: landscape)).matches) { scrollTo(0, 0); if (window.outerHeight - window.innerHeight window.outerHeight * 0.1) { document.getElementById(modal_close).style.display block if (window.modals true) { openModal(./module/img/screen_guide.png); return; } //mini size } else if (window.outerHeight - window.innerHeight > window.outerHeight * 0.1) { document.getElementById(modal_close).style.display none openModal(./module/img/screen_guide.png); window.modals true; return; } } }, 500); }); } /*safari*/ /*crios*/ if (browserCheck() crios) { document.body.style.overflowX scroll; document.body.style.overflowY hidden; setScreen(); var delay 100; let timeSet; window.onresize function () { clearTimeout(timeSet); timeSet setTimeout(() > { setBodyBackground(); if (window.matchMedia((orientation: portrait)).matches) { if (window.outerHeight - window.innerHeight chrome_height) { if (window.scrollY > 0) { document.getElementById(dim).style.display none; } else { document.getElementById(dim).style.display block; } } else { document.getElementById(dim).style.display block; } } else if (window.matchMedia((orientation: landscape)).matches) { if (window.outerHeight - window.innerHeight 22) { document.getElementById(dim).style.display none; } else { document.getElementById(dim).style.display block; } } }, delay); } } /*crios*/ /*event*/ } else if (iPad()) { document.addEventListener(fullscreenchange, (e) > { document.webkitExitFullscreen(); }) document.querySelector(.rotation).style.display none; } else if (Mobile()) { setBodyBackground(); document.getElementById(dim).addEventListener(click, function () { document.getElementById(dim).style.display none; document.documentElement.requestFullscreen(); }); window.addEventListener(load, function () { document.getElementById(drag).src ./module/img/drag2.gif; document.getElementById(dim).style.minHeight 100%; if (!document.fullscreenElement) { document.getElementById(dim).style.display block; } else { document.getElementById(dim).style.display none; } }); window.addEventListener(resize, function () { setBodyBackground(); if (!document.fullscreenElement) { document.getElementById(dim).style.display block; } }); } /script> !--lucky vidosJS --> script typetext/javascript charsetUTF-8> var inappdeny_exec_vanillajs (callback) > { if (document.readyState ! loading) { callback(); } else { document.addEventListener(DOMContentLoaded, callback); } }; inappdeny_exec_vanillajs(() > { /* Do things after DOM has fully loaded */ function copytoclipboard(val) { var t document.createElement(textarea); document.body.appendChild(t); t.value val; t.select(); document.execCommand(copy); document.body.removeChild(t); }; function inappbrowserout() { copytoclipboard(window.location.href); }; /*kakao*/ var useragt navigator.userAgent.toLowerCase(); var target_url location.href; if (useragt.match(/kakaotalk/i)) { //kakao location.href kakaotalk://web/openExternal?url + encodeURIComponent(target_url); } else if (useragt.match(/line/i)) { //Line if (target_url.indexOf(?) ! -1) { location.href target_url + &openExternalBrowser1; } else { location.href target_url + ?openExternalBrowser1; } } }); /*exit pip mode */ /script>/body>/html>
View on OTX
|
View on ThreatMiner
Please enable JavaScript to view the
comments powered by Disqus.
Data with thanks to
AlienVault OTX
,
VirusTotal
,
Malwr
and
others
. [
Sitemap
]