只要是做生意,都得讲究价值规律,黑市也不例外。某款产品要是搞打折促销,群众们必然蜂拥而至——要是免费大派送,那一传十十传百的速度又怎是门庭若市可形容!

最近Palo Alto Networks发现了一款面向大众免费派发的RAT(远程访问木马),名为SpyNote——这是个可对Android系统实现远程监听的工具,“和OmniRat和DroidJak很相似”。对那些技术不娴熟的脚本小子而言,想必又是个不可多得的好东西了。

  SpyNote控制面板

SpyNote能做什么?

SpyNote实际上是用来创建Android恶意程序的工具,最近在不少恶意程序论坛传得特别火。它有一些相当吸引人的特性:

· 不需要获取系统的Root权限;

· 对通话进行监听;

· 窃取联系人和信息数据;

· 通过麦克风记录音;

· 恶意拨打电话;

· 安装恶意应用;

· 获取手机的IMEI码、WiFi MAC地址、无线网络运营商细节;

· 获取设备最新的GPS地理位置信息;

· 控制摄像头

听起来真是不错啊,都不需要Android系统做Root操作,真这么神?当然了,还是需要手机用户自己给予SpyNote这些权限才行,包括编辑短信、访问通话记录、联系人,以及修改、删除SD内容的权限——其实绝大部分用户看到这些权限请求都会毫不犹豫的点“下一步”或“允许”。

行为分析

Palo Alto对发现的SkyNote恶意程序样本进行了分析。YouTube上先前就已经有了Sky Note v2的使用视频——Palo Alto分析的恶意程序应该是完全按照视频教程来做的。相比教程,该恶意程序程序除了改动图标,所用的端口一模一样。

在进行这款SpyNote恶意程序的安装过后,程序首先会将自己的图标从手机上移除。另外,该应用并没有采用任何混淆机制。它还会与IP地址为141.255.147.193的C&C服务器进行TCP通讯,端口号2222,如下图所示。

  用Cerbero profiler查看Dalvik字节码

  SkyNote开启一个Socket连接

如上图所示,SpyNote在此Socket连接中,采用硬编码的SERVER_IP和SERVER_PORT值。不过用Android分析工具Androguard就可以做个extractor。

用上面的spynote.C2.py脚本对APK文件中的这些值进行解析,可得出下面这些代码。

#!/usr/bin/python

import sys

from sys import argv

from androguard.core.bytecodes import apk

from androguard.core.bytecodes import dvm

#---------------------------------------------------

# _log : Prints out logs for debug purposes

#---------------------------------------------------

def _log(s):

print(s)

if __name__ == "__main__":

if (len(sys.argv) <2):

_log("[+] Usage: %s [Path_to_apk]" % sys.argv[0])

sys.exit(0)

else:

a = apk.APK(argv[1])

d = dvm.DalvikVMFormat(a.get_dex())

for cls in d.get_classes():

#if 'Ldell/scream/application/MainActivity;'.lower() in cls.get_name().lower():

if 'dell/scream/application/MainActivity;'.lower() in cls.get_name().lower():

c2 = ""

port = ""

string = None

for method in cls.get_methods():

if method.name == '':

for inst in method.get_instructions():

if inst.get_name() == 'const-string':

string = inst.get_output().split(',')[-1].strip(" '")

if inst.get_name() == 'iput-object':

if "SERVER_IP" in inst.get_output():

c2 = string

if "PORT" in inst.get_output():

port = string

if c2 and port:

break

server = ""

if port:

server = "{0}:{1}".format(c2, str(port))

else:

server = c2

_log('C&C: [ %s ]' % server)

虽说现在SpyNote似乎还并没有大规模被黑客们利用,但既然如今任何人都可以免费下载到SpyNote了 ,其广泛利用或许也只是时间问题。

还是需要告诫Android用户,不要随意安装来源不明的应用,虽然这个教训已经说了千百次了,况且对Android这样的操作系统,就算是中国人民看不见摸不着的Google Play Store都尚存不少恶意程序。用Android系统的同学还是要小心再小心!

====================================分割线================================

本文转自d1net(转载)

小心,Android木马工具SpyNote免费啦!远程监听就是这么简单相关推荐

  1. android 通过GPS获取用户地理位置并监听位置变化

    1 Location Manager 管理服务 2 Location Provider 提供数据的content provider 方式一:GPS 特点:精度高,耗电量大,不耗费流量 权限<us ...

  2. 4、oracle使用网络管理工具—Net Manager添加本地监听程序

    4.oracle使用网络管理工具-Net Manager添加本地监听程序 Net Manager 具有和Net Configuration Assistant 相似的功能.Net Configurat ...

  3. Android Activity 生命周期详解及监听

    前言 系列文章: Android Activity 与View 的互动思考 Android Activity 生命周期详解及监听 Android onSaveInstanceState/onResto ...

  4. Android Glide加载图片、网络监听、设置资源监听

    Glide加载图片.加载进度监听 前言 正文 一.项目配置 二.显示网络图片 三.添加设置资源监听 四.添加设置资源监听 五.添加加载进度条 六.封装工具类 七.源码 总结 前言   在日常开发中使用 ...

  5. Android 屏幕常亮、低电量监听

    Android保持屏幕常亮只需在manifest文件注册权限并使用PowerManager进行管理: <uses-permission android:name="android.pe ...

  6. android 回退函数,详解React Native监听Android回退按键与程序化退出应用

    详解React Native监听Android回退按键与程序化退出应用 发布时间:2020-09-29 09:25:52 来源:脚本之家 阅读:137 作者:lqh 详解React Native监听A ...

  7. android模拟点击滑动,模拟Android的view点击和滑动监听

    一,简单形式的 /*模拟Android中的view 点击和滑动监听 * */ public class View { private OnClickListener onClickListener; ...

  8. RxHttp 完美适配Android 10/11 上传/下载/进度监听

    1.前言 随着Android 11的正式发布,适配Android 10/11 分区存储就更加的迫切了,因为Android 11开始,将强制开启分区存储,我们就无法再以绝对路径的方式去读写非沙盒目录下的 ...

  9. 【无线网络渗透 】如何使用Aircrack-ng 系列工具进行WPA/WPA2的监听和破解

    版权声明:本文为博主tonyzhejiang原创文章,转载请注明来源博客:http://blog.csdn.net/tonyzhejiang) 目录: 前言 什么是 Aircrack-ng 所需工具 ...

  10. Day2多种抓包工具介绍以及使用封包监听工具找到挑战数据包实现发送数据包进行挑战

    工具相关证书安装指南 Charles https://blog.csdn.net/weixin_45459427/article/details/108393878 Fidder https://bl ...

最新文章

  1. 【迈克尔・乔丹:人工智能,革命远未发生】
  2. 『前端干货篇』:你不知道的Stylus
  3. 历经数月投诉后,Firefox 移除了带误导性的按钮
  4. 苹果全新10.2英寸iPad再爆实锤 或造成史上最乱的iPad产品线
  5. java冒泡排序_Java专题(二):Java中常见的排序算法有哪些?---冒泡排序
  6. bash: ssh: command not found解决方法
  7. 谈谈Java项目经验
  8. 计算机隐藏功能表格行,Excel如何一键隐藏、显示某些行(excel表格)
  9. 【工程测试与训练】使用 DDRNet 测试、训练cityscapes数据集、训练自己的数据集
  10. 闲谈IPv6-体会一下移动IP路由扩展头以及地址选项头的实际操作(Howto)
  11. matlab无法打开wps的xls文件,wps表格无法打开xls文件相关解决方法
  12. java caller_JavaScript中callee和caller的区别与用法实例分析
  13. Lumiprobe Lumizol RNA 提取试剂解决方案
  14. VirtualBox - 让分辨率自适应窗口大小
  15. Foxmail.exe -损坏的映像 错误修复
  16. mac解决//go:linkname must refer to declared function or variable
  17. 计算机的过去和现在作文英语怎么说,自己过去和现在英语作文带翻译
  18. fibos开发踩坑集合
  19. 单点登录CAS的超时时间的设置
  20. 【Git】SSL certificate problem: unable to get local issuer certificate错误的解决办法

热门文章

  1. 如何让新建网站被搜索引擎快速收录
  2. 实用网址(永久更新中)
  3. downloadmedia php,PHP 利用MediaWiki 实现中文简繁互转代码 完美支持大陆、香港、台湾及新加坡...
  4. MNIST手写数据,从训练到数据预测(keras)
  5. 网站内容收录不稳定/不收录的原因分析
  6. 最受家长们欢迎的10本家教好书
  7. vim 剪贴板历史插件
  8. 怎么压缩图片的大小?这几个方法你不能不知道
  9. Python的数据类型
  10. 【Spring Cloud sunX】中间件容器化部署