安卓木马如何伪装人类操作规避检测
为了防止正常金融类APP,在接收到恶意安卓木马自动输入受害者的卡号、密码、CVV等信息时,识别出非人为操作,一个名为Herodotus的木马使用了一种全新的手法进行绕过。
平常这类手机银行木马,主要是直接获取受害者的剪贴板,然后通过一下方式向金融类APP进行数据的输入,实现方式主要有两种:一是调用 ACTION_SET_TEXT 操作,二是借助剪贴板(先将文本存入剪贴板,再粘贴到输入框)。这种方式能确保文本直接精准传入目标输入框,且过程无中断。
但在应用程序看来,这种输入行为会呈现出明显的机器化特征,显得异常可疑,系统会质疑:
是否存在真实用户在与应用交互并输入数据?这类异常行为本应被基于行为的反欺诈引擎捕捉,并标记为潜在的设备劫持攻击。
而Herodotus木马,作为首批尝试拟人化远程操作的恶意软件之一。
为让文本输入看起来像真实用户手动敲击键盘,它会将攻击者指定的文本拆分为单个字符,每个字符单独传入输入框,且字符间插入随机延迟。
这种字符间延迟随机化的具体参数为:延迟范围设定在 300-3000 毫秒(即 0.3-3 秒)。(图2)
该区间与人类正常输入文本的间隔规律高度吻合。攻击者通过刻意插入随机间隔,本质是为了规避仅依赖行为分析的反欺诈系统,这类系统通常会通过机器级输入速度识别异常,而随机延迟恰好能掩盖这一特征。
开发者在地下论坛发布截图,将Herodotus木马宣传为 “恶意软件即服务”(Malware-as-a-Service),截图展示了操作员视角下对受感染设备的控制界面及可用功能选项:
图3
需特别注意的是,此页面包含用于设置文本的控件(“SEND 1” 和 “SEND 2” 按钮)。图4
这些控件正是实现我们此前重点提及的 “类人类文本输入” 功能的核心 —— 页面中还设有一个 “延迟文本” 复选框,专门用于开启或关闭该(类人类输入)行为。
木马供应商在黑客论坛的广告图5
参考链接:
https://www.threatfabric.com/blogs/new-android-malware-herodotus-mimics-human-behaviour-to-evade-detection
#银行木马 #安卓木马