共计 4589 个字符,预计需要花费 12 分钟才能阅读完成。
明天咱们来用最近比拟火的“ChatGPT”学习一下 Android 病毒剖析根底,看看和咱们之前学的有什么不同,又能学习到什么新的货色,同时理解一下“ChatGPT”发问的一些精华。
和咱们之前的“Android 病毒剖析根底(一)”一样,咱们先看一下环境搭建、工具应用、在线查杀、病毒分析方法以及特征提取等问题。
以下各项均是“ChatGPT”答复,自己只做了些许删减。
如何便捷的应用 ChatGPT
在 ChatGPT 火了没多久,很多大佬就相继开发出了很多插件,包含了浏览器插件、MAC 菜单栏程序、国内镜像接口等便捷的插件。
浏览器插件
我的项目地址:https://github.com/wong2/chat-gpt-google-extension
反对浏览器:Chrome、Edge、Firefox
反对搜索引擎:Google, Baidu, Bing, DuckDuckGo, Brave, Yahoo, Naver, Yandex, Kagi, Searx
装置:
咱们间接抉择在 chrome 利用商店下载:https://chrome.google.com/webstore/detail/chatgpt-for-google/…
其余浏览器能够间接在 github 下载对应插件装置即可。
成果:
MAC 菜单栏程序
我的项目地址:https://github.com/vincelwt/chatgpt-mac
反对 MAC 全系列
装置:咱们间接在我的项目下下载对应的 dmg 文件装置即可
成果:
以上两个插件都是须要登录本人注册的账号,上面咱们来介绍几个国内镜像接口,免登录间接应用。
ChatGPT 国内镜像(可能被限度)
1、https://gpt.chatapi.art
2、https://trychatgpt.ssi.plus/
当初国内镜像被拜访过多,可能都被限度了,所以最好还是本人注册一个账号,咱们只须要找一个接码平台获取对应验证码即可,例如:https://sms-activate.org
接下来,咱们进入正题,来看看 ChatGPT 如何教咱们学习 Android 病毒剖析。
环境搭建
- 装置虚拟机软件:须要装置一款虚拟机软件,如 VirtualBox 或 VMware,来运行 Android 零碎。
- 下载 Android 零碎镜像:能够从 Android 官网或其余网站下载 Android 零碎的镜像文件。
- 创立虚拟机:应用虚拟机软件创立一个新的虚拟机,并将 Android 零碎的镜像文件设置为启动盘。
- 装置 Android SDK:下载并装置 Android SDK,这是一个用于开发 Android 利用的工具集。
- 装置 Apktool:Apktool 是一款反编译工具,能够将 APK 文件反编译为可读的文本文件,以便进行病毒剖析。
- 装置其余工具:依据您的须要,还能够装置其余工具,如 DEX2JAR、JD-GUI 等。
依照自己剖析病毒教训,这些环境略显有余,所以我输出“持续”,后果机器人间接来了环境搭建后的剖析过程:
- 获取待剖析的病毒文件:能够从网络下载或从其余起源获取病毒文件,通常为 APK 格局。
- 反编译 APK 文件:应用 Apktool 将 APK 文件反编译为可读的文本文件。
- 剖析反编译后的代码:关上反编译后的文件,查看源代码并剖析病毒的行为。
- 运行病毒:在 Android 虚拟机中装置病毒 APK 文件,并察看它的行为。
- 剖析病毒的攻打伎俩:剖析病毒应用的破绽、攻打伎俩、传播方式等。
- 剖析病毒的长久化机制:查看病毒是否在系统启动时主动运行,或者是否装置了后门等。
这个剖析过程也是较为简洁,咱们“持续”,后果机器人间接开始介绍防备伎俩:
- 装置杀毒软件:应用业余的杀毒软件,如 McAfee、Norton 等,来查杀病毒。
- 降级操作系统和应用程序:及时降级操作系统和应用程序,以取得最新的安全补丁。
- 应用防火墙:应用防火墙来阻止未经受权的网络连接,并设置平安规定以避免病毒的流传。
- 不关上未知的邮件附件:防止关上未知起源的邮件附件,特地是 EXE、BAT、SCR 等可执行文件。
- 不下载未知的文件:防止从未知起源下载文件,特地是未经查看的 APK 应用程序。
- 应用双因素身份验证:应用双因素身份验证(2FA)来加强账户的安全性。
以上的答复显然不够入门,只是一些基础知识,咱们换种形式发问,看看成果。
通过上图能够看出,咱们能够对机器人纠错,也能够对某一个点进行深刻发问,也能够通过“持续”来理解更多内容。
上面咱们让机器人为咱们具体列举病毒分析方法和病毒特征提取两个点。
Android 病毒分析方法
- 动态剖析:剖析 APK 文件的二进制代码,能够通过反编译和解析资源文件获取更多信息。
- 动态分析:在设施上运行 APK 文件并监测其行为。能够应用模拟器或真机测试。
- 反汇编:通过反汇编工具剖析二进制代码,获取程序的源代码和汇编代码。
- 反编译:通过反编译工具获取程序的高级语言代码(如 Java 代码)。
- 剖析资源文件:通过解析 APK 文件中的资源文件,如布局文件、图像文件和字符串资源文件,获取无关程序的信息。
- 手机取证:通过从手机中获取数据来剖析病毒行为。
- 剖析通信:通过分析程序的网络通信来获取无关其性能和行为的信息。
- 剖析存储:通过分析程序在设施上存储的数据,获取无关其性能和行为的信息。
- 剖析注册表:通过剖析设施的注册表来获取无关病毒的信息。
- 剖析权限:通过分析程序申请的权限,理解其性能和行为。
- 剖析关联文件:通过分析程序与其余文件之间的关联关系,理解其性能和行为。
- 剖析数据流:通过剖析程序处理数据的形式,理解其性能和行为。
- 剖析代码签名:通过剖析代码签名,理解程序的可信度和安全性。
- 分析程序依赖关系:通过分析程序与其余程序之间的依赖关系,理解其性能和行为。
- 剖析加密办法:通过分析程序应用的加密办法,理解其性能和行为。
- 剖析歹意行为:通过分析程序的歹意行为(如窃取数据、歹意广告、挖矿等),理解其性能和危险。
- 剖析暗藏行为:通过分析程序暗藏的行为(如后盾运行、注册启动项等),理解其性能和危险。
- 剖析恶意代码:通过分析程序中的恶意代码(如木马、蠕虫等),理解其性能和危险。
- 剖析关键字:通过分析程序中的关键字(如加密、网络通信、暗藏等),理解其性能和危险。
- 剖析病毒特色:通过剖析病毒的特色(如文件扩展名、图标、病毒库等),理解其性能和危险。
Android 病毒特征提取办法
- 动态特征提取:剖析 APK 文件的二进制代码,提取对于病毒的信息,如病毒库、文件扩展名、图标、病毒特色哈希值等。
- 动静特征提取:在设施上运行 APK 文件,监测病毒的行为,提取病毒的动静特色,如网络通信、文件操作、过程操作等。
- 剖析资源文件:通过解析 APK 文件中的资源文件,如布局文件、图像文件和字符串资源文件,提取病毒的特色信息。
- 剖析注册表:通过剖析设施的注册表,提取病毒的特色信息,如启动项、服务、装置信息等。
- 剖析权限:通过分析程序申请的权限,提取病毒的特色信息,如须要获取敏感信息、须要运行后盾等。
- 剖析关联文件:通过分析程序与其余文件之间的关联关系,提取病毒的特色信息。
- 剖析数据流:通过剖析程序处理数据的形式,提取病毒的特色信息。
- 剖析代码签名:通过剖析代码签名,提取病毒的特色信息,如签名证书、签名者信息等。
- 分析程序依赖关系:通过分析程序与其余程序之间的依赖关系,提取病毒的特色信息。
- 剖析加密办法:通过分析程序应用的加密办法,提取病毒的特色信息,如应用的密钥长度、加密算法等。
- 剖析歹意行为:通过分析程序的歹意行为(如窃取数据、歹意广告、挖矿等),提取病毒的特色信息。
- 剖析暗藏行为:通过分析程序暗藏的行为(如后盾运行、注册启动项等),提取病毒的特色信息。
- 剖析恶意代码:通过分析程序中的恶意代码(如木马、蠕虫等),提取病毒的特色信息。
- 剖析关键字:通过分析程序中的关键字(如加密、网络通信、暗藏等),提取病毒的特色信息。
- 剖析病毒特色:通过剖析病毒的特色(如文件扩展名、图标、病毒库等),提取病毒的特色信息。
- 剖析病毒签名:通过剖析病毒的签名信息(如证书链、签名者信息等),提取病毒的特色信息。
- 剖析病毒的网络特色:通过剖析病毒的网络行为(如通信协议、连贯地址、端口号等),提取病毒的特色信息。
- 剖析病毒的文件操作特色:通过剖析病毒对文件的操作(如创立、批改、删除等),提取病毒的特色信息。
- 剖析病毒的过程操作特色:通过剖析病毒对过程的操作(如创立、批改、删除等),提取病毒的特色信息。
- 剖析病毒的零碎调用特色:通过剖析病毒应用的零碎调用(如文件操作、网络通信、加密等),提取病毒的特色信息。
- 剖析病毒的加解密特色:通过剖析病毒应用的加解密办法(如对称加密、非对称加密、哈希算法等),提取病毒的特色信息。
- 剖析病毒的库文件特色:通过剖析病毒应用的库文件(如加密库、网络通信库、图像处理库等),提取病毒的特色信息。
- 剖析病毒的注册表特色:通过剖析病毒批改的注册表项(如启动项、服务、装置信息等),提取病毒的特色信息。
- 剖析病毒的数据库特色:通过剖析病毒批改的数据库(如联系人数据库、短信数据库、通话记录数据库等),提取病毒的特色信息。
- 剖析病毒的文件属性特色:通过剖析病毒批改的文件属性(如文件名、文件扩展名、文件图标等),提取病毒的特色信息。
- 剖析病毒的零碎服务特色:通过剖析病毒批改的零碎服务(如后盾服务、主动启动服务等),提取病毒的特色信息。
- 剖析病毒的零碎属性特色:通过剖析病毒批改的零碎属性(如零碎语言、时区、网络设置等),提取病毒的特色信息。
- 剖析病毒的加密文件特色:通过剖析病毒加密的文件(如照片、文档、视频等),提取病毒的特色信息。
- 剖析病毒的软件更新特色:通过剖析病毒更新的软件(如系统软件、应用软件等),提取病毒的特色信息。
- 剖析病毒的硬件驱动特色:通过剖析病毒装置的硬件驱动(如显卡驱动、声卡驱动等),提取病毒的特色信息。
- 剖析病毒的过程假装特色:通过剖析病毒假装的过程(如应用常见过程名称、批改过程信息等),提取病毒的特色信息。
- 剖析病毒的网络通信加密特色:通过剖析病毒应用的网络通信加密形式(如 SSL/TLS、SSH 等),提取病毒的特色信息。
- 剖析病毒的反调试特色:通过剖析病毒应用的反调试技术(如软件断点、硬件断点、调试器检测等),提取病毒的特色信息。
- 剖析病毒的网络荫蔽特色:通过剖析病毒应用的网络荫蔽技术(如代理、隧道、混同等),提取病毒的特色信息。
用 python 写一个 Android 程序剖析工具
总结
能够看到 chatGPT 在某些问题上给出的答案远超出咱们之前总结的内容,提供了不少新的思路,它在语义了解上曾经远超过很多 AI,咱们能够继续发问,在这个过程中咱们能够一直纠错,或者针对某个点再具体发问等,他都会联合上下文给出具体的解答,然而,我也试了很多问题,比方一些代码呈现问题后,他可能无奈纠正,他会给你一个答案,然而答案可能相似于套娃,有限循环,不过这个问题也可能是自己发问形式有问题,导致本人和 chatGPT 都进了死胡同。
总的来说,chatGPT 在很多方面都体现很好,咱们齐全能够在工作中尝试应用它,能够用来写一些工具,例如咱们能够让他写一些 VBA 来解决批处理 excel 等,能够疾速生成一些文档模版等。
举荐浏览:
https://mp.weixin.qq.com/s/dV2JzXfgjDdCmWRmE0glDA
https://mp.weixin.qq.com/s/an83QZOWXHqll3SGPYTL5g