[보안패치] 그누보드 4.22.03 정보
[보안패치] 그누보드 4.22.03
첨부파일
본문
            
            
                        4.22.03 (08.03.31)
: 아이디/패스워드 찾기 페이지 로봇에 의한 접근 차단 (GD Lib 사용자만 사용 가능)
skin/member/basic/password_forget2.skin.php
bbs/password_forget2.php
bbs/password_forget3.php
반드시 패치 하시기 바랍니다.
        
                
                
    : 아이디/패스워드 찾기 페이지 로봇에 의한 접근 차단 (GD Lib 사용자만 사용 가능)
skin/member/basic/password_forget2.skin.php
bbs/password_forget2.php
bbs/password_forget3.php
반드시 패치 하시기 바랍니다.
댓글 전체
                    앗~ 1등이다... ㅋㅋ                            
            
            
            
                        
            
                    
                    이렇게 하면 대략 끼어들기 2등 ㅋㅋ                            
            
            
            
                        
            
                    
                    3등이 어려워졌네... ;;                            
            
            
            
                        
            
                    
                    본문중에 bbs/norobot_image.php 이거도 추가해야겠네요.                            
            
            
            
                        
            
                    
                    훗 -_-v                            
            
            
            
                        
            
                    
                    난 끼어들기 5등                            
            
            
            
                        
            
                    
                    이러면 몇등?                            
            
            
            
                        
            
                    
                    2등~~ 근데 파일이..                            
            
            
            
                        
            
                    
                    수고하십니다.
이젠 별별곳까지 로봇이 기승을 부리는군요..
            
            
            
                        
            
                    이젠 별별곳까지 로봇이 기승을 부리는군요..
                    4등~ 아~ 또 패치할려면 고생이 ㅠ.ㅠ;;                            
            
            
            
                        
            
                    
                    빠른 패치 감사 합니다.                            
            
            
            
                        
            
                    
                    정말 수고많으십니다^^ (__)                            
            
            
            
                        
            
                    
                    수고하셨습니다..감사합니다..                            
            
            
            
                        
            
                    
                    감사합니다. ^^                            
            
            
            
                        
            
                    
                    수고 하셨습니다.
그런데 손본데가 많은데 ㅜ.ㅜ 어흙
            
            
            
                        
            
                    그런데 손본데가 많은데 ㅜ.ㅜ 어흙
                    리자님~ 통합 패치 한번만..........-ㅅ-                            
            
            
            
                        
            
                    
                    ^^ 
수고하셨습니다.
감사합니다.
            
            
            
                        
            
                    수고하셨습니다.
감사합니다.
                    고수님들 이걸 어떻게 패치해야 하는지 구체적으로 말좀해주세요.
skin/member/basic/password_forget2.skin.php
bbs/password_forget2.php
bbs/password_forget3.php
이 경로에 있는 password_forget2.skin.php ,password_forget2.php , password_forget3.php
이 세개 파일을 패치 해야된다는건데..
이걸 어떻게 패치해야 하는지용
            
            
            
                        
            
                    skin/member/basic/password_forget2.skin.php
bbs/password_forget2.php
bbs/password_forget3.php
이 경로에 있는 password_forget2.skin.php ,password_forget2.php , password_forget3.php
이 세개 파일을 패치 해야된다는건데..
이걸 어떻게 패치해야 하는지용
                    수정한 것이 없다면 그냥 엎어 씌우면 됩니다.                            
            
            
            
                        
            
                    
                    감사 합니다                            
            
            
            
                        
            
                    
                    고맙습니다.                            
            
            
            
                        
            
                    
                    로봇 꼼짝마!!                            
            
            
            
                        
            
                    
                    utf-8버전 압축해제시 에러나는데 확인 부탁드립니다.                            
            
            
            
                        
            
                    
                    고맙습니다.                            
            
            
            
                        
            
                    
                    감사합니다...^^                            
            
            
            
                        
            
                    
                    감사                            
            
            
            
                        
            
                    
                    늘 감사합니다.                            
            
            
            
                        
            
                    
                    감사합니다. 동일글                            
            
            
            
                        
            
                    
                    GD Lib 사용자가 아니라면 패치불가? 근데, GD Lib 사용자 인지 아닌지는 어떻게 알 수 있나요??                            
            
            
            
                        
            
                    
                    php파일하나만드시고 안에 내용은 아래걸넣어주시고 web상으로 만드신php파일을봐보세요.
<?
phpinfo();
?>
            
            
            
                        
            
                    <?
phpinfo();
?>
                    결과 중 아래와 같은 gd 결과가 나오던데 그럼, 저 계정은 gd lib 가능한거 아닌가요?
---------------------------------------------------------------------------------------------
gd
GD Support | enabled
GD Version | 2.0 or higher
FreeType Support | enabled
FreeType Linkage | with freetype
GIF Read Support | enabled
GIF Create Support | enabled
JPG Support | enabled
PNG Support | enabled
WBMP Support | enabled
gettext
GetText Support | enabled
            
            
            
                        
            
                    ---------------------------------------------------------------------------------------------
gd
GD Support | enabled
GD Version | 2.0 or higher
FreeType Support | enabled
FreeType Linkage | with freetype
GIF Read Support | enabled
GIF Create Support | enabled
JPG Support | enabled
PNG Support | enabled
WBMP Support | enabled
gettext
GetText Support | enabled
                    네. 가능합니다.                            
            
            
            
                        
            
                    
                    좋은자료 감사합니다.                            
            
            
            
                        
            
                    
                    수고하셨씁니다.                            
            
            
            
                        
            
                    
                    잘쓰겠습니다.                            
            
            
            
                        
            
                    
                    감사감사~~~                            
            
            
            
                        
            
                    
                    감사합니다~                            
            
            
            
                        
            
                    
                    음...                            
            
            
            
                        
            
                    
                    아직도 로봇이 들락날락해요;ㅠㅠ 로봇은 뭔가요;                            
            
            
            
                        
            
                    
                    감사합니다.                            
            
            
            
                        
            
                    
                    감사합니다..수고하셨습니다.                            
            
            
            
                        
            
                    
                    감사합니다. 잘 쓰도록 하겠습니다.                            
            
            
            
                        
            
                    
                    감사합니다. 잘쓸게요~~                            
            
            
            
                        
            
                    
                    저만그런가요..파일 다운로드가 온전하게 안되네요..                            
            
            
            
                        
            
                    
                    감사합니다.                            
            
            
            
                        
            
                    
                    고생하셨습니다~
잘 사용할께요~
            
            
            
                        
            
                    잘 사용할께요~
                    좋은 자료 잘 쓰겠습니다.. 감사드립니다..                            
            
            
            
                        
            
                    
                    수고하셨습니다.... 감사                            
            
            
            
                        
            
                    
                    수고하셨습니다.  감사합니다.
즐거운 하루 되세요!!
            
            
            
                        
            
                    즐거운 하루 되세요!!
                    4.22.02 을 받은뒤에 이거 다시 덮어씌워야 하나보군요. -_- ;;                            
            
            
            
                        
            
                    
                    이것 그대로 사용해도 됩니다.                            
            
            
            
                        
            
                    
                    [질문] 그런데 skin/member/basic/password_forget2.skin.php  파일은 바로 전 버전 대비 어디가 수정된것 인가요? 기존 버전 파일과 똑같은것 같은데요? 제가 못찾은 건가요? ^^;;                            
            
            
            
                        
            
                    
                    항상 감사합니다.                            
            
            
            
                        
            
                    
                    수고하셨습니다~                            
            
            
            
                        
            
                    
                    감사합니다. 잘 쓸게요 ^^                            
            
            
            
                        
            
                    
                    감사합니다 :)                            
            
            
            
                        
            
                    
                    잘받아가요^                            
            
            
            
                        
            
                    
                    Thank you!                            
            
            
            
                        
            
                    
                    4.22.00 → 4.22.02 → 4.22.03 업데이트 변경된거만 정리해봤습니다.
파일: http://happyjung.com/gnuboard/bbs/board.php?bo_table=data&wr_id=93
js/common.js
### 변경전
// 폼메일 창
function win_formmail(mb_id, name, email)
{
win_open(g4_path+"/" + g4_bbs + "/formmail.php?mb_id="+mb_id+"&name="+name+"&email="+email, "winFormmail", "left=50, top=50, width=600, height=480, scrollbars=0");
}
### 변경후
// 폼메일 창
function win_formmail(mb_id, name, email)
{
if (g4_charset.toLowerCase() == 'euc-kr')
win_open(g4_path+"/" + g4_bbs + "/formmail.php?mb_id="+mb_id+"&name="+name+"&email="+email, "winFormmail", "left=50, top=50, width=600, height=480, scrollbars=0");
else
win_open(g4_path+"/" + g4_bbs + "/formmail.php?mb_id="+mb_id+"&name="+encodeURIComponent(name)+"&email="+email, "winFormmail", "left=50, top=50, width=600, height=480, scrollbars=0");
}
skin/board/basic/write.skin.php
### 변경전
echo "<img src='$g4[bbs_path]/norobot_image.php' border='0'>";
### 변경후
echo "<img src='$g4[bbs_path]/norobot_image.php?{$g4['server_time']}' border='0'>";
skin/member/basic/register_form.skin.php
### 변경전
echo "<img src='$g4[bbs_path]/norobot_image.php' border='0'>";
### 변경후
echo "<img src='$g4[bbs_path]/norobot_image.php?{$g4['server_time']}' border='0'>";
skin/member/basic/password_forget2.skin.php
### 변경전
<tr>
<td height="30"></td>
<td colspan="2" valign="top">
<input type=text name='mb_password_a' size=55 required itemname='패스워드 분실시 답변' value=''>
</td>
</tr>
### 변경후
<tr>
<td height="30"></td>
<td colspan="2" valign="top">
<input type=text name='mb_password_a' size=55 required itemname='패스워드 분실시 답변' value=''>
</td>
</tr>
<tr>
<td height="40" align="center"><img src="<?=$member_skin_path?>/img/icon_02.gif" width="6" height="6"></td>
<td colspan="2">
<?="<img src='$g4[bbs_path]/norobot_image.php?".time()."' border='0' align='absmiddle'>";?>
<input type=text name='wr_key' size=10 required itemname='자동등록방지 코드'> 자동등록방지 코드를 입력하세요.
</td>
</tr>
skin/member/basic/password_forget2.skin.php
### 변경전
<script language='JavaScript'>
function fpasswordforget2_submit(f)
{
f.action = "./password_forget3.php";
f.submit();
}
document.fpasswordforget2.mb_password_a.focus();
</script>
### 변경후
<script language="javascript" src="<?=$g4['path']?>/js/md5.js"></script>
<script language='javascript'> var md5_norobot_key = '<?=md5($norobot_key)?>'; </script>
<script language='JavaScript'>
function fpasswordforget2_submit(f)
{
if (hex_md5(f.wr_key.value) != md5_norobot_key) {
alert('자동등록방지용 코드가 순서대로 입력되지 않았습니다.');
f.wr_key.focus();
return;
}
f.action = "./password_forget3.php";
f.submit();
}
document.fpasswordforget2.mb_password_a.focus();
</script>
bbs/password_forget2.php
### 변경전
include_once("./_common.php");
### 변경후
include_once("./_common.php");
// 토큰 생성
$token = md5(uniqid(rand(), true));
set_session("ss_token", $token);
$norobot_key = substr($token, 0, rand(4,6));
set_session("ss_norobot_key", $norobot_key);
bbs/password_forget3.php
### 변경전
include_once("./_common.php");
### 변경후
include_once("./_common.php");
$wr_key = trim($_POST[wr_key]);
if (!($wr_key && $wr_key == get_session('ss_norobot_key'))) {
alert("정상적인 접근이 아닌것 같습니다.");
}
            
            
            
                        
            
                    파일: http://happyjung.com/gnuboard/bbs/board.php?bo_table=data&wr_id=93
js/common.js
### 변경전
// 폼메일 창
function win_formmail(mb_id, name, email)
{
win_open(g4_path+"/" + g4_bbs + "/formmail.php?mb_id="+mb_id+"&name="+name+"&email="+email, "winFormmail", "left=50, top=50, width=600, height=480, scrollbars=0");
}
### 변경후
// 폼메일 창
function win_formmail(mb_id, name, email)
{
if (g4_charset.toLowerCase() == 'euc-kr')
win_open(g4_path+"/" + g4_bbs + "/formmail.php?mb_id="+mb_id+"&name="+name+"&email="+email, "winFormmail", "left=50, top=50, width=600, height=480, scrollbars=0");
else
win_open(g4_path+"/" + g4_bbs + "/formmail.php?mb_id="+mb_id+"&name="+encodeURIComponent(name)+"&email="+email, "winFormmail", "left=50, top=50, width=600, height=480, scrollbars=0");
}
skin/board/basic/write.skin.php
### 변경전
echo "<img src='$g4[bbs_path]/norobot_image.php' border='0'>";
### 변경후
echo "<img src='$g4[bbs_path]/norobot_image.php?{$g4['server_time']}' border='0'>";
skin/member/basic/register_form.skin.php
### 변경전
echo "<img src='$g4[bbs_path]/norobot_image.php' border='0'>";
### 변경후
echo "<img src='$g4[bbs_path]/norobot_image.php?{$g4['server_time']}' border='0'>";
skin/member/basic/password_forget2.skin.php
### 변경전
<tr>
<td height="30"></td>
<td colspan="2" valign="top">
<input type=text name='mb_password_a' size=55 required itemname='패스워드 분실시 답변' value=''>
</td>
</tr>
### 변경후
<tr>
<td height="30"></td>
<td colspan="2" valign="top">
<input type=text name='mb_password_a' size=55 required itemname='패스워드 분실시 답변' value=''>
</td>
</tr>
<tr>
<td height="40" align="center"><img src="<?=$member_skin_path?>/img/icon_02.gif" width="6" height="6"></td>
<td colspan="2">
<?="<img src='$g4[bbs_path]/norobot_image.php?".time()."' border='0' align='absmiddle'>";?>
<input type=text name='wr_key' size=10 required itemname='자동등록방지 코드'> 자동등록방지 코드를 입력하세요.
</td>
</tr>
skin/member/basic/password_forget2.skin.php
### 변경전
<script language='JavaScript'>
function fpasswordforget2_submit(f)
{
f.action = "./password_forget3.php";
f.submit();
}
document.fpasswordforget2.mb_password_a.focus();
</script>
### 변경후
<script language="javascript" src="<?=$g4['path']?>/js/md5.js"></script>
<script language='javascript'> var md5_norobot_key = '<?=md5($norobot_key)?>'; </script>
<script language='JavaScript'>
function fpasswordforget2_submit(f)
{
if (hex_md5(f.wr_key.value) != md5_norobot_key) {
alert('자동등록방지용 코드가 순서대로 입력되지 않았습니다.');
f.wr_key.focus();
return;
}
f.action = "./password_forget3.php";
f.submit();
}
document.fpasswordforget2.mb_password_a.focus();
</script>
bbs/password_forget2.php
### 변경전
include_once("./_common.php");
### 변경후
include_once("./_common.php");
// 토큰 생성
$token = md5(uniqid(rand(), true));
set_session("ss_token", $token);
$norobot_key = substr($token, 0, rand(4,6));
set_session("ss_norobot_key", $norobot_key);
bbs/password_forget3.php
### 변경전
include_once("./_common.php");
### 변경후
include_once("./_common.php");
$wr_key = trim($_POST[wr_key]);
if (!($wr_key && $wr_key == get_session('ss_norobot_key'))) {
alert("정상적인 접근이 아닌것 같습니다.");
}
                    덕분에 편하게 수정하고 갑니다 감사합니다!                            
            
            
            
                        
            
                    
                    잘받아갑니다.ㅎ                            
            
            
            
                        
            
                    
                    이번에두 잘 설치 하겟습니다.                            
            
            
            
                        
            
                    
                    항상 감사합니다.                            
            
            
            
                        
            
                    
                    감사드려요~ㅎ                            
            
            
            
                        
            
                    
                    저도 감사요                            
            
            
            
                        
            
                    
                    감사합니다. ^^*                            
            
            
            
                        
            
                    
                    잘쓸꼐요 ㅋㅋㅋ                            
            
            
            
                        
            
                    
                    감사합니다~                            
            
            
            
                        
            
                    
                    잘쓸게요^^                            
            
            
            
                        
            
                    
                    그누보드 다운로드가 안됩니다 ㅡㅡ; 왜그러죠?                            
            
            
            
                        
            
                    
                    저두요                            
            
            
            
                        
            
                    
                    어디갓져...ㅋㅋㅋ                            
            
            
            
                        
            
                    
                    초보자인데 이버전 상위버전 어느것으로 초가 설치 해야 하는지 조언 부탁 드립니다.                            
            
            
            
                        
            
                    
                    수고많으셨습니다.                            
            
            
            
                        
            
                    
                    항상 고맙게 쓰고 있습니다. 감사합니다~                            
            
            
            
                        
            
                    
                    항상 감사드리고 있습니다~ 잘 쓸께여 ^^                            
            
            
            
                        
            
                    
                    안녕하세요
그누보드를 사용하고 있는 유저입니다.
다름이 아니라 파일업로드 취약성이 있는거 같아서
쪽지를 보낼려니 안보네지네요 -ㅁ-
원래 그냥 저도 쓰고 있었는대 보안관련 취약성에 대해서 지침에 내려와서
확인하다보니 발견하게 되었네요 ^^
bbs/write_update.php
159번째 줄 바로 밑에 아래와 같이 추가했습니다.
별건 아니구 php,php3,inc,htm,html 파일 확장자 업로드를 못하게 체크하는거구요
맞게 썼는지는 모르겠네요 ^^
좋은 하루 보내세요
// 파일업로드 취약점 보안 확장자 체크
$exp=substr(strrchr($filename,"."),1);
$exp=strtolower($exp);
if($exp=="php" || $exp=="php3" || $exp=="inc" || $exp=="htm" || $exp=="html"){
$file_upload_msg = "\'{$filename}\' 파일이 정상적으로 업로드 되지 않았습니다.\\n";
continue;
}
            
            
            
                        
            
                    그누보드를 사용하고 있는 유저입니다.
다름이 아니라 파일업로드 취약성이 있는거 같아서
쪽지를 보낼려니 안보네지네요 -ㅁ-
원래 그냥 저도 쓰고 있었는대 보안관련 취약성에 대해서 지침에 내려와서
확인하다보니 발견하게 되었네요 ^^
bbs/write_update.php
159번째 줄 바로 밑에 아래와 같이 추가했습니다.
별건 아니구 php,php3,inc,htm,html 파일 확장자 업로드를 못하게 체크하는거구요
맞게 썼는지는 모르겠네요 ^^
좋은 하루 보내세요
// 파일업로드 취약점 보안 확장자 체크
$exp=substr(strrchr($filename,"."),1);
$exp=strtolower($exp);
if($exp=="php" || $exp=="php3" || $exp=="inc" || $exp=="htm" || $exp=="html"){
$file_upload_msg = "\'{$filename}\' 파일이 정상적으로 업로드 되지 않았습니다.\\n";
continue;
}
                    다른분들 오해하실까봐 댓글 작성합니다.
말씀하신 부분은 이미 막혀있습니다.
// 아래의 문자열이 들어간 파일은 -x 를 붙여서 웹경로를 알더라도 실행을 하지 못하도록 함
$filename = preg_replace("/\.(php|phtm|htm|cgi|pl|exe|jsp|asp|inc)/i", "$0-x", $filename);
            
            
            
                        
            
                    말씀하신 부분은 이미 막혀있습니다.
// 아래의 문자열이 들어간 파일은 -x 를 붙여서 웹경로를 알더라도 실행을 하지 못하도록 함
$filename = preg_replace("/\.(php|phtm|htm|cgi|pl|exe|jsp|asp|inc)/i", "$0-x", $filename);
                    [보안패치] 그누보드 4.22.03 --->패치함                            
            
            
            
                        
            
                    
                    패치 완료~~~                            
            
            
            
                        
            
                    
                    감사합니다.                            
            
            
            
                        
            
                     
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
 