묻고답하기
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
이 코드가 사용상의 문제는 없는건가요?
2014.10.16 19:54
define('__ZBXE__',true);
define('__XE__',true);
$document_srl = $_REQUEST['ename'];
require_once('../../../../config/config.inc.php');
$oContext = &Context::getInstance();
$oContext->init();
$logged_info = Context::get('logged_info');
$elseid = $logged_info->elseid;
require_once('../../../../classes/db/DB.class.php');
$db_info = Context::getDBInfo();
$eurl = $db_info->slave_db[0]["db_hostname"];
$e_port = $db_info->slave_db[0]["db_port"];
$e_userid = $db_info->slave_db[0]["db_userid"];
$e_password = $db_info->slave_db[0]["db_password"];
$e_database = $db_info->slave_db[0]["db_database"];
$conn = mysql_connect("localhost", $e_userid, $e_password);
if (!$conn) {
echo "Unable to connect to DB: " . mysql_error();
exit;
}
if (!mysql_select_db($e_database)) {
echo "Unable to select mydbname: " . mysql_error();
exit;
}
mysql_select_db($e_database,$conn);
$sql = "SELECT * FROM xe_documents WHERE document_srl = '".$document_srl."'";
$result = mysql_query($sql );
$row = mysql_fetch_array($result);
$rest=$row[content];
mysql_close();
mysql_free_result();
위 코드로 DB에 접근을 해 데이터를 사용 하려는데
이 코드가 사용상의 문제는 없는건가요?
3번째 라인에서 받아온 매개변수를 검사하지 않고 직접 DB에 접근하여 보안상에 문제가 있을것으로 생각됩니다.
쿼리문을 실행하기 전에 필터링 함수등을 사용하여 SQL취약점이 발생하지 않도록 하셔야 합니다.