2012-03-08 170 views
0

使用POST HTTP方法,站點掃描器發現:XSS在忘記密碼

  • 以下資源可能容易​​受到跨站點腳本(擴展模式):
  • 的「電子郵件」參數/ customer/account/forgotpasswordpost/CGI: /customer/account/forgotpasswordpost/[email = 508 src = http://www.example。 com/exploit508.js]

就我看到的代碼,Magento senitize _GET/_POST。我怎樣才能解決這個問題?

回答

2

我想這將取決於你正在運行的Magento的版本。相關模板的默認位置可在app/design/frontend/base/default/template/customer/form/forgotpassword.phtml找到。用戶可編輯的唯一值是回顯到屏幕的電子郵件地址,當然在Magento 1.6中,這是通過模板塊htmlEscape方法傳遞的,但是值得檢查它是否在您的Magento版本中。

<input type="text" name="email" alt="email" id="email_address" class="input-text required-entry validate-email" value="<?php echo $this->htmlEscape($this->getEmailValue()) ?>" /> 

如果您發現它已經存在,那麼檢查此模板是否在當前主題中未被重載是值得的。