浅析图片XSS中的哪些技术问题
危害
想象下,如果我們能夠在圖片里直接插入JS腳本,并且在訪問圖片的時候能夠觸發這個腳本。那么我們就可以在網站文章下面的留言中上傳圖片,讓用戶不知不覺中招。
生成圖片
首先,以下腳本是一個向gif文件中注入JavaScript的腳本:
http://pastebin.com/6yUbfGX5
還有這個,是向bmp中注入的:
http://pastebin.com/04y7ee3u
兩個都是用python寫的,其中,我們注意到他們的重點是:
以下是對GIF的頭部進行的處理:
用Hexadecimal打開,可以看到元數據GIF89a。
此外就是注入的內容:
演示過程
把腳本放到kali下執行
接下來,我們運行如下命令,將語句注入到圖片中。以下是一個彈窗語句,在實際應用中,語句就很可能變成直接盜取cookie
好了,現在在html頁面中直接加載圖片,看xss是否可以被執行:
開啟網站服務,apache2
訪問頁面,發現js腳本成功被執行:
我們可以把語句改成以下,就能重定向了:
也有用C或者ASM做的工具:
https://github.com/jklmnn/imagejs
https://gist.github.com/ajinabraham/f2a057fb1930f94886a3
如何防范
防御這類漏洞是很難的,不過有以下幾點建議可以參考:
過濾用戶輸入內容 用白名單的方式限制元素的加載,及時是來自同一個域 用一些高級的開發模型例如MVC,?PEAR,?SRUTS… 使用令牌系統總結
XSS漏洞存在于互聯網的各個角落,千萬不能忽視他的存在。開發的過程中一定要記得過濾用戶輸入。
原文發布時間為:2017年2月15日 本文作者:Change 本文來自云棲社區合作伙伴嘶吼,了解相關信息可以關注嘶吼網站。 原文鏈接
總結
以上是生活随笔為你收集整理的浅析图片XSS中的哪些技术问题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【五】MongoDB管理之生产环境说明
- 下一篇: 华月互网获得2012全国十大IDC服务商