Project: Wordpress Plugin GNUPAY – NHN KCP 1.2.3

Vulnerability: #7782186 (2018-03-13 19:12:10)

Warning

There are many false positives, or unexploitable vulnerabilities. Please create working "PoC" exploit before reporting anything to vendor!

Details:

Sink PHP::echo
Risk _POST
/gnupay-kcp/kcp/m_order_approval_form.php:71 (show/hide source)
51      $use_pay_method  = isset($_POST["use_pay_method"]) ? gp_check_array_sanitize($_POST["use_pay_method"]) : ''; // 결제 방법
52      $enc_info        = isset($_POST["enc_info"]) ? gp_check_array_sanitize($_POST["enc_info"]) : ''; // 암호화 정보
53      $enc_data        = isset($_POST[ "enc_data"]) ? gp_check_array_sanitize($_POST["enc_data"]) : ''; // 암호화 데이터
54  	$rcvr_name		 = isset($_POST[ "rcvr_name"]) ? gp_check_array_sanitize($_POST["rcvr_name"]) : ''; // 수취인 이름
55  	$rcvr_tel1		 = isset($_POST[ "rcvr_tel1"]) ? gp_check_array_sanitize($_POST["rcvr_tel1"]) : ''; // 수취인 전화번호
56  	$rcvr_tel2		 = isset($_POST[ "rcvr_tel2"]) ? gp_check_array_sanitize($_POST["rcvr_tel2"]) : ''; // 수취인 휴대폰번호
57  	$rcvr_mail		 = isset($_POST[ "rcvr_mail"]) ? gp_check_array_sanitize($_POST["rcvr_mail"]) : ''; // 수취인 E-Mail
58  	$rcvr_zipx		 = isset($_POST[ "rcvr_zipx"]) ? gp_check_array_sanitize($_POST["rcvr_zipx"]) : ''; // 수취인 우편번호
59  	$rcvr_add1		 = isset($_POST[ "rcvr_add1"]) ? gp_check_array_sanitize($_POST["rcvr_add1"]) : ''; // 수취인 주소
60  	$rcvr_add2		 = isset($_POST[ "rcvr_add2"]) ? gp_check_array_sanitize($_POST["rcvr_add2"]) : ''; // 수취인 상세주소
61  
62      /* 주문폼에서 전송되는 정보 */
63      $ipgm_date       = isset($_POST[ "ipgm_date"]) ? gp_check_array_sanitize($_POST["ipgm_date"]) : ''; // 입금마감일
64      $settle_method   = isset($_POST[ "settle_method"  ]) ? gp_check_array_sanitize($_POST["settle_method"]) : ''; // 결제방법
65      $good_info       = isset($_POST[ "good_info"      ]) ? gp_check_array_sanitize($_POST["good_info"]) : ''; // 에스크로 상품정보
66      $bask_cntx       = isset($_POST[ "bask_cntx"      ]) ? gp_check_array_sanitize($_POST["bask_cntx"]) : ''; // 장바구니 상품수
67      $tablet_size     = isset($_POST[ "tablet_size"    ]) ? gp_check_array_sanitize($_POST["tablet_size"]) : ''; // 모바일기기 화면비율
68  
69      $comm_tax_mny    = isset($_POST[ "comm_tax_mny"   ]) ? gp_check_array_sanitize($_POST["comm_tax_mny"]) : ''; // 과세금액
70      $comm_vat_mny    = isset($_POST[ "comm_vat_mny"   ]) ? gp_check_array_sanitize($_POST["comm_vat_mny"]) : ''; // 부가세
71 $comm_free_mny = isset($_POST["comm_free_mny" ]) ? gp_check_array_sanitize($_POST["comm_free_mny"]) : ''; // 비과세금액
72 73 $payco_direct = isset($_POST["payco_direct" ]) ? gp_check_array_sanitize($_POST["payco_direct"]) : ''; // PAYCO 결제창 호출
Threat level 2

Callstack:

@INLINE::/gnupay-kcp/kcp/m_order_approval_form.php /gnupay-kcp/kcp/m_order_approval_form.php:347 (show/hide source)
327              BC 2,3,6개월, 국민 3,6개월, 삼성 6,9개월 무이자 : CCBC-02:03:06,CCKM-03:06,CCSS-03:06:04
328      <input type="hidden" name="kcp_noint_quota" value="CCBC-02:03:06,CCKM-03:06,CCSS-03:06:09"/> */
329  -->
330  <input type="hidden" name="kcp_noint"       value="<?php echo ($config['de_card_noint_use'] ? '' : 'N'); ?>">
331  
332  <?php
333  if( wc_tax_enabled() && ($config['de_tax_flag_use'] == 1 || $config['de_tax_flag_use'] == 'yes') ) {
334      /* KCP는 과세상품과 비과세상품을 동시에 판매하는 업체들의 결제관리에 대한 편의성을 제공해드리고자,
335         복합과세 전용 사이트코드를 지원해 드리며 총 금액에 대해 복합과세 처리가 가능하도록 제공하고 있습니다
336  
337         복합과세 전용 사이트 코드로 계약하신 가맹점에만 해당이 됩니다
338  
339         상품별이 아니라 금액으로 구분하여 요청하셔야 합니다
340  
341         총결제 금액은 과세금액 + 부과세 + 비과세금액의 합과 같아야 합니다.
342         (good_mny = comm_tax_mny + comm_vat_mny + comm_free_mny) */
343  ?>
344  <input type="hidden" name="tax_flag"          value="TG03">     <!-- 변경불가    -->
345  <input type="hidden" name="comm_tax_mny"	  value="<?php echo $comm_tax_mny; ?>">         <!-- 과세금액    -->
346  <input type="hidden" name="comm_vat_mny"      value="<?php echo $comm_vat_mny; ?>">         <!-- 부가세	    -->
347 <input type="hidden" name="comm_free_mny" value="<?php echo $comm_free_mny; ?>"> <!-- 비과세 금액 -->
348 <?php 349 }