0
我正在看an article並在React中編寫嚮導,並且每一步都與一個URL關聯。作者使用URL的「散列」部分來指定步驟,並將其分配給this.state.currentStep
。他們評論說這是不安全的。將URL哈希參數值直接分配給Javascript變量是不安全的嗎?
class BasicWizard extends React.Component {
constructor() {
this.state = {
steps: []
currentStep: location.hash //obvs this is an unsafe way to do this -- this example is for conceptual purposes only
};
}
我的問題:
這是爲什麼不安全?我的猜測是這是一個XSS危險,但是這個輸入不會被React轉換爲字符串嗎?我看到它的方式,如果我在某處使用_dangerouslySetInnerHTML
這隻會是不安全的。
如果不安全:如何安全?