그누보드를 사용하면서 alert 경고창으로 이런 문구를 본 적이 있을 것이다.
'정상적으로 로그인하여 접근하시기 바랍니다.'
이것은 그누보드의 관리자 화면에 접속할 때 몇몇 사람들에게 생기는 현상인데 처음 접한 사람이라면 당황할 수 밖에 없을 것이다.
뿐만 아니라 관리자 화면에 접속하고서도 메뉴 등 버튼을 눌렀을 때 로그아웃 되는 현상이 발생할 수 있다.
이것에는 여러가지 이유가 있을 수 있으나 필자가 해결한 방법은 아래와 같다.
우선 필자는 처음에 데스크톱으로 ftp를 활용하여 서버에 그누보드를 설치했는데 다른 PC와 노트북으로 사이트에 접속하여 adm페이지, 관리자화면에 접속했을 때 오류가 발생하였다.
'정상적으로 로그인하여 접근하시기 바랍니다' 라는 경고창의 소스는 admin.lib.php 파일에서 찾을 수 있는데 이를 통하여 오류의 발생 원인 또한 이 파일에 있다는 것을 알 수 있다. 참고로 admin.lib.php 파일은 gnuboard/adm 폴더에 있다.
문제가 발생하는 원인을 추측해보자면 누군가가 해킹 등 나쁜 목적으로 관리자 페이지에 접근하는 것을 막기 위해 관리자 pc와 정보가 다를 때 접근을 막는 것이 이러한 문제를 일으키는 것 같다.
해결 방법
: 오류의 원인이 되는 소스를 삭제, 변경하거나 주석처리한다.
그누보드4 |
admin.lib.php (변경 전) |
// 관리자의 아이피, 브라우저와 다르다면 세션을 끊고 관리자에게 메일을 보낸다. $admin_key = md5($member[mb_datetime] . $_SERVER['REMOTE_ADDR'] . $_SERVER['HTTP_USER_AGENT']); |
admin.lib.php (변경 후) |
// 관리자의 아이피, 브라우저와 다르다면 세션을 끊고 관리자에게 메일을 보낸다. // $admin_key = md5($member['mb_datetime'] . $_SERVER['REMOTE_ADDR'] . $_SERVER['HTTP_USER_AGENT']); $admin_key = md5($member['mb_datetime'] . $_SERVER['REMOTE_ADDR'] . preg_replace('/; ; NCLIENT50\S*\)/',')',$_SERVER['HTTP_USER_AGENT'])); //출처 5.0.30 버전 보안툴로 인한 문제 해결 (정상적으로 로그인하여 접근하시기 바랍니다.)|작성자 질풍이 |
그누보드5 |
admin.lib.php (변경 전) |
// 관리자의 아이피, 브라우저와 다르다면 세션을 끊고 관리자에게 메일을 보낸다. $admin_key = md5($member['mb_datetime'] . $_SERVER['REMOTE_ADDR'] . $_SERVER['HTTP_USER_AGENT']); if (get_session('ss_mb_key') !== $admin_key) {
session_destroy();
include_once(G5_LIB_PATH.'/mailer.lib.php'); // 메일 알림 mailer($member['mb_nick'], $member['mb_email'], $member['mb_email'], 'XSS 공격 알림', $_SERVER['REMOTE_ADDR'].' 아이피로 XSS 공격이 있었습니다.\n\n관리자 권한을 탈취하려는 접근이므로 주의하시기 바랍니다.\n\n해당 아이피는 차단하시고 의심되는 게시물이 있는지 확인하시기 바랍니다.\n\n'.G5_URL, 0);
alert_close('정상적으로 로그인하여 접근하시기 바랍니다.'); } |
admin.lib.php (변경 후) |
// 관리자의 아이피, 브라우저와 다르다면 세션을 끊고 관리자에게 메일을 보낸다. /*$admin_key = md5($member['mb_datetime'] . $_SERVER['REMOTE_ADDR'] . $_SERVER['HTTP_USER_AGENT']); if (get_session('ss_mb_key') !== $admin_key) {
session_destroy();
include_once(G5_LIB_PATH.'/mailer.lib.php'); // 메일 알림 mailer($member['mb_nick'], $member['mb_email'], $member['mb_email'], 'XSS 공격 알림', $_SERVER['REMOTE_ADDR'].' 아이피로 XSS 공격이 있었습니다.\n\n관리자 권한을 탈취하려는 접근이므로 주의하시기 바랍니다.\n\n해당 아이피는 차단하시고 의심되는 게시물이 있는지 확인하시기 바랍니다.\n\n'.G5_URL, 0);
alert_close('정상적으로 로그인하여 접근하시기 바랍니다.'); }*/ |