아이프레임 해제와 스트립트해제 정보
아이프레임 해제와 스트립트해제본문
아이프레임이 안됩니다, q/a
/lib/common.lib.php을수정하시면 됩니다.
function bad_tag_convert($code)
{
return preg_replace("/\<([\/]?)(script|iframe)([^\>]*)\>/i", "<$1$2$3>", $code);
}
예))
function bad_tag_convert($code)
{
return $code;
}
---------------------------------------------------------------------------------------
스트립트가 안됩니다 q/a
/lib/common.lib.php을수정하시면 됩니다.(주석처리)
// XSS (Cross Site Script) 막기
// 완벽한 XSS 방지는 없다.
// 081022 : CSRF 방지
//$content = preg_replace("/(on)(abort|blur|change|click|dblclick|dragdrop|error|focus|keydown|keypress|keyup|load|mousedown|mousemove|mouseout|mouseover|mouseup|mouseenter|mouseleave|move|reset|resize|select|submit|unload)/i", "$1<!-- XSS Filter -->$2", $content);
//$content = preg_replace("/(on)([^\=]+)/i", "on$2", $content);
$content = preg_replace("/(on)([a-z]+)([^a-z]*)(\=)/i", "on$2$3$4", $content);
$content = preg_replace("/(dy)(nsrc)/i", "dy$2", $content);
$content = preg_replace("/(lo)(wsrc)/i", "lo$2", $content);
$content = preg_replace("/(sc)(ript)/i", "sc$2", $content);
$content = preg_replace("/(ex)(pression)/i", "ex$2", $content);
$content = preg_replace("/\#/", "#", $content);
$content = preg_replace("/\</", "<", $content);
$content = preg_replace("/\>/", ">", $content);
$content = preg_replace("/\(/", "(", $content);
$content = preg_replace("/\)/", ")", $content);
예))
/*
// XSS (Cross Site Script) 막기
// 완벽한 XSS 방지는 없다.
// 081022 : CSRF 방지
//$content = preg_replace("/(on)(abort|blur|change|click|dblclick|dragdrop|error|focus|keydown|keypress|keyup|load|mousedown|mousemove|mouseout|mouseover|mouseup|mouseenter|mouseleave|move|reset|resize|select|submit|unload)/i", "$1<!-- XSS Filter -->$2", $content);
//$content = preg_replace("/(on)([^\=]+)/i", "on$2", $content);
$content = preg_replace("/(on)([a-z]+)([^a-z]*)(\=)/i", "on$2$3$4", $content);
$content = preg_replace("/(dy)(nsrc)/i", "dy$2", $content);
$content = preg_replace("/(lo)(wsrc)/i", "lo$2", $content);
$content = preg_replace("/(sc)(ript)/i", "sc$2", $content);
$content = preg_replace("/(ex)(pression)/i", "ex$2", $content);
$content = preg_replace("/\#/", "#", $content);
$content = preg_replace("/\</", "<", $content);
$content = preg_replace("/\>/", ">", $content);
$content = preg_replace("/\(/", "(", $content);
$content = preg_replace("/\)/", ")", $content);
*/
알려주신분 곱슬최씨님
1
댓글 11개
내 계정만 다치는게 아니라, 서버에 따라 다른 사람의 계정도 다칠 수 있죠.
아무리 서버가 잘 방어를 한다고 해도, 해킹툴이 새로 나오므로 서버에 있는
다른 계정들까지 모조리 다 감염될 수 있는 겁니다.
글쿠 내 계정은 db 삭제부터 이런 저런 험한 꼴을 다 당하게 될 수 있습니다.
안전한 호스팅이라도 xss/csrf에서는 지켜주지 못하므로 하면 안되는 겁니다.
최악의 상황이 나옵니다.