서버 점검 안내

dsclub은 서비스의 안정성과 성능 향상을 위해
매일 04시 30분에 정기 점검이 진행됩니다.

점검 시간: 오전 4시 30분 ~ 4시 35분

해당 시간 동안 일시적으로 서비스에 접속이 불가능하오니, 양해 부탁드립니다.

프로필 보안기능 강화 > 개발 내역

프로필 보안기능 강화

페이지 정보

작성자 profile_image tak2 작성일 24-10-03 04:00 조회 31 댓글 0

본문

DSc(dsclub)의 기반인 Twave에서의 개인 프로필 탭(본인 프로필 수정할 수 있는 화면)의 보안, 팔로우 버그유도 부분을 파악하여 적절하게 차단/리다이렉트 처리하여 버그 또는 보안문제가 일어나지 않도록 수정하였습니다.


(Twave 테마에 적용 예정)


/member_profile.php (member_profile.skin.php)

<?php

if(!$member['mb_id']) alert('로그인후 이용해주세요', G5_BBS_URL.'/login.php'); // 로그인안하면 로그인페이지로

include_once(G5_LIB_PATH.'/latest.lib.php');


// add_stylesheet('css 구문', 출력순서); 숫자가 작을 수록 먼저 출력됨

add_stylesheet('<link rel="stylesheet" href="'.$member_skin_url.'/style.css">', 0);


// 현재 URL의 mb_id 파라미터 값을 가져옵니다.

$current_mb_id = isset($_GET['mb_id']) ? $_GET['mb_id'] : '';


// 회원의 mb_id 값

$member_mb_id = $member['mb_id'];


// mb_id가 일치하지 않는 경우

if ($current_mb_id !== $member_mb_id) {

    // 메시지를 출력합니다.

    echo "<script>alert('타인의 개인 프로필 탭은 확인할 수 없습니다.');</script>";

    

    // 현재 도메인을 자동으로 가져옵니다.

    $current_domain = ($_SERVER['HTTPS'] ? "https://" : "http://") . $_SERVER['HTTP_HOST'];

    

    // 도메인으로 리다이렉트합니다.

    echo "<script>window.location.href = '$current_domain';</script>";

    }

?>


/profile.php (profile.skin.php)

<?php

if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가

include_once(G5_LIB_PATH.'/latest.lib.php');


// add_stylesheet('css 구문', 출력순서); 숫자가 작을 수록 먼저 출력됨

add_stylesheet('<link rel="stylesheet" href="'.$member_skin_url.'/style.css">', 0);


$member_mb_id = get_member($row['mb_id']);


// 현재 URL의 mb_id 파라미터 값 가져오기

$current_mb_id = isset($_GET['mb_id']) ? $_GET['mb_id'] : null;


// 회원 정보의 mb_id

$member_mb_id = $member['mb_id'];


// mb_id가 일치하는지 확인

if ($current_mb_id === $member_mb_id) {

    // 일치할 경우 리다이렉트

    header("Location: /bbs/member_profile.php?mb_id=" . urlencode($member_mb_id));

    exit; // 스크립트 종료

}

?>


좋아요0 이 글을 좋아요하셨습니다

등록된 댓글이 없습니다.

전체 17건
게시물 검색

접속자집계

오늘
282
어제
1,153
최대
4,271
전체
294,456