[보안패치] 그누보드 4.34.02 정보
[보안패치] 그누보드 4.34.02첨부파일
본문
5월 16일 11시 이후로 아래 내용이 추가 되었습니다.
bbs/view_comment.php 에 추가 또는 수정합니다.
추가
// 코멘트를 새창으로 여는 경우 세션값이 없으므로 생성한다.
if ($is_admin && !$token)
{
set_session("ss_delete_token", $token = uniqid(time()));
}
-------------------------------------------------------------------------------------
4.34.02 (11.05.13)
: [보안패치] 이미지 태그의 src 속성에 삭제등의 링크가 있는 경우 게시물을 확인하는 것만으로도 데이터의 위변조가 가능하므로 이것을 막음
(국제정보보안센터[i2Sec]의 최종훈님께서 알려주셨습니다.)
: 캡챠 코드 변경 (비회원이 코멘트 댓글을 다른 경우 캡챠이미지를 변경할 수 있도록 수정)
(letsgolee 님께서 알려주셨습니다.)
[보안패치]
lib/common.lib.php 의 conv_content() 함수에 아래 코드를 추가합니다.
$content = preg_replace("/<(img[^>]+delete\.php[^>]+bo_table[^>]+)/i", "*** CSRF 감지 : <$1", $content);
$content = preg_replace("/<(img[^>]+delete_comment\.php[^>]+bo_table[^>]+)/i", "*** CSRF 감지 : <$1", $content);
$content = preg_replace("/<(img[^>]+logout\.php[^>]+)/i", "*** CSRF 감지 : <$1", $content);
bbs/delete.php 와 bbs/delete_comment.php 에 아래 코드를 추가합니다.
if ($is_admin)
{
if (!($token && get_session("ss_delete_token") == $token))
alert("토큰 에러로 삭제 불가합니다.");
}
bbs/view.php 에 아래 코드를 추가합니다.
if ($is_admin)
{
set_session("ss_delete_token", $token = uniqid(time()));
$delete_href = "javascript:del('./delete.php?bo_table=$bo_table&wr_id=$wr_id&token=$token&page=$page".urldecode($qstr)."');";
}
bbs/view_comment.php 에 추가 또는 수정합니다.
추가
// 코멘트를 새창으로 여는 경우 세션값이 없으므로 생성한다.
if ($is_admin && !$token)
{
set_session("ss_delete_token", $token = uniqid(time()));
}
...
수정
$list[$i][del_link] = "./delete_comment.php?bo_table=$bo_table&comment_id=$row[wr_id]&token=$token&cwin=$cwin&page=$page".$qstr;
[캡챠코드변경]
js/jquery.kcaptcha.js 전체
skin/board/basic/view_comment.skin.php 를 아래와 같이 변경합니다.
jQuery.fn.extend({...}); 를 삭제하시고
//jQuery(this).kcaptcha_load(); 이 코드를 아래 코드로 수정합니다.
if (comment_id && work == 'c')
$.kcaptcha_run();
bbs/view_comment.php 에 추가 또는 수정합니다.
추가
// 코멘트를 새창으로 여는 경우 세션값이 없으므로 생성한다.
if ($is_admin && !$token)
{
set_session("ss_delete_token", $token = uniqid(time()));
}
-------------------------------------------------------------------------------------
4.34.02 (11.05.13)
: [보안패치] 이미지 태그의 src 속성에 삭제등의 링크가 있는 경우 게시물을 확인하는 것만으로도 데이터의 위변조가 가능하므로 이것을 막음
(국제정보보안센터[i2Sec]의 최종훈님께서 알려주셨습니다.)
: 캡챠 코드 변경 (비회원이 코멘트 댓글을 다른 경우 캡챠이미지를 변경할 수 있도록 수정)
(letsgolee 님께서 알려주셨습니다.)
[보안패치]
lib/common.lib.php 의 conv_content() 함수에 아래 코드를 추가합니다.
$content = preg_replace("/<(img[^>]+delete\.php[^>]+bo_table[^>]+)/i", "*** CSRF 감지 : <$1", $content);
$content = preg_replace("/<(img[^>]+delete_comment\.php[^>]+bo_table[^>]+)/i", "*** CSRF 감지 : <$1", $content);
$content = preg_replace("/<(img[^>]+logout\.php[^>]+)/i", "*** CSRF 감지 : <$1", $content);
bbs/delete.php 와 bbs/delete_comment.php 에 아래 코드를 추가합니다.
if ($is_admin)
{
if (!($token && get_session("ss_delete_token") == $token))
alert("토큰 에러로 삭제 불가합니다.");
}
bbs/view.php 에 아래 코드를 추가합니다.
if ($is_admin)
{
set_session("ss_delete_token", $token = uniqid(time()));
$delete_href = "javascript:del('./delete.php?bo_table=$bo_table&wr_id=$wr_id&token=$token&page=$page".urldecode($qstr)."');";
}
bbs/view_comment.php 에 추가 또는 수정합니다.
추가
// 코멘트를 새창으로 여는 경우 세션값이 없으므로 생성한다.
if ($is_admin && !$token)
{
set_session("ss_delete_token", $token = uniqid(time()));
}
...
수정
$list[$i][del_link] = "./delete_comment.php?bo_table=$bo_table&comment_id=$row[wr_id]&token=$token&cwin=$cwin&page=$page".$qstr;
[캡챠코드변경]
js/jquery.kcaptcha.js 전체
skin/board/basic/view_comment.skin.php 를 아래와 같이 변경합니다.
jQuery.fn.extend({...}); 를 삭제하시고
//jQuery(this).kcaptcha_load(); 이 코드를 아래 코드로 수정합니다.
if (comment_id && work == 'c')
$.kcaptcha_run();
댓글 전체
감사합니다.
감사합니다. 잘 사용 하겠습니다.
감사 합니다.
감사 합니다! :)
코멘트를 새창으로 띄워서 삭제할 시 토큰 에러가 납니다.
view.php 파일에만
set_session("ss_delete_token", $token = uniqid(time()));
토큰을 선언해주고
view_comment.php 파일에는 $token 이 선언되지 않아서 그런거 같습니다. 알아서 추가해서 사용하세요.
관리자님이 업데이트 할 것 같은 분위기므로 자세한 내용은 생략;;;
view.php 파일에만
set_session("ss_delete_token", $token = uniqid(time()));
토큰을 선언해주고
view_comment.php 파일에는 $token 이 선언되지 않아서 그런거 같습니다. 알아서 추가해서 사용하세요.
관리자님이 업데이트 할 것 같은 분위기므로 자세한 내용은 생략;;;
새창으로 사용하는 분이 계시는지 몰랐습니다.
빨리 수정해 놓겠습니다.
빨리 수정해 놓겠습니다.
수고 하셨습니다.
감사합니다.
이번보안패치의 경우 약 2년전에 제가 언급한 내용과 비슷한데 이제야 패치가 되네요.
http://sir.co.kr/bbs/board.php?bo_table=g4_tiptech&wr_id=19870&sca=&sfl=mb_id%2C1&stx=kcho07&sop=and&spt=-364&page=1
http://sir.co.kr/bbs/board.php?bo_table=g4_tiptech&wr_id=19870&sca=&sfl=mb_id%2C1&stx=kcho07&sop=and&spt=-364&page=1
ㅎㅎ
전 관리자님이 게시물이 없어져도 그건 신경안쓰는 줄 알았어요.
전 관리자님이 게시물이 없어져도 그건 신경안쓰는 줄 알았어요.
전 관리자님의 글까지 삭제하면서까지 알려드렸는데 이제서야..
제가 얼마나 일을 안하는지 아시겠죠? ㅠㅠ
감사합니다:)
감사합니다.
감사 합니다. 잘 쓰겠습니다.
저 다시 그누보드에 푹 빠져볼려고 합니다. ^^ 잘쓸께요.
감사합니다.
감사합니다.
감사합니다......
패치 후 토큰에러로 게시글이 삭제가 안돼요..
저두... 토큰 에러 발생하네요;;
리스트에서 삭제 했을 경우에..
리스트에서 삭제 버튼을 삽입하여 활용할 경우 ㅠ.ㅠ
감사합니다
순서대로 확인 중,, 감사합니다.
감사합니다.
감사합니다.
그동안 관리를 안해 몇주 째 업데이트중입니다. 헉 힘들다.