You cannot see this page without javascript.

몇가지 환경을 검토한 후에 의심이 가는 부분은 사용하는 미들웨어(php) 버전이 7.x.x 버전이라 함수가 맞지 않는 것은 아닐까 하는 의심이 들었다.

 

먼저 업로드에 관한 구분을 확인하기 위해 에드온의 소스를 검토해본 결과 에드온에서 업로드 하는 것이 아닌것을 알 수 있었고, 보드의 모바일 스킨중 ex연동 스킨의 소스를 다시 뜯어보았다.

 

스킨에 폼은 있으나 업로드 관련기능 구현은 mobileex 모듈에서 하고 있었다.

 

다시 mobileex 모듈에서 소스를 여기저기 파해쳐 보았다.

 

의심 가는 곳은 두곳으로 압축되었다.

 

mobileex.controller.php 파일의 79번째줄

if( !eregi(strtoupper(str_replace('.', '', $allow_filetype->file_ext)),$imglist) ) $is_img = 'N';

 

mobileex.model.php 파일의 54번째줄

if(!eregi($file_name_ext,$allowed_filetypes) && $logged_info->is_admin != 'Y') $allow_filetype->allowed = false;

 

위의 두 줄은 php의 eregi함수를 쓴다.

 

이 함수는 php7에서는 보안취약점에 의하여 사라진 함수이며, php7에서는 preg_match함수로 대체하여 사용하여야 한다.

 

그리하여 다음과 같이 바꾸었다.

 

mobileex.controller.php 파일의 79번째줄

if( !preg_match("/strtoupper(str_replace('.', '', $allow_filetype->file_ext))/i",$imglist) ) $is_img = 'N';

 

mobileex.model.php 파일의 54번째줄

if(!preg_match("/$file_name_ext/i",$allowed_filetypes) && $logged_info->is_admin != 'Y') $allow_filetype->allowed = false;

 

그런대 재미있는 것은 이 모듈의 다른 문장에서 문자열 검출을 위한 함수는 모두 대체 함수를 쓰고 있다는 것이다.

 

왜 이 두줄에서만 예전 함수를 사용하는 지 의문이 든다.

 

아무튼 이렇게 수정 후 php7에서도 정상적으로 동작하는 것을 확인하였다.

엮인글 :
List of Articles
번호 제목 글쓴이 날짜 조회 수sort
329 Network vpn LynX 2016-06-29 264
328 웹 페이지의 원하는 테이블만 프린트 LynX 2013-03-15 268
327 Xyview DVR서버 연결 [8] LynX 2012-04-19 269
326 Xpress Engine XML 쿼리 대신 직접 mysql 사용하기 LynX 2014-07-19 273
325 웹 프린트 작업시 픽셀과 밀리미터간의 상관관계 (1mm=3.8px ) [8] LynX 2013-03-15 274
324 CentOS CentOS7 WHEEL 계정 추가 file LynX 2017-02-03 276
323 Windows 윈도우 8 pro key LynX 2014-05-26 278
322 32bit Driver을 64bi로 설치하기 [8] LynX 2011-06-21 282
321 윈도우서버2008 - 06 (보안 정책 및 감사) file [10] LynX 2012-11-28 285
320 Linux Linux Apache 2.4 설치 LynX 2014-06-27 287
319 Linux cinnamon [10] LynX 2014-12-11 287
318 Programing cab파일에 인증서 포함하기 LynX 2014-06-13 293
317 Linux [Linux] 특정 계정만 su -(root)를 통한 root접근 허용 LynX 2014-07-04 295
316 Server Windows7에 Apache 설치 file LynX 2013-09-05 297
315 LinuxMint LinuxMint PHP source 설치 [1] LynX 2014-12-30 297
314 Linux 10 - NFS,apache file [10] LynX 2012-11-29 298
313 Programing print script LynX 2013-12-11 300
312 CentOS7 ▒ Doly의 CentOS7 강좌15 5. CentOS 기본설정 2 - 날짜 및 시간설정 file [6] LynX 2014-10-23 300
311 Windows7 에서 시스템을 백업/복원하는 가장 쉬운 방법!! file LynX 2010-11-07 305
310 Linux 03 - VMware,네트워크,VMware인터넷설정,리눅스인터넷 file LynX 2012-11-29 305

XE Login