리자

CSRF 보안 결함은 막기 어렵다?

CSRF 와 관련되어 혼자만 생각하는것 보다는 여러 사람이 토론하는 것이 좋겠다고 판단되어 포럼에 글을 올렸습니다.

좋은 의견 남겨주세요.

포럼 게시판에 의견을 남겨주시면 감사하겠습니다.

|

댓글 6개

코드를 심어놓은 곳에 관리자만 접근하기를 대기하는 경우,

관리자가 행하여질 수 있는 모든 업데이트 폼과 업데이트간에

디비와 토큰과 회원이 알 수 없는 디비의 값을 md5로 생성하여 보내면 되지 않을까요.

저는 회원 가입일의 특정자리수의 값과 보낼 값과 아이디값과 여러값을 조합하여,

업데이트로 날리고 받는데서 값을 다시 재조합하여 이전 조합값과 재조한값과 체크를 합니다만..
>>ㅑ~~ 모르겠어..
고수의 말은 외계어...ㅠ.ㅠ
관리자는 폼과 업데이트를 체크하지 않는다는 것 입니다.

관리자의 권한을 악용방지를 위해 다음과 같이 폼과 업데이트 각각 처리를 해주면 간단히 될 듯 싶습니다.

게시판 수정과 업데이트의 예제입니다.



form


<?
// key 생성
$key1 = $bo_table;
$key2 = substr($member['mb_email'],2,6);
$key3 = substr($member['mb_datetime'],10,16);
$mkey = substr(md5($key1.$key2.$key3),0,10);
?>

<input type=hidden name="mkey" value="<?=$mkey?>">





update

<?
// key 생성
$key1 = $_POST['bo_table'];
$key2 = substr($member['mb_email'],2,6);
$key3 = substr($member['mb_datetime'],10,16);
$ukey = substr(md5($key1.$key2.$key3),0,10);


// 키값 체크
if ($_POST['mkey'] != $ukey) {

alert("잘못된 접근입니다.");

}
?>
애드민이 되고 나서 한번더 관리나 뭐를 위해선 중앙 페이지를 거치게 하고
중앙 페이지에서 한번더.. 비번 및 여러가지를 묻는다면?
원시적인 방법인거 같네요 ㅡ.ㅡㅋ
에휴 몰라~ 머리 아퐁... 36시간 안자고 헬렐레중인.. 1인

[http://www.sir.co.kr/img/emoticon/md77.gif]
관리자의 접속 IP를 지정해서 IP가 다르다면 그러한 체크를 해주는 것도 좋을 듯 싶네요.
관리자가 집에서만 하는게 아닐수도 있구...

일단 CSRF는 관리자가 로그인한곳에서 권한을 변경하는것이니...

소용이 없을것 같네요;
댓글을 작성하시려면 로그인이 필요합니다. 로그인

자유게시판

+
제목 글쓴이 날짜 조회
17년 전 조회 1,301
17년 전 조회 1,077
17년 전 조회 1,277
17년 전 조회 1,717
17년 전 조회 2,572
17년 전 조회 1,793
17년 전 조회 1,196
17년 전 조회 1,157
17년 전 조회 1,130
17년 전 조회 1,227
17년 전 조회 1,185
17년 전 조회 1,189
17년 전 조회 1,235
17년 전 조회 1,784
17년 전 조회 2,420
17년 전 조회 1,262
17년 전 조회 1,115
17년 전 조회 1,108
17년 전 조회 1,329
17년 전 조회 1,626
17년 전 조회 1,194
17년 전 조회 1,274
17년 전 조회 1,170
17년 전 조회 2,034
17년 전 조회 1,775
17년 전 조회 1,146
17년 전 조회 1,194
17년 전 조회 1,379
17년 전 조회 1,158
17년 전 조회 1,243
🐛 버그신고