今天看啥  ›  专栏  ›  轩公子谈技术

粉丝投稿:ofcms 1.1.2 代码审计

轩公子谈技术  · 公众号  ·  · 2024-03-08 17:54
sql注⼊在前端新增⼀条代码⽣成列表,抓取数据包通过搜索路径system/generate定位到SystemGenerateController类⽂件在create⽅法中打个断点进⾏分析db.update函数进⼊update函数这⾥采⽤了预编译,是把整个sql语句进⾏预编译,不是把sql的参数拼接执⾏,所以根本起不到效果这⾥是executeUpdate,所以只能⽤增删改的sql语句,⽤报错语句进⾏测试模板注⼊在pom.xml发现cms使⽤freemarker在后台有创建模板的地⽅,插⼊payload:<#assign value="freemarker.template.utility.Execute"? new()>${value("calc.exe")}测试访问不存在的路径,触发命令执⾏任意⽂件读取查看getTemplates⽅法,打个断点进⾏分析dir变量就是获取当前路径,这个是可控参数pathFile 则是根据传⼊的dir,获取到绝对路径files则是获取default⽬录下的所有⽂件的绝对路径只获取⽂件为html xml css js等格式然后在通过传的⽂件名和files⾥⾯的进⾏ ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照