linlinjava / litemall

又一个小商城。litemall = Spring Boot后端 + Vue管理员前端 + 微信小程序用户前端 + Vue用户移动端
MIT License
19.11k stars 7.17k forks source link

vulnerability #513

Open slasher-B opened 2 years ago

slasher-B commented 2 years ago

1.

sql注入

Don't rely too much on mybatis generator,It brings SQL injection.

In addition,receiving parameters with "${}" will prevent mybatis from executing SQL in precompiled form,this leads to SQL injection risk.

2.

ssrf

In org.linlinjava.litemall.core.qcode.QCodeService#drawPicture, push an unchecked URL into ImageIO.read will cause SSRF.There are two sources can flow to this sink.

3.

Jackson反序列化

The version of Jackson used in the project is vulnerable,and multiple sources can flow to the sink which in org.linlinjava.litemall.core.util.JacksonUtil#toMap.

Through unsafe deserialization, you can call org.linlinjava.litemall.db.util.DbUtil#backup by reflection and inject custom commands into String db, finally case RCE.