From 60d37b853b987fcb22233ce8c75f41e660804a0f Mon Sep 17 00:00:00 2001 From: thisgun Date: Mon, 30 Mar 2026 09:32:15 +0000 Subject: [PATCH] =?UTF-8?q?[KVE-2026-0553]=EA=B7=B8=EB=88=84=EB=B3=B4?= =?UTF-8?q?=EB=93=9C=20SQL=20Injection=20=EC=B7=A8=EC=95=BD=EC=A0=90=20?= =?UTF-8?q?=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- bbs/write_update.php | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/bbs/write_update.php b/bbs/write_update.php index 9b169d732..91cbcaddf 100644 --- a/bbs/write_update.php +++ b/bbs/write_update.php @@ -241,12 +241,13 @@ if ($w == '' || $w == 'r') { } else { $mb_id = ''; // 비회원의 경우 이름이 누락되는 경우가 있음 - $wr_name = clean_xss_tags(trim($_POST['wr_name'])); + $wr_name = addslashes(clean_xss_tags(stripslashes(trim($_POST['wr_name'])))); + $wr_name = preg_replace("#[\\\]+$#", "", $wr_name); if (!$wr_name) alert('이름은 필히 입력하셔야 합니다.'); $wr_password = get_encrypt_string($wr_password); $wr_email = get_email_address(trim($_POST['wr_email'])); - $wr_homepage = clean_xss_tags($wr_homepage); + $wr_homepage = addslashes(clean_xss_tags(stripslashes($wr_homepage))); } if ($w == 'r') { @@ -362,16 +363,17 @@ if ($w == '' || $w == 'r') { $wr_homepage = addslashes(clean_xss_tags($member['mb_homepage'])); } else { $mb_id = $wr['mb_id']; - if(isset($_POST['wr_name']) && $_POST['wr_name']) - $wr_name = clean_xss_tags(trim($_POST['wr_name'])); - else + if(isset($_POST['wr_name']) && $_POST['wr_name']) { + $wr_name = addslashes(clean_xss_tags(stripslashes(trim($_POST['wr_name'])))); + $wr_name = preg_replace("#[\\\]+$#", "", $wr_name); + } else $wr_name = addslashes(clean_xss_tags($wr['wr_name'])); if(isset($_POST['wr_email']) && $_POST['wr_email']) $wr_email = get_email_address(trim($_POST['wr_email'])); else $wr_email = addslashes($wr['wr_email']); if(isset($_POST['wr_homepage']) && $_POST['wr_homepage']) - $wr_homepage = addslashes(clean_xss_tags($_POST['wr_homepage'])); + $wr_homepage = addslashes(clean_xss_tags(stripslashes($_POST['wr_homepage']))); else $wr_homepage = addslashes(clean_xss_tags($wr['wr_homepage'])); } @@ -379,7 +381,8 @@ if ($w == '' || $w == 'r') { $mb_id = ""; // 비회원의 경우 이름이 누락되는 경우가 있음 if (!trim($wr_name)) alert("이름은 필히 입력하셔야 합니다."); - $wr_name = clean_xss_tags(trim($_POST['wr_name'])); + $wr_name = addslashes(clean_xss_tags(stripslashes(trim($_POST['wr_name'])))); + $wr_name = preg_replace("#[\\\]+$#", "", $wr_name); $wr_email = get_email_address(trim($_POST['wr_email'])); }