记录黑客技术中优秀的内容, 传播黑客文化,分享黑客技术精华

网络安全之史上最全的njRAT通信协议分析

2016-12-14 11:55

网咯安全之史上最全的njRAT通信协议分析。Njrat,又称Bladabindi,该木马家族使用.NET框架编写,是一个典型的RAT类程序,通过控制端可以操作受控端的文件、进程、服务、注册表内容,也可以盗取受控端的浏览器的保存的密码信息等内容。此外,还具有远程屏幕抓取,木马客户端升级等功能。

Njrat采用了插件机制,通过使用不同的插件来扩展新的木马功能。本文涉及到njrat的三款插件,分别为:sc2.dll,ch.dll和pw.dll,其中的ch.dll用来实现与受控端的聊天对话功能。pw.dll用来实现对受控端密码内容的抓取,sc2.dll用来实现远程桌面功能。

当受控端上线时,主控端会弹出提示信息如下所示:

\

控制端:

木马配置选项如下:

\

控制界面如下图

\

木马程序

总体的代码结构:

对于被控端代码(也就是木马程序)的总体代码结构如下图:

\

木马的Main函数入口只是调用了Ok类的ko方法。

\

确保单实例运行

通过互斥体来实现单实例运行。互斥体名称为“f8782a013a20610e09216f21b705d856”。

\
\

拷贝自身,设置注册表,加启动项:

1.判断是不是在temp目录下

2.如果不在temp目录下,判断temp目录下是否有样本文件存在

3.如果样本文件存在,刚将样本文件删除

4.重新拷贝自己到临时目录下

5.运行temp目录下的程序

\
\

设置注册表:

\
\

添加防火墙规则:

\

添加启动项,与主控端设置相关:

\

添加的注册表中启动项位置

\

添加的启动项的名称

\

键盘记录功能:

开启线程键盘记录

\

键盘记录线程函数:

\

键盘记录到的内容:

\

通信过程

通信中的关键数据使用base64加密的数据。通信命令各部分之间使用|’|'|分隔。

开启线程,与主控端通信

\

{C} 通信过程的内容主要分为四部分:

第一部分:命令类型如Ex,un,div,rn,ret等

第二部分为:命令的子类型,如proc,tcp,RG,rs,srv

第三部分为:操作命令,如~表示查看,k表示杀掉

第四部分为:操作命令对应的参数。如要杀死的进程名,要启动的服务名,要关闭的网络连接等。

知识来源: www.2cto.com/article/201612/576485.html

阅读:96437 | 评论:0 | 标签:无

想收藏或者和大家分享这篇好文章→复制链接地址

“网络安全之史上最全的njRAT通信协议分析”共有0条留言

发表评论

姓名:

邮箱:

网址:

验证码:

公告

关注公众号hackdig,学习最新黑客技术

推广

工具

标签云