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 조회 수
69 Programing Magic Square (마방진) - 마방진코드와 나의 생각 03 LynX 2016-08-09 1564
68 Linux firewalld DDOS 차단 LynX 2016-08-22 953
67 Linux Apache httpd mod_evasive compile LynX 2016-08-22 245
66 Linux 하위 디렉토리 문자열 일괄검색,치환 LynX 2016-08-24 250
65 Server 웹 동접자 수 확인 코드 LynX 2016-09-08 831
64 Xpress Engine 현재접속과 로그인 수 표시 addon file LynX 2016-09-10 1476
63 Linux DDOS 방어 LynX 2016-09-19 456
62 Xpress Engine xe 현재접속과 로그인 수 표시 addon 수정본 file [1] LynX 2016-09-20 2238
61 Xpress Engine xe 포인트 레벨과 등급 동기화 에드온 2.0 file LynX 2016-09-21 1277
60 Xpress Engine xe 현재접속과 로그인 수 표시 addon 1.3.0 file LynX 2016-09-22 1522
59 APM php7에 memcache.so 확장 모듈 적용 file LynX 2016-09-23 415
58 APM php에 memcached.so 확장 모듈 적용 file LynX 2016-09-23 221
57 Xpress Engine XE에 memcache 사용 설정 LynX 2016-09-23 242
» Xpress Engine mobileex 사용하여 모바일에서 첨부파일 올릴때 무한 로딩 현상 LynX 2016-09-27 239
55 APM PHP Suhosin 설치 file LynX 2016-09-28 222
54 Linux MAME file LynX 2016-09-28 320
53 LinuxMint joystick install file LynX 2016-09-30 476
52 Linux linux 시간설정 file LynX 2016-10-07 398
51 APM php opcache 설치 file LynX 2016-10-14 1423
50 Network pka파일 만드는 방법 file LynX 2016-10-24 1591

XE Login