Skip to content

Commit 2bf7c95

Browse files
committed
MAGETWO-45465: CSRF not validated or regenerated in Magento
- fixed admin unable to login
1 parent 983c931 commit 2bf7c95

File tree

1 file changed

+19
-2
lines changed
  • app/code/Magento/Backend/Controller/Adminhtml/Auth

1 file changed

+19
-2
lines changed

app/code/Magento/Backend/Controller/Adminhtml/Auth/Login.php

Lines changed: 19 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,13 +6,20 @@
66
*/
77
namespace Magento\Backend\Controller\Adminhtml\Auth;
88

9+
use Magento\Backend\App\Area\FrontNameResolver;
10+
911
class Login extends \Magento\Backend\Controller\Adminhtml\Auth
1012
{
1113
/**
1214
* @var \Magento\Framework\View\Result\PageFactory
1315
*/
1416
protected $resultPageFactory;
1517

18+
/**
19+
* @var FrontNameResolver
20+
*/
21+
protected $frontNameResolver;
22+
1623
/**
1724
* Constructor
1825
*
@@ -21,9 +28,11 @@ class Login extends \Magento\Backend\Controller\Adminhtml\Auth
2128
*/
2229
public function __construct(
2330
\Magento\Backend\App\Action\Context $context,
24-
\Magento\Framework\View\Result\PageFactory $resultPageFactory
31+
\Magento\Framework\View\Result\PageFactory $resultPageFactory,
32+
FrontNameResolver $frontNameResolver
2533
) {
2634
$this->resultPageFactory = $resultPageFactory;
35+
$this->frontNameResolver = $frontNameResolver;
2736
parent::__construct($context);
2837
}
2938

@@ -43,6 +52,14 @@ public function execute()
4352
$resultRedirect->setPath($this->_backendUrl->getStartupPageUrl());
4453
return $resultRedirect;
4554
}
46-
return $this->resultPageFactory->create();
55+
56+
$requestUrl = $this->getRequest()->getUri();
57+
$backendUrl = $this->getUrl('*');
58+
// redirect according to rewrite rule
59+
if ($requestUrl != $backendUrl) {
60+
$this->_redirect('*');
61+
} else {
62+
return $this->resultPageFactory->create();
63+
}
4764
}
4865
}

0 commit comments

Comments
 (0)