[보안패치] 그누보드 4.34.10
4.34.10 (11.08.10)
: [보안패치] $_SERVER 배열변수 값의 변조를 이용한 SQL Injection 공격을 막는 코드입니다.
(SK Infosec 장경칩님께서 알려 주셨습니다.)
bbs/visit_insert.inc.php 의
$sql = " insert $g4[visit_table] ( vi_id, vi_ip, vi_date, vi_time, vi_referer, vi_agent ) values ( '$vi_id', '$_SERVER[REMOTE_ADDR]', '$g4[time_ymd]', '$g4[time_his]', '$_SERVER[HTTP_REFERER]', '$_SERVER[HTTP_USER_AGENT]' ) ";
를 아래 코드로 대체합니다.
$remote_addr = mysql_real_escape_string($_SERVER['REMOTE_ADDR']);
$referer = mysql_real_escape_string($_SERVER['HTTP_REFERER']);
$user_agent = mysql_real_escape_string($_SERVER['HTTP_USER_AGENT']);
$sql = " insert $g4[visit_table] ( vi_id, vi_ip, vi_date, vi_time, vi_referer, vi_agent ) values ( '$vi_id', '$remote_addr', '$g4[time_ymd]', '$g4[time_his]', '$referer', '$user_agent' ) ";
: [보안패치] $_SERVER 배열변수 값의 변조를 이용한 SQL Injection 공격을 막는 코드입니다.
(SK Infosec 장경칩님께서 알려 주셨습니다.)
bbs/visit_insert.inc.php 의
$sql = " insert $g4[visit_table] ( vi_id, vi_ip, vi_date, vi_time, vi_referer, vi_agent ) values ( '$vi_id', '$_SERVER[REMOTE_ADDR]', '$g4[time_ymd]', '$g4[time_his]', '$_SERVER[HTTP_REFERER]', '$_SERVER[HTTP_USER_AGENT]' ) ";
를 아래 코드로 대체합니다.
$remote_addr = mysql_real_escape_string($_SERVER['REMOTE_ADDR']);
$referer = mysql_real_escape_string($_SERVER['HTTP_REFERER']);
$user_agent = mysql_real_escape_string($_SERVER['HTTP_USER_AGENT']);
$sql = " insert $g4[visit_table] ( vi_id, vi_ip, vi_date, vi_time, vi_referer, vi_agent ) values ( '$vi_id', '$remote_addr', '$g4[time_ymd]', '$g4[time_his]', '$referer', '$user_agent' ) ";
첨부파일
|
댓글을 작성하시려면 로그인이 필요합니다.
로그인
댓글 72개
감사합니다. (사실 구버젼 사용중이라 안쓸꺼긔)
내일 패치해야겠습니다. 감사합니다.
이건 심각한데영 ㅋㅅㅋ;
감사합니다~!
상단 이미지가 gif, jpg, png 파일이 아닙니다 라는 메시지가 뜹니다. 라고 뜹니다.
gnuboard4/adm/board_form.update.php
화일에서 print_r2($_FILES);
해보면,
Array
(
[bo_image_head] => Array
(
[name] => !+
[type] =>
[tmp_name] =>
[error] => 4
[size] => 0
)
[bo_image_tail] => Array
(
[name] =>
[type] =>
[tmp_name] =>
[error] => 4
[size] => 0
)
[name] => !+ =>이 부분이 이상합니다.
아무것도 입력안했는데, php.ini 설정에 문제가 있는건지? 모르겠네요...
5.3 에 와서, 함수가 변경되는게 좀 있다고 들어서요...
이곳에 문의하여합니다.
$_SERVER['REMOTE_ADDR'] = $HTTP_SERVER_VARS['REMOTE_ADDR'] = mysql_real_escape_string($_SERVER['REMOTE_ADDR']);
마침 한군데 사이트에 이상이 생겼는데, 감사합니다. :)
더불어 인젝션 공격 방지를 알려주신 SK Infosec 장경칩님도 감사합니다. :)
!