쇼핑몰 관리자로 로그인해서 쇼핑몰 설정으로 들어갈려고 하는데 "exec 함수실행이 불가능하므로 사용할수 없습니다." 문구가 뜨면서 진입을 못하네요 KCP결제관련도 문제가 생긴것 같습니다.
호스팅사에 문의해본결과 php보안 업데이트 관련 조치사항으로 임의 해제조치는 어렵다는 답변을 받았습니다.
또한 kcp결재 모듈에서 제공하는 최신버전으로 exec등 실행함수가 아닌 api를 통한 연동으로 php버전 업데이트와 함께 업그레이드하여 이용을 권장하더군요
이경우 해결방법이 호스팅이전 밖에 없는것인지 이전하면 어느회사 호스팅이 적당한지 추천부탁드립니다.
답변 7개 / 댓글 7개
영카트 5.3333에 아미나 빌더를 사용 중이시면, 구버전 KCP 모듈이 exec 차단에 영향을 받는 상황으로 보입니다.
KCP에서 API 방식으로 전환하는 방법을 제공하고 있으니, 현재 호스팅에서 결제 연동을 변경하는 쪽도 검토해보시면 됩니다. 다만 영카트에 맞게 적용하는 작업은 필요합니다.
아미나 빌더까지 사용 중이라 최신 영카트를 그대로 덮어쓰시면 안되구요
php 버전을 올리셔도 어차피 5.3333 베이스라서 호환성에서 안됩니다.
관리자 설정에서 단순 exec on 을 해도 안되구요
따라서 kcp 에서 api 방식가이드대로 해당 결제 모듈만 업데이트 하는 방향으로 작업하시는걸 추천해드립니다.
답변에 대한 댓글 2개
댓글에 적으신 5.3.3.3을 기준으로 보면, 그누보드 업데이트와 KCP 결제 모듈의 API 전환을 따로 확인하셔야 합니다. 최신판으로 올리기만 하면 exec 의존성이 없어지는 것은 아닙니다.
현재 공식 5.6.43 소스에도 쇼핑몰 설정에서 pp_cli 실행 여부를 검사하는 코드가 있고, PC KCP 결제 라이브러리도 exec()로 실행 파일을 호출합니다. 그래서 경고를 띄우는 한 줄만 주석 처리하면 설정 화면은 열릴 수 있어도 실제 결제까지 복구됐다는 뜻은 아닙니다. 질문자 서버를 직접 검사한 결과는 아니고 공식 배포 소스를 확인한 내용입니다.
KCP 공식 REST API 전환 안내에는 승인·취소 요청을 HTTPS/JSON 방식으로 바꾸고, 기존 site_key 대신 서비스 인증서 등을 적용하도록 되어 있습니다. 현재 영카트 버전과 수정한 주문 처리 파일에 맞는 전환 모듈인지 먼저 확인해 보세요. 단순 파일 덮어쓰기보다 파일·DB 백업 후 별도 테스트 환경에서 PC/모바일 승인, 실패 처리, 취소, 사용 중인 가상계좌 입금 통보까지 확인하고 반영하는 편이 좋습니다. 인증서·개인키·관리자 비밀번호는 게시판에 올리지 마세요.
호스팅 이전을 결정하기 전에, 현재 호스팅에서 KCP API용 HTTPS 통신과 필요한 PHP 확장 기능을 지원하는지 확인하고 KCP 기술지원에 “영카트 5.3.3.3의 pp_cli 결제를 exec 없이 전환할 수 있는 호환 모듈/지원 범위”를 문의하시는 순서를 권합니다. 보안 패치가 불필요하다는 뜻은 아니며, 보안 업데이트만으로 결제 연동 방식까지 자동 변경된다고 보기는 어렵습니다.
공식 코드: https://github.com/gnuboard/gnuboard5/blob/f8059c231a9377b69bc594f42836463c27fa9df6/adm/shop_admin/configform.php#L1839-L1869
결제 실행 부분: https://github.com/gnuboard/gnuboard5/blob/f8059c231a9377b69bc594f42836463c27fa9df6/shop/kcp/pp_ax_hub_lib.php#L293-L300
KCP 전환 안내: https://developer.kcp.co.kr/guide/rest-api-guide
php.ini ,에서 허용하겟다고 설정해주셔야 합니다.
만약 서버 루트 권한이 없는 웹호스팅일경우 서버담당 관리자 한테
shell_exec(), system(), passthru() 허용해달라고 요청하셔야합니다.
답변에 대한 댓글 4개
아무리 카페24에서 대응이 빨라도 그누보드 구버전은 문법과 호환성오류가 생긴다는 거지요.. 그걸 php 버전에 맞게 노가다 작업을 해야 하는 것이고.. 그누보드 버전 패치가 있을때마다 반영을 못하면 똑같은 거지요.. 카페24에 이전해도 똑같습니다.. 어떤 호스팅도 지금 당장은 exec 함수실행 허용해준다고 해도 시간지나면 보안때문에 차단할수밖에 없을것입니다. KCP REST API 결제 모듈로 소스를 교체해야 해결되는 문제지요..
답변을 작성하려면 로그인이 필요합니다.