JS注入是一种Web攻击技术,攻击者通过注入JavaScript代码来修改网页的行为,最终达到攻击的目的。在移动端,尤其是在安卓系统中,也存在JS注入的风险。而App用做JS注入是一种相对较新的攻击手段,它利用了App与浏览器之间的互通性,将恶意JavaScript代码注入到浏览器中,最终攻击用户。
原理
在安卓系统中,App可以借助Intent传递数据到其他应用程序中。利用这个特性,攻击者可以编写一个App,将恶意JavaScript代码保存在其中。然后,攻击者将这个App以Intent的方法带给浏览器。浏览器接收到这个Intent后,会调用App来解析其中的数据,并将数据作为JavaScript代码注入到网页中。
具体来说,攻击者需要编写一个App,把它中的JavaScript代码存储在一个文件中。然后,将这个文件的路径作为Intent的参数带给浏览器。浏览器接收到Intent后,会启动App,并将文件路径作为参数带给App。App接收到参数后,会读取文件中的JavaScript代码,并将代码以字符串的形式返回给浏览器。浏览器接收到代码后,会将代码注入到网页中。
实际上,这样的攻击手段并不是直接修改浏览器的JavaScript代码,而是通过App来实现注入。这样的攻击方法相比较起来谈比较隐蔽,因为它并不需要直接攻击浏览器或操作系统,而是通过利用系统的特性来实现攻击。
详细介绍
App用做JS注入的攻击方法相比较起来谈比较复杂,需要攻击者具备一定的编程能力。攻击者需要编写一个App,把它中的JavaScript代码存储在一个文件中。然后,将这个文件的路径作为Intent的参数带给浏览器。浏览器接收到Intent后,会启动App,并将文件路径作为参数带给App。App接收到参数后,会读取文件中的JavaScript代码,并将代码以字符串的形式返回给浏览器。浏览器接收到代码后,会将代码注入到网页中。
这样的攻击方法的危害性比较大,攻击者可以借助注入JavaScript代码来实现各种攻击,比如
1. 窃取用户的敏感信息,比如账号、密码、银行卡号等。
2. 攻击用户的电子钱包,窃取用户的钱财。
3. 修改网页的行为,比如跳转到其他网站,弹出广告窗口等。
4. 通过注入恶意代码来攻击其他应用程序,比如窃取其他应用程序的敏感信息。
为了不让这样的攻击,用户可以采取以下措施
1. 安装杀毒软件,及时发现和清除恶意App。
2. 不要轻易安装不明起源的App,特别是一些看似很有用的工具类App。
3. 及时更新系统和浏览器,修补系统漏洞。
4. 不要随随便便点击不明起源的链接,以免误入陷阱。