diff --git a/plugin/okname/find_hpcert2.php b/plugin/okname/find_hpcert2.php new file mode 100644 index 000000000..ffd4aac09 --- /dev/null +++ b/plugin/okname/find_hpcert2.php @@ -0,0 +1,155 @@ + $b) { + if($a < 17) { + $field[$a] = $b; + } + } + $resultCd = $field[0]; +} +else { + if($ret <=200) + $resultCd=sprintf("B%03d", $ret); + else + $resultCd=sprintf("S%03d", $ret); +} + +/* +echo "처리결과코드 :$resultCd
"; +echo "처리결과메시지 :$field[1]
"; +echo "거래일련번호 :$field[2]
"; +echo "인증일시 :$field[3]
"; +echo "DI :$field[4]
"; +echo "CI :$field[5]
"; +echo "성명 :$field[7]
"; +echo "생년월일 :$field[8]
"; +echo "성별 :$field[9]
"; +echo "내외국인구분 :$field[10]
"; +echo "통신사코드 :$field[11]
"; +echo "휴대폰번호 :$field[12]
"; +echo "리턴메시지 :$field[16]
"; +*/ + +// 인증결과처리 +$mb_name = $field[7]; +$req_num = $field[12]; +$mb_birth = $field[8]; +$mb_dupinfo = $field[4]; +$ci = $field[5]; + +$phone_no = hyphen_hp_number($req_num); +$md5_ci = md5($ci.$ci); + +$row = sql_fetch("select mb_id from {$g5['member_table']} where mb_id <> '{$member['mb_id']}' and mb_dupinfo = '{$md5_ci}'"); // ci데이터로 찾음 +if (!$row['mb_id']) { // ci로 등록된 계정이 없다면 + $row = sql_fetch("select mb_id from {$g5['member_table']} where mb_id <> '{$member['mb_id']}' and mb_dupinfo = '{$mb_dupinfo}'"); // di데이터로 찾음 + if(!$row['mb_id']) { + alert_close("인증하신 정보로 가입된 회원정보가 없습니다."); + exit; + } +} + +$g5['title'] = 'KCB 휴대폰 본인확인'; +include_once(G5_PATH.'/head.sub.php'); +?> +
+ "> +
+ + $b) { + if($a < 13) { + $field[$a] = $b; + } +} + +/* +$field_name_IPIN_DEC = array( + "dupInfo ", // 0 + "coinfo1 ", // 1 + "coinfo2 ", // 2 + "ciupdate ", // 3 + "virtualNo ", // 4 + "cpCode ", // 5 + "realName ", // 6 + "cpRequestNumber", // 7 + "age ", // 8 + "sex ", // 9 + "nationalInfo ", // 10 + "birthDate ", // 11 + "authInfo ", // 12 +); +*/ + +$mb_name = $field[6]; +$req_num = $field[7]; +$mb_birth = $field[11]; +$mb_dupinfo = $field[0]; +if(!empty($field[1])) { // 아이핀은 리턴받는 ci 데이터가 두가지인걸로 보아 개인별로 받는 곳이 다를 수도 있을것 같아서 추가함 2021-09-13 hjkim7153 + $ci = $field[1]; +}else if(!empty($field[2])) { + $ci = $field[2]; +}else{ + alert_close('아이핀 본인확인 중 오류가 발생했습니다. (ci 정보 없음) 오류코드 : '.$resultCd.'\\n\\n문의는 코리아크레딧뷰로 고객센터 02-708-1000 로 해주십시오.'); +} +$md5_ci = md5($ci.$ci); + +$row = sql_fetch("select mb_id from {$g5['member_table']} where mb_id <> '{$member['mb_id']}' and mb_dupinfo = '{$md5_ci}'"); // ci데이터로 찾음 +if (!$row['mb_id']) { // ci로 등록된 계정이 없다면 + $row = sql_fetch("select mb_id from {$g5['member_table']} where mb_id <> '{$member['mb_id']}' and mb_dupinfo = '{$mb_dupinfo}'"); // di데이터로 찾음 + if(!$row['mb_id']) { + alert_close("인증하신 정보로 가입된 회원정보가 없습니다."); + exit; + } +} +$g5['title'] = 'KCB 아이핀 본인확인'; +include_once(G5_PATH.'/head.sub.php'); +?> + +
+ "> +
+ +"; $mb_name = $field[7]; $req_num = $field[12]; $mb_birth = $field[8]; -$mb_dupinfo = $field[4]; +$di = $field[4]; +$ci = $field[5]; +$mb_dupinfo = md5($ci.$ci); // 통합인증 추가 후 ci로 변경 $phone_no = hyphen_hp_number($req_num); // 중복정보 체크 diff --git a/plugin/okname/ipin.config.php b/plugin/okname/ipin.config.php index c07993ddf..8b03fb980 100644 --- a/plugin/okname/ipin.config.php +++ b/plugin/okname/ipin.config.php @@ -36,7 +36,7 @@ if($config['cf_cert_use'] == 2) { } $idpCode = 'V'; -$returnUrl = G5_OKNAME_URL.'/ipin2.php'; // 아이핀 인증을 마치고 돌아올 페이지 주소 +$returnUrl = G5_OKNAME_URL.$resultPage; // 아이핀 인증을 마치고 돌아올 페이지 주소 $keypath = G5_OKNAME_PATH.'/key/okname.key'; // 키파일이 생성될 위치. 웹서버에 해당파일을 생성할 권한 필요. $memid = $cpCode; // 회원사코드 $reserved1 = '0'; //reserved1 diff --git a/plugin/okname/ipin1.php b/plugin/okname/ipin1.php index f721527e5..3e4fe4f3e 100644 --- a/plugin/okname/ipin1.php +++ b/plugin/okname/ipin1.php @@ -14,6 +14,14 @@ foreach($check_arrays as $key){ // 금일 인증시도 회수 체크 certify_count_check($member['mb_id'], 'ipin'); +switch($_GET['pageType']){ + case "register": + $resultPage = "/ipin2.php"; + break; + case "find": + $resultPage = "/find_ipin2.php"; + break; +} // KISA 취약점 내용(KVE-2018-0291) hpcert1.php의 $cmd 함수에 대한 인자 값은 hpcert_config.php 파일에서 설정되나, 이를 다른 페이지에서 포함한 뒤 호출할 시 임의 값 설정 가능 // 이에 include_once 를 require 로 수정함 require('./ipin.config.php'); diff --git a/plugin/okname/ipin2.php b/plugin/okname/ipin2.php index a916d1b82..f0ab7ef56 100644 --- a/plugin/okname/ipin2.php +++ b/plugin/okname/ipin2.php @@ -78,7 +78,15 @@ $field_name_IPIN_DEC = array( $mb_name = $field[6]; $req_num = $field[7]; $mb_birth = $field[11]; -$mb_dupinfo = $field[0]; +$di = $field[0]; +if(!empty($field[1])) { // 아이핀은 리턴받는 ci 데이터가 두가지인걸로 보아 개인별로 받는 곳이 다를 수도 있을것 같아서 추가함 2021-09-13 hjkim7153 + $ci = $field[1]; +}else if(!empty($field[2])) { + $ci = $field[2]; +}else{ + alert_close('아이핀 본인확인 중 오류가 발생했습니다. (ci 정보 없음) 오류코드 : '.$resultCd.'\\n\\n문의는 코리아크레딧뷰로 고객센터 02-708-1000 로 해주십시오.'); +} +$mb_dupinfo = md5($ci.$ci); // 통합인증 추가 후 ci로 변경 // 중복정보 체크 $sql = " select mb_id from {$g5['member_table']} where mb_id <> '{$member['mb_id']}' and mb_dupinfo = '{$mb_dupinfo}' ";