有時白箱工具會掃出 Client Cross Frame Scripting Attack ,
可以在 Header 中加入設定 X-FRAME-OPTIONS
但是這樣有些 白箱工具並不知道,
客戶還是會要你改到 Report 看不到,
那怎麼辦呢?
這時候一般會在js中加入
if (top != self) {top.location = self.location;}
但這樣子,又會引發另一個 issue,
Client DOM XSRF 問題,
所以解法可以改成
<script>if (top.frames.length != 0) alert(‘error’) </script>
或是加上 encode 去避掉 XSRF 的問題,如下,
<script>
if (top != self) {
top.location = encodeURI(self.location); } </script>
有话要说