[보안패치] 그누보드 4.34.16 정보
[보안패치] 그누보드 4.34.16첨부파일
본문
2011년 12월 5일 이전에 euc-kr 버전을 다운로드 받으신 회원님들중 게시판 생성이 제대로 되지 않는 경우가 발생하였을수 있습니다.
프로그램을 새로 다운로드 받으신후 다시 업로드하여 주십시오.
테이블 생성 SQL 코드에 charset 에 utf-8 이 지정되어 있던것을 수정하여 다시 올려 놓았습니다.
불편을 드려 죄송합니다.
------------------------------------------------------------------------------------
4.34.16 (11.11.15)
: [보안패치] XSS 취약점 권고에 대한 수정 (i2Sec-김태형님)
lib/common.lib.php 의 function conv_content() 에서
$content = preg_replace("#\/\*.*\*\/#iU", "", $content);
이 코드의 위치를 바꿔 해결함
// 이런 경우를 방지함 <IMG STYLE="xss:expr/*XSS*/ession(alert('XSS'))">
$content = preg_replace("#\/\*.*\*\/#iU", "", $content);
$content = preg_replace("/(on)([a-z]+)([^a-z]*)(\=)/i", "on$2$3$4", $content);
$content = preg_replace("/(dy)(nsrc)/i", "dy$2", $content);
$content = preg_replace("/(lo)(wsrc)/i", "lo$2", $content);
$content = preg_replace("/(sc)(ript)/i", "sc$2", $content);
//$content = preg_replace("/(ex)(pression)/i", "ex$2", $content);
$content = preg_replace("/\<(\w|\s|\?)*(xml)/i", "", $content);
// 이미지 태그의 src 속성에 삭제등의 링크가 있는 경우 게시물을 확인하는 것만으로도 데이터의 위변조가 가능하므로 이것을 막음
$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);
$content = preg_replace("/<(img[^>]+download\.php[^>]+bo_table[^>]+)/i", "*** CSRF 감지 : <$1", $content);
프로그램을 새로 다운로드 받으신후 다시 업로드하여 주십시오.
테이블 생성 SQL 코드에 charset 에 utf-8 이 지정되어 있던것을 수정하여 다시 올려 놓았습니다.
불편을 드려 죄송합니다.
------------------------------------------------------------------------------------
4.34.16 (11.11.15)
: [보안패치] XSS 취약점 권고에 대한 수정 (i2Sec-김태형님)
lib/common.lib.php 의 function conv_content() 에서
$content = preg_replace("#\/\*.*\*\/#iU", "", $content);
이 코드의 위치를 바꿔 해결함
// 이런 경우를 방지함 <IMG STYLE="xss:expr/*XSS*/ession(alert('XSS'))">
$content = preg_replace("#\/\*.*\*\/#iU", "", $content);
$content = preg_replace("/(on)([a-z]+)([^a-z]*)(\=)/i", "on$2$3$4", $content);
$content = preg_replace("/(dy)(nsrc)/i", "dy$2", $content);
$content = preg_replace("/(lo)(wsrc)/i", "lo$2", $content);
$content = preg_replace("/(sc)(ript)/i", "sc$2", $content);
//$content = preg_replace("/(ex)(pression)/i", "ex$2", $content);
$content = preg_replace("/\<(\w|\s|\?)*(xml)/i", "", $content);
// 이미지 태그의 src 속성에 삭제등의 링크가 있는 경우 게시물을 확인하는 것만으로도 데이터의 위변조가 가능하므로 이것을 막음
$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);
$content = preg_replace("/<(img[^>]+download\.php[^>]+bo_table[^>]+)/i", "*** CSRF 감지 : <$1", $content);
댓글 전체
어헉~ 고생하셨습니다.
ㄳㄳ
감사합니다~ 간만에 순위권... ^^;;
감사합니다.
감사합니다.
감사합니다
영어로땡큐
영어로땡큐
감사합니다.
감사합니다.아리가또
또.. 업데이트가 되었군요. 리자님 수고하셨습니다.
중국어 쎼쎼
수고 많으셨습니다.
감사합니다.
수고하셨습니다.
감사합니다.
감사합니다~!
감사합니다
ㄳㄳㄳㄳ
감사 합니다.
감사합니다.
감사합니다. ^^
감사합니당@@
감사합니다^^
감사합니다. 고생하셨습니다.
고맙습니다
감사합니다.
변경내역을 /lib/common.lib.php에 적으면 되는건가요 ~?
적는게 맞다면 최하단쪽에 적는지요 ..?
알려주세요 ㅠ!!
적는게 맞다면 최하단쪽에 적는지요 ..?
알려주세요 ㅠ!!
추가로 하단에 넣는게 아니라 기존의 내용을 위치만 옮기는거에요..
function conv_content << 이 문장으로 검색을 하셔서 해당함수로 가시구요,
그 함수 내에 아래의 내용이 있는 곳으로 내려가보세요. (4.34.15버전기준 477~478라인)
// 이런 경우를 방지함 <IMG STYLE="xss:expr/*XSS*/ession(alert('XSS'))">
$content = preg_replace("#\/\*.*\*\/#iU", "", $content);
이제 이 내용을 블럭지정하셔서 잘라내기 하시고,
다시 13줄정도 조금 올라가셔서 아래 문장을 찾으시고(4.34.15버전기준 464라인) 그 위에 잘라낸 문장을 붙여넣으시면 됩니다.
$content = preg_replace("/(on)([a-z]+)([^a-z]*)(\=)/i", "on$2$3$4", $content);
그럼 아래와 같은 모양이 되겠죠. 라인사이의 공백라인은 없어도 상관없습니다..
.......
//$content = preg_replace("/(on)([^\=]+)/i", "on$2", $content);
// 이런 경우를 방지함 <IMG STYLE="xss:expr/*XSS*/ession(alert('XSS'))">
$content = preg_replace("#\/\*.*\*\/#iU", "", $content);
$content = preg_replace("/(on)([a-z]+)([^a-z]*)(\=)/i", "on$2$3$4", $content);
.......
여기서 .......은 위아래 내용이 주욱 이어진다~ 뭐 이런 의미입니다.. 혹시나 하는 노파심에..;;
function conv_content << 이 문장으로 검색을 하셔서 해당함수로 가시구요,
그 함수 내에 아래의 내용이 있는 곳으로 내려가보세요. (4.34.15버전기준 477~478라인)
// 이런 경우를 방지함 <IMG STYLE="xss:expr/*XSS*/ession(alert('XSS'))">
$content = preg_replace("#\/\*.*\*\/#iU", "", $content);
이제 이 내용을 블럭지정하셔서 잘라내기 하시고,
다시 13줄정도 조금 올라가셔서 아래 문장을 찾으시고(4.34.15버전기준 464라인) 그 위에 잘라낸 문장을 붙여넣으시면 됩니다.
$content = preg_replace("/(on)([a-z]+)([^a-z]*)(\=)/i", "on$2$3$4", $content);
그럼 아래와 같은 모양이 되겠죠. 라인사이의 공백라인은 없어도 상관없습니다..
.......
//$content = preg_replace("/(on)([^\=]+)/i", "on$2", $content);
// 이런 경우를 방지함 <IMG STYLE="xss:expr/*XSS*/ession(alert('XSS'))">
$content = preg_replace("#\/\*.*\*\/#iU", "", $content);
$content = preg_replace("/(on)([a-z]+)([^a-z]*)(\=)/i", "on$2$3$4", $content);
.......
여기서 .......은 위아래 내용이 주욱 이어진다~ 뭐 이런 의미입니다.. 혹시나 하는 노파심에..;;
상세하고 친절한 답변 완전 감사합니다 ㅠㅠ
감사합니다.
감사합니다 ^^
고생하셨습니다.
감사합니다. ^^
감사합니다..ㅎㅎ
수고 하셨습니다.
감사합니다.
감사합니다.!!
감사합니다. ㅎㅎ
감사합니다.
감사합니다.
감사합니다..
저 모르는 사이에 나왔네요ㅋ
저 모르는 사이에 나왔네요ㅋ
고생하셨습니다. 감사합니다.
감사 이걸 왜 이제 봤지..
감사합니다.
언제나 감사 합니다.
감사합니다.
뉴질랜드에서~~
뉴질랜드에서~~
ㅇㅇ 쵝오
보안패치 될때마다 느끼는건데
보안관련부분은 따로 common.lib.php 에 넣지 말고 따로 security_include.php 이런 식으로
외부로 뺀뒤에 common.lib.php 에서 security_include.php 파일을 인클루트 하게 하면
어떨까요?
그러면 보안쪽 업데이트가 필요하다면 security_include.php 만 수정해주면 되므로
common.lib.php를 손댔던 사람/업체등에서도 손쉽게 업데이트 할 수 있을거라 생각합니다
^_^ 의견이니 검토 부탁할께요 ^^
보안관련부분은 따로 common.lib.php 에 넣지 말고 따로 security_include.php 이런 식으로
외부로 뺀뒤에 common.lib.php 에서 security_include.php 파일을 인클루트 하게 하면
어떨까요?
그러면 보안쪽 업데이트가 필요하다면 security_include.php 만 수정해주면 되므로
common.lib.php를 손댔던 사람/업체등에서도 손쉽게 업데이트 할 수 있을거라 생각합니다
^_^ 의견이니 검토 부탁할께요 ^^
보안부분은 끊이 없넹..감사
고맙게 잘사용하겠습니다
감사합니다. 사랑합니다.
아 적용해야 겠네요....^ ^
감사합니다.
그누짱~~~
그누짱~~~
감사합니다. 연말 잘 보내세요
감사합니다.
그누짱!!! 언제 한번 뵈요
감사합니다.
감사합니다.