리자

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,316
17년 전 조회 1,092
17년 전 조회 1,289
17년 전 조회 1,735
17년 전 조회 2,593
17년 전 조회 1,807
17년 전 조회 1,214
17년 전 조회 1,175
17년 전 조회 1,144
17년 전 조회 1,248
17년 전 조회 1,201
17년 전 조회 1,206
17년 전 조회 1,253
17년 전 조회 1,797
17년 전 조회 2,431
17년 전 조회 1,282
17년 전 조회 1,133
17년 전 조회 1,123
17년 전 조회 1,344
17년 전 조회 1,642
17년 전 조회 1,213
17년 전 조회 1,295
17년 전 조회 1,183
17년 전 조회 2,056
17년 전 조회 1,790
17년 전 조회 1,164
17년 전 조회 1,206
17년 전 조회 1,389
17년 전 조회 1,178
17년 전 조회 1,260