--- manager/index.php 2009-09-08 12:33:54.000000000 +0200 +++ manager/index.php 2009-09-08 12:35:35.000000000 +0200 @@ -230,7 +230,7 @@ if (isset($modx->config['validate_refere $referer = $_SERVER['HTTP_REFERER']; if (!empty($referer)) { - if (!preg_match('/'.preg_quote(MODX_SITE_URL, '/').'/i', $referer)) { + if (!preg_match('/^'.preg_quote(MODX_SITE_URL, '/').'/i', $referer)) { echo "A possible CSRF attempt was detected from referer: {$referer}."; exit(); }
if (!preg_match('/^'.preg_quote(MODX_SITE_URL, '/').'/i', $referer)) {/ attempt to foil some simple types of CSRF attacks
if (isset($modx->config['validate_referer']) && $modx->config['validate_referer']) {
if (isset($_SERVER['HTTP_REFERER'])) {
$referer = $_SERVER['HTTP_REFERER'];
if (!empty($referer)) {
if (!eregi(MODX_SITE_URL, $referer)) {
echo "A possible CSRF attempt was detected from referer: {$referer}.";
exit();
}
Ok, from now on...
For manager users:
Firefox addon:
https://addons.mozilla.org/en-US/firefox/addon/8996
//if I can ask them to use SSL why not to use this!
...
Only works with Firefox: 3.0 – 3.0.*, not the latest version
I don’t think it’s reasonable to require your clients or users to use a particular browser and install certain addons or such to use a website. I believe it makes more sense to fix the problem internally.