[그누보드] 2012년 4월 23일자 보안패치 4.34.23
페이지 정보
본문
웹드로우에서 제작된 홈페이지 중 그누보드를 사용하는 홈페이지에 대한 2012년 4월 23일자 패치 입니다. 패치전 반드시 해당파일을 백업 후 실행하시길 바랍니다.
다운로드한 후 압축을 푸시고 FTP로 접속하여 압축을 푼 파일 전체를 덮어 씌우기하시면 됩니다.
※ 주의 : 관리자모드 버전정보를 확인해 보시고 이미 패치가 되어 있다면 안하셔도 되며, 패치 날짜에 맞게 순차적으로 패치를 하여야 합니다. 패치가 어려우신 분은 별도로 문의 바랍니다.
주문형 제작과 해당 파일의 기능추가일 경우 해당파일을 일일이 비교하며 소스를 수정해야 합니다.
#######################################################
4.34.24 (2012.04.23)
: 4.34.23의 conv_content() 함수내에 함수가 선언되어 그누보드외 프로그램에서 오류가 발생했습니다.
bad120422() 함수를 conv_content() 바깥으로 이동시켜 해결하였습니다. (지니아빠님께서 알려 주셨습니다.)
lib/common.lib.php
: 4.34.23의 conv_content() 함수내에 함수가 선언되어 그누보드외 프로그램에서 오류가 발생했습니다.
bad120422() 함수를 conv_content() 바깥으로 이동시켜 해결하였습니다. (지니아빠님께서 알려 주셨습니다.)
lib/common.lib.php
4.34.23 (2012.04.22)
: [XSS] OBJECT 태그에서 javascript를 실행할수 있는 버그를 수정 (i2Sec 8기 하동민님께서 알려 주셨습니다.)
: [XSS] 글쓰기시 이름에 HTML 태그가 입력되지 못하도록 수정 (i2Sec 8기 강우창님께서 알려 주셨습니다.)
: login, logout시 외부로 리다이렉트 할 우려가 있어 url에 도메인을 지정하지 못하도록 수정 (i2Sec 8기 조민기님께서 알려 주셨습니다.)
: cheditor4의 삭제 코드에 문제가 있어 이번 버전부터는 cheditor4는 제외하고 배포합니다. (i2Sec 8기 조민기님께서 알려 주셨습니다.)
: 이외에도 i2Sec 8기 여러분들께서 SQL Injection 등의 오류를 알려 주셨으나 그누보드4가 소스코드를 오픈하고 있으므로
해당 오류는 SQL Injection으로 보기 어렵습니다. 도움주신 i2Sec 8기 여러분들께 감사의 말씀을 전합니다.
lib/common.lib.php 의
function bad120422($matches)
{
$code = $matches[1];
if (preg_match("#script#i", $code)) {
return "OBJECT 태그에 스크립트는 사용 불가합니다.";
} else if (preg_match("#base64#i", $code)) {
return "OBJECT 태그에 BASE64는 사용 불가합니다.";
}
}
// object 태그에서 javascript 코드 막기
$content = preg_replace_callback("#<object([^>]+)>#i", "bad120422", $content);
bbs/write_update.php 의
$wr_name = strip_tags(mysql_escape_string($_POST['wr_name']));
bbs/login.php
bbs/logout.php 의
$p = parse_url($url);
if ($p['scheme'] || $p['host']) {
alert("url에 도메인을 지정할 수 없습니다.");
}
: [XSS] OBJECT 태그에서 javascript를 실행할수 있는 버그를 수정 (i2Sec 8기 하동민님께서 알려 주셨습니다.)
: [XSS] 글쓰기시 이름에 HTML 태그가 입력되지 못하도록 수정 (i2Sec 8기 강우창님께서 알려 주셨습니다.)
: login, logout시 외부로 리다이렉트 할 우려가 있어 url에 도메인을 지정하지 못하도록 수정 (i2Sec 8기 조민기님께서 알려 주셨습니다.)
: cheditor4의 삭제 코드에 문제가 있어 이번 버전부터는 cheditor4는 제외하고 배포합니다. (i2Sec 8기 조민기님께서 알려 주셨습니다.)
: 이외에도 i2Sec 8기 여러분들께서 SQL Injection 등의 오류를 알려 주셨으나 그누보드4가 소스코드를 오픈하고 있으므로
해당 오류는 SQL Injection으로 보기 어렵습니다. 도움주신 i2Sec 8기 여러분들께 감사의 말씀을 전합니다.
lib/common.lib.php 의
function bad120422($matches)
{
$code = $matches[1];
if (preg_match("#script#i", $code)) {
return "OBJECT 태그에 스크립트는 사용 불가합니다.";
} else if (preg_match("#base64#i", $code)) {
return "OBJECT 태그에 BASE64는 사용 불가합니다.";
}
}
// object 태그에서 javascript 코드 막기
$content = preg_replace_callback("#<object([^>]+)>#i", "bad120422", $content);
bbs/write_update.php 의
$wr_name = strip_tags(mysql_escape_string($_POST['wr_name']));
bbs/login.php
bbs/logout.php 의
$p = parse_url($url);
if ($p['scheme'] || $p['host']) {
alert("url에 도메인을 지정할 수 없습니다.");
}
- 이전글[쇼핑몰] 결제금액위변조 방지 방안 마련 공지 12.04.24
- 다음글[쇼핑몰 KCP버전] 2012년 4월 19일자 패치 12.04.20