原始碼:進行嘗試發現都不行,在過程中發現原始碼中js中的字元和html中的過濾邏輯並不一樣,這裡需要用到的乙個知識點就是html5解析器在script標籤中解析到先進性乙個測試:
可以看到成功彈窗:
原始碼:
第一步還是老樣子,猜變數:很明顯是px:
這裡直接進行構造是不行的,這裡對雙引號進行了過濾,解這道題的需要用到的乙個知識點和第七題一樣,就是測試成功彈窗
原始碼:
第一步還是猜變數,px
第一題看上去和第八題好像啊,直接拿了第八題的payload試了一下,果然不行。測試一下發現對2處html位置的輸出點都做了html編碼,並且同步限制了長度。所以想用第八題的方法直接寫入標籤,基本上是不可能的了。由於這裡的特殊字元大多數都被反斜槓轉義了,所以注釋也就用不了了,想用第四題的方法也就不行了。
想要直接在js或者html中構造都是不太可能的,所以還是要用到前面提到的這個payload可以把js中的輸入點閉合,但是在html中卻不行,因為在後面的輸出點做了字元長度的限制,這裡需要精簡一下payload。
精簡之後還是有問題,發現script這部分佔了太多長度的內容了,所以第一想法就是把原始碼:
這道題和第九題很像,同樣是四處輸出,過濾規則稍有不同,在js處是一樣,但是在html的第一處輸出限制字元就只有兩個了,這一下讓我頓時束手無策。第二處沒有字元長度的限制。
直接用第九題的payload去試:
由於第三處字元的限制,導致後面的閉合放生了變化。兩個字元的限制還是比較麻煩的,還好這是一系列的題,通過第九題的分析可以知道這個輸出點只能寫入`}了。
對於payload的改動需要把`}放在最前面,這樣直接去改還會有一些問題,會發現多了乙個`},這樣就再加乙個把它閉合掉就好了,因為模板字串就近閉合導致物件不行了,可以在加乙個模板,這裡用到了兩次模板的巢狀,測試成功彈窗
一些BAT的xss例項1 3題
原始碼 location.hash hash 屬性是乙個可讀可寫的字串,該字串是 url 的錨部分 從 號開始的部分 settimeout settimeout 方法用於在指定的毫秒數後呼叫函式或計算表示式。這道題的關鍵就在這行 settimeout aa x 100 payload settime...
bat 的一些操作
把d test test.txt這個檔案複製到d盤根目錄下,那麼,使用 copy d test test.txt d 就可以輕易辦到。copy y d test test.txt d copy y d test user 01 test.txt d files 如果要複製的路徑帶有空格 等特殊符號的...
最近的一些bat小指令碼
計算目錄下的檔案個數,並新增到目錄名中 echo off setlocal enabledelayedexpansion 變數延遲 for f i in dir a d b dp0 do set a n 0 for r j in i do set a n 1 echo.i n 上面可以用來檢查檔名 ...