首页 > 其他分享 >通过命令行参数启动的后门病毒

通过命令行参数启动的后门病毒

时间:2023-08-15 23:35:38浏览次数:36  
标签:后门 当中 恶意代码 函数 参数 命令行 注册表 病毒

在恶意代码分析过程中,关注的重点是恶意代码的整体行为机制和运行逻辑,但是现在由于我们对底层实现逻辑还不太清楚所以花费了大量的时间在具体实现上,要在积累的前提下大胆猜测小心求证。今天我们换一种分析方式,先通过基础静态分析大致猜测恶意代码行为然后再具体分析具体的实现机制。

一. 注册表行为

在恶意代码当中通过注册表实现自启动是一种常见的驻留机制,是否存在注册表有关行为我们可以通过查看导入函数表来判断。
常见的注册表有关函数有:

  1. RegCreateKeyEx()//创建注册表键值
  2. RegSetValueEx()//写入注册表键值
  3. RegDeleteValue()//删除注册表键值
  4. RegOpenKeyEx()//打开注册表内容
  5. RegQueryValueEx()//访问注册表内容

在该恶意代码样本当中可以看到:

显然存在注册表有关行为。
接下来我们可以具体分析该样本到底向注册表当中写入了什么内容以及写入这些内容的目地。

在HKEY_LOCAL_MACHINE_SOFTWARE\Microsoft \XPS键值下写入了data内容,这个data里面的具体内容可以通过动调得到。
写入的实际上是后门行为所需要的网站以及端口等信息。

这里是将注册表当中的内容读取到对应的变量当中,用于后续的后门操作。

二. 命令行有关行为

命令行的行为直接通过导入函数和字符串不太容易看出,但是有以下几个地方可以帮助我们分析:

  1. 双击运行程序后程序会自动删除。
  2. 在分析main函数的时候发现有大量的命令行参数比较操作。

这里先介绍一些有关命令行参数的基础知识:
main参数主要关注的是argc(命令行参数个数),argvargc-1
argv[0] 存储程序的名称,argv[1] 是一个指向第一个命令行参数的指针,*argv[n] 是最后一个参数。如果没有提供任何参数,argc 将为 1,否则,如果传递了一个参数,argc 将被设置为 2。

这里可以看到实际上就是通过命令行参数的不同实现程序的运行逻辑不同。
在分析过程当中这里是花费时间最长的,因为对应不同的命令行参数不同最后的程序运行逻辑不同。我们需要逐个去分析,这就需要足够的逆向基础功底可以迅速归纳出函数实现的功能。
这里直接给出结论:

  1. 参数一为-in时为安装服务
  2. 参数一为-re时为卸载服务
  3. 参数一为-c时配置注册表
  4. 参数一为-cc时打印注册表配置
  5. 命令行参数最后一个必须为abcd否则直接退出自动卸载程序。

三. 服务有关操作

在Windows系统当中服务是什么?

Windows服务可视为没有界面的普通应用程序,无需用户干预即可启动和停止。它们是 Windows 操作系统所必需的,用于创建和执行需要长时间运行的进程,以执行不同的任务。

因为服务的特殊性,在恶意代码当中经常通过创建服务来实现其功能。
服务有关api函数

  1. OpenSCManagerA()//打开服务控制管理器
  2. CreateService()//创建一个服务

四. 后门操作

后门当中最常见的就是通过send等一系列网络有关函数实现,这个程序当中可以看到很多的有关网络的函数,显然应该是存在后门。

这里就是通过接受返回的字符串,然后相应做出反应。
包括sleep, UPLOAD,DOWNLOAD, CMD, NOTHING等指令,接受指令后有相应函数处理这些操作。

标签:后门,当中,恶意代码,函数,参数,命令行,注册表,病毒
From: https://www.cnblogs.com/ONEZJ/p/17632628.html

相关文章

  • shell命令概述 Shell作用:命令解释器 介于操作系统内核与用户之间,负责解释命令行 获得
    shell命令概述Shell作用:命令解释器介于操作系统内核与用户之间,负责解释命令行获得命令帮助内部命令help命令的“--help”选项使用man命令阅读手册页命令行编辑的几个辅助操作Tab键:自动补齐反斜杠“\”:强制换行快捷键Ctrl+U:清空至行首快捷键Ctrl+K:清空至行尾快捷键Ctr......
  • Python Fire:自动生成命令行接口
    首先创建一个 student_file.pypipinstallfire使用 Fire 转换成命令行程序 1.默认方式importfiredefimport_file(fp):print("函数1打印结果:{}".format(fp))defexport_file(fp):print("函数2打印结果:{}".format(fp))if__name__=="__m......
  • shell命令概述 Shell作用:命令解释器 介于操作系统内核与用户之间,负责解释命令行 获得
    shell命令概述Shell作用:命令解释器介于操作系统内核与用户之间,负责解释命令行获得命令帮助内部命令help命令的“--help”选项使用man命令阅读手册页命令行编辑的几个辅助操作Tab键:自动补齐反斜杠“\”:强制换行快捷键Ctrl+U:清空至行首快捷键Ctrl+K:清空至行尾快捷键Ctr......
  • 命令行抓包工具tcpdump
    命令行抓包工具tcpdumptcpdumptcpdump是一个用于截取网络分组,并输出分组内容的工具。tcpdump凭借强大的功能和灵活的截取策略,使其成为类UNIX系统下用于网络分析和问题排查的首选工具。tcpdump提供了源代码,公开了接口,因此具备很强的可扩展性,对于网络维护和入侵者都是非常有用的工具......
  • (笔记)Ethercat解析之命令行工具的使用教程
     说明:EtherCAT为了方便用户空间对主站进行调试,因此提供一套用户空间使用的工具来设置从站参数,观察调试信息等等。正常情况下,每个主站的实例都会生成一个字符设备,名字为:/dev/EtherCATx。欲想深入了解其他命令,可通过执行ethercat–help命令来查看详细使用方法。 一、ethercat......
  • 本地启动 ABAP Platform Trial 的 Docker 命令行程序
    Docker是一个开源的容器化平台,用于轻松地构建、发布和运行应用程序。DockerDesktop是适用于Windows和Mac的Docker桌面应用程序,它允许用户在本地运行和管理容器化应用程序。在本文中,我们将详细介绍以下两个命令行并解释每个参数的含义:dockerpullsapse/abap-platform-trial:190......
  • win11怎么关闭病毒和威胁防护?
    win11怎么关闭病毒和威胁防护?随着Windows11的发布,微软为我们带来了许多新功能和改进,其中包括更强大的病毒和威胁防护功能。有时候您可能希望关闭这些功能,以便获得更好的性能或者使用其他第三方安全软件。win11怎么关闭病毒和威胁防护?步骤1打开“设置”应用程序首先,点击Win11任务......
  • shell命令概述 Shell作用:命令解释器 介于操作系统内核与用户之间,负责解释命令行 获得
    shell命令概述Shell作用:命令解释器介于操作系统内核与用户之间,负责解释命令行获得命令帮助内部命令help命令的“--help”选项使用man命令阅读手册页命令行编辑的几个辅助操作Tab键:自动补齐反斜杠“\”:强制换行快捷键Ctrl+U:清空至行首快捷键Ctrl+K:清空至行尾快捷键Ctr......
  • shell命令概述 Shell作用:命令解释器 介于操作系统内核与用户之间,负责解释命令行 获得
    shell命令概述Shell作用:命令解释器介于操作系统内核与用户之间,负责解释命令行获得命令帮助内部命令help命令的“--help”选项使用man命令阅读手册页命令行编辑的几个辅助操作Tab键:自动补齐反斜杠“\”:强制换行快捷键Ctrl+U:清空至行首快捷键Ctrl+K:清空至行尾快捷键Ctr......
  • shell命令概述 Shell作用:命令解释器 介于操作系统内核与用户之间,负责解释命令行 获得
    shell命令概述Shell作用:命令解释器介于操作系统内核与用户之间,负责解释命令行获得命令帮助内部命令help命令的“--help”选项使用man命令阅读手册页命令行编辑的几个辅助操作Tab键:自动补齐反斜杠“\”:强制换行快捷键Ctrl+U:清空至行首快捷键Ctrl+K:清空至行尾快捷键Ctr......