Tale博客系统代码审计过程

渗透技巧 12个月前 admin
330 0 0

扫码领资料

获网安教程

免费&进群

Tale博客系统代码审计过程
Tale博客系统代码审计过程

1、环境搭建

项目地址:https://gitee.com/hellokaton/tale.git

导入项目至idea,然后Maven->reload project即可,之后运行Application

Tale博客系统代码审计过程

2、项目依赖、结构

项目采用Blade框架开发

Tale博客系统代码审计过程

在Blade中提出 WebHook,你可以叫它钩子。该组件主要目的是拦截每次请求之前和之后的一些操作,在该项目中也实现了WebHook

Tale博客系统代码审计过程

Tale博客系统代码审计过程

判断请求URL开头是否包含ADMIN_URI 以及不是登录请求,如果满足条件将会判断是否登录,没有登录会跳转到登录页面

其中ADMIN_URI 的值为

public static final String ADMIN_URI = "/admin";

Blade框架中构造 /test/../admin/index 无法匹配到 /admin/index 所以也无法绕过

3、代码审计

3.1 任意文件读取

路由:admin/template/content

Tale博客系统代码审计过程

用户可控参数fileName filePath直接拼接 filname并未做任何过滤,后续直接通过Files.readAllLines 将文件内容读出

验证:读取pom.xml文件内容

Tale博客系统代码审计过程

3.2 任意代码文件写入

路由:admin/api/template/save

Tale博客系统代码审计过程

程序首先获取了一个TemplateParam 对象,其中包含两个可控参数

@Data
public class TemplateParam {

private String fileName;
private String content;

}

在通过StringKit.isBlank(templateParam.getFileName()) 来判断fileName 是否为空,如果不为空进入下面的代码逻辑,获取content 并拼接filepath,在进行判断,文件是否存在,不存在则创建文件,后续进行写入操作

验证:修改桌面文件

Tale博客系统代码审计过程

Tale博客系统代码审计过程

我们也可以通过修改代码文件,来自己创建一个路由等服务器重启获取系统权限

写入一个不需要登录就能访问的路由

Tale博客系统代码审计过程


写入成功


Tale博客系统代码审计过程


系统重启后即可执行命令

Tale博客系统代码审计过程


3.3 任意文件上传

路由:admin/api/attach/upload

获取文件名并赋值给fname,之后进入getFileKey 方法中,跟进查看具体逻辑

Tale博客系统代码审计过程


其作用通俗来说就是要上传到哪里去,如果没有/upload/当前日期的文件夹则创立


Tale博客系统代码审计过程


StringKit.fileExt 中主要是生成文件名,并未对后缀做任何限制

Tale博客系统代码审计过程

验证:文件不解析,只能打个xss了

Tale博客系统代码审计过程

Tale博客系统代码审计过程


4、总结

如有问题,感谢各位师傅指正


5、修复建议

1、使用最新的框架进行搭建

2、安装框架补丁包

来源:https://xz.aliyun.com/t/12489

声明:⽂中所涉及的技术、思路和⼯具仅供以安全为⽬的的学习交流使⽤,任何⼈不得将其⽤于⾮法⽤途以及盈利等⽬的,否则后果⾃⾏承担。所有渗透都需获取授权


@

学习更多渗透技能!体验靶场实战练习


Tale博客系统代码审计过程

hack视频资料及工具

Tale博客系统代码审计过程

(部分展示)



往期推荐

【精选】SRC快速入门+上分小秘籍+实战指南

爬取免费代理,拥有自己的代理池

漏洞挖掘|密码找回中的套路

渗透测试岗位面试题(重点:渗透思路)

漏洞挖掘 | 通用型漏洞挖掘思路技巧

干货|列了几种均能过安全狗的方法!

一名大学生的黑客成长史到入狱的自述

攻防演练|红队手段之将蓝队逼到关站!

巧用FOFA挖到你的第一个漏洞

看到这里了,点个“赞”、“再看”吧




原文始发于微信公众号(白帽子左一):Tale博客系统代码审计过程

版权声明:admin 发表于 2023年5月3日 下午12:01。
转载请注明:Tale博客系统代码审计过程 | CTF导航

相关文章

暂无评论

您必须登录才能参与评论!
立即登录
暂无评论...