BBCode yapısının çok karmaşık kodlamaya sahip olmasından dolayı zaman zaman çeşitli açıklarla karşılaşırız, daha önce de bu durumları yaşamıştık.
Son olarak tespitlerimde Ascii (html) formatlı karakterler ile Seditio filtrelerini aşarak javascript ile istenilen komutu verme imkanı sağlanıyor.
*BBCode Açığına Karşı Çözüm** (Ağustos 200
Türkçe: system/function.php'yi açın ve sed_cc fonksiyonunu alttaki ile değiştirin:
English: search for in system/functions.php function sed_cc
replace sed_cc function:
Kod:
Kod:
function sed_cc($text)
{
// modified by dvdbil | seditio-tr.com
$text = preg_replace('/&#([0-9]{2,4});/is','&#$1;',$text);
$text = str_replace(
array('%3C', '<', '{', '<', '>' , '$', ''', '"', '\', '&', ' '),
array(' ', ' ', '{', '<', '>', '$', ''', '"', '', '&amp;', '&nbsp;'), $text);
return($text);
}[/hide]
Son olarak tespitlerimde Ascii (html) formatlı karakterler ile Seditio filtrelerini aşarak javascript ile istenilen komutu verme imkanı sağlanıyor.
*BBCode Açığına Karşı Çözüm** (Ağustos 200
Türkçe: system/function.php'yi açın ve sed_cc fonksiyonunu alttaki ile değiştirin:
English: search for in system/functions.php function sed_cc
replace sed_cc function:
Kod:
Kod:
function sed_cc($text)
{
// modified by dvdbil | seditio-tr.com
$text = preg_replace('/&#([0-9]{2,4});/is','&#$1;',$text);
$text = str_replace(
array('%3C', '<', '{', '<', '>' , '$', ''', '"', '\', '&', ' '),
array(' ', ' ', '{', '<', '>', '$', ''', '"', '', '&amp;', '&nbsp;'), $text);
return($text);
}[/hide]