Project: Wordpress Plugin GNUPAY – NHN KCP 1.2.3

Vulnerability: #7782187 (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/pp_cli_result.php:66 (show/hide source)
46      $corp_owner_nm = isset($_POST[ "corp_owner_nm"  ]) ? sanitize_text_field($_POST["corp_owner_nm"]) : '';                      // 대표자명
47      $corp_addr     = isset($_POST[ "corp_addr"      ]) ? sanitize_text_field($_POST["corp_addr"]) : '';                      // 사업장 주소
48      $corp_telno    = isset($_POST[ "corp_telno"     ]) ? sanitize_text_field($_POST["corp_telno"]) : '';                      // 사업장 대표 연락처
49      /* = -------------------------------------------------------------------------- = */
50      $tr_code    = isset($_POST[ "tr_code"    ]) ? sanitize_text_field($_POST["tr_code"]) : '';                             // 발행용도
51      $id_info    = isset($_POST[ "id_info"    ]) ? sanitize_text_field($_POST["id_info"]) : '';                             // 신분확인 ID
52      $amt_tot    = isset($_POST[ "amt_tot"    ]) ? sanitize_text_field($_POST["amt_tot"]) : '';                             // 거래금액 총 합
53      $amt_sup    = isset($_POST[ "amt_sup"    ]) ? sanitize_text_field($_POST["amt_sup"]) : '';                             // 공급가액
54      $amt_svc    = isset($_POST[ "amt_svc"    ]) ? sanitize_text_field($_POST["amt_svc"]) : '';                             // 봉사료
55      $amt_tax    = isset($_POST[ "amt_tax"    ]) ? sanitize_text_field($_POST["amt_tax"]) : '';                             // 부가가치세
56      /* = -------------------------------------------------------------------------- = */
57      $pay_type      = isset($_POST[ "pay_type"       ]) ? sanitize_text_field($_POST["pay_type"]) : '';                      // 결제 서비스 구분
58      $pay_trade_no  = isset($_POST[ "pay_trade_no"   ]) ? sanitize_text_field($_POST["pay_trade_no"]) : '';                      // 결제 거래번호
59      /* = -------------------------------------------------------------------------- = */
60      $mod_type   = isset($_POST[ "mod_type"   ]) ? sanitize_text_field($_POST["mod_type"]) : '';                             // 변경 타입
61      $mod_value  = isset($_POST[ "mod_value"  ]) ? sanitize_text_field($_POST["mod_value"]) : '';                             // 변경 요청 거래번호
62      $mod_gubn   = isset($_POST[ "mod_gubn"   ]) ? sanitize_text_field($_POST["mod_gubn"]) : '';                             // 변경 요청 거래번호 구분
63      $mod_mny    = isset($_POST[ "mod_mny"    ]) ? sanitize_text_field($_POST["mod_mny"]) : '';                             // 변경 요청 금액
64      $rem_mny    = isset($_POST[ "rem_mny"    ]) ? sanitize_text_field($_POST["rem_mny"]) : '';                             // 변경처리 이전 금액
65      /* = -------------------------------------------------------------------------- = */
66 $res_cd = isset($_POST[ "res_cd" ]) ? sanitize_text_field($_POST["res_cd"]) : ''; // 응답코드
67 $res_msg = isset($_POST[ "res_msg" ]) ? sanitize_text_field($_POST["res_msg"]) : ''; // 응답메시지 68 $cash_no = isset($_POST[ "cash_no" ]) ? sanitize_text_field($_POST["cash_no"]) : ''; // 현금영수증 거래번호
Threat level 2

Callstack:

@INLINE::/gnupay-kcp/kcp/m_order_approval_form.php /gnupay-kcp/kcp/m_order_approval_form.php:352 (show/hide source)
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  }
350  ?>
351  
352 <input type="hidden" name="res_cd" value="<?php echo $res_cd; ?>"> <!-- 결과 코드 -->
353 <input type="hidden" name="tran_cd" value="<?php echo $tran_cd; ?>"> <!-- 트랜잭션 코드 --> 354 <input type="hidden" name="enc_info" value="<?php echo $enc_info; ?>"> <!-- 암호화 정보 -->