如何使用Twitter构建C;C服务器

时间:2022-04-29
本文章向大家介绍如何使用Twitter构建C;C服务器,主要内容包括写在前面的话、工具介绍、基本概念、基础应用、原理机制和需要注意的事项等,并结合实例形式分析了其使用技巧,希望通过本文能帮助到大家理解应用这部分内容。

写在前面的话

社交媒体网络对于企业的市场营销团队来说,绝对是一个非常好的推广平台。如果能够正确使用它们的话,绝对可以帮助企业带来新的商机。因此,社交媒体平台(例如Twitter和Facebook)上的任何网络流量都不太可能会被屏蔽掉。但是对于渗透测试人员来说,这些社交平台可以成为命令控制工具,而网络犯罪分子甚至还可以利用社交媒体网络流量来隐藏自己的恶意行为。

工具介绍

目前,最著名的一款利用Twitter当作命令控制工具的就是Twittor了,这款工具由Paul Amar开发,而这款工具的开发灵感来自于Gcat(该工具使用Gmail作为命令控制服务器)。

这里唯一的限制条件就是,植入程序以及C2服务器都需要用户的参与以及访问令牌,而这两者都可以使用Twitter应用程序管理来生成。

当一个新的Twitter应用被创建之后,这些值都会自动生成。控制器与主机之间的通信是通过Twitter的直接消息来进行的,因此新的应用程序将需要拥有这类消息的读取、写入和转发权限。

植入程序是采用Python语言开发的,不过我们也可以用pyinstaller将其转换成可执行程序(exe)。需要注意的是,这款工具要求的是Python 2.7,你可以使用下列命令直接安装pyinstaller:

当我们的植入程序执行之后,Twittor将会接收到来自目标主机的通信连接以及MAC地址。

此时,Twittor将能够在目标主机上执行任意命令,包括在内存中执行shellcode,并获取到它已经在目标主机中执行过的命令列表。

为了发送控制命令,Twittor还需要使用目标主机的MAC地址。

命令将会通过一条Twitter的直接消息被发送至目标主机,该消息采用base64编码格式。

由于Twittor不会对直接消息进行加密,因此解码起来也相对更加容易。发送给目标主机的消息中包含以下信息:

  1. CMD命令
  2. JobID
  3. 消息发送者
  4. 消息接收者的MAC地址

命令执行后的输出可以通过retrieve指令和相关的JobID来获取。

$ !retrieve SPVGIpE

除此之外,为了得到Meterpreter会话并利用其完整功能,我们还可以向目标主机发送shellcode。Metasploit msfvenom还可以被用来生成Python shellcode。

下面这条命令将会帮助你在目标主机上执行shellcode。

下面这个Metasploit模块可以用来获取网络连接。